【发布时间】:2020-07-09 08:00:57
【问题描述】:
问题
使用 cx_Oracle 用 python 查询我们的 Oracle 数据库需要很长时间。
方法
我使用 cx_Oracle 连接到 oracle db,并使用标准 SQL 行进行查询,例如:
select * from t1;
结果以 pandas 数据框的形式返回。
观察
- 从 Spyder 和 Jupyter Notebook 查询同样慢。
- 从 DBeaver 等 SQL 客户端查询返回结果的时间约为 1/10。
警告
当我在 cx-Oracle 查询中包含行限制时,我没有测试这是否成立。
【问题讨论】:
-
你的问题有点笼统。如果没有其他信息(例如您正在查询什么数据以及您使用什么代码来查询它),我无法回答您的问题。在大多数情况下,我发现 cx_Oracle 的性能足够了,比等效的 C 程序要慢一些,但工作量要少得多。由于您使用的数据框暗示您使用的是 Pandas 之类的东西。也可以直接尝试使用 cx_Oracle。
标签: python oracle dataframe cx-oracle