Python cx_Oracle查询速度 问题

Python cx_Oracle查询速度 问题,python,oracle,dataframe,cx-oracle,Python,Oracle,Dataframe,Cx Oracle,使用cx_Oracle使用python查询Oracle数据库需要很长时间 方法 我使用cx\U oracle连接到oracle数据库,并使用标准SQL行进行查询,如: 从t1中选择*; 结果作为数据帧返回 观察 Spyder和Jupyter笔记本的查询速度同样慢。 从像DBeaver这样的SQL客户机进行查询时,返回结果的时间约为十分之一。 警告 当我在cx Oracle查询中包含行限制时,我没有测试这是否成立 调整应用程序架构 。特别是SDU大小和套接字缓冲区大小。如果有帮助的话,在中有一个关

使用cx_Oracle使用python查询Oracle数据库需要很长时间

方法 我使用cx\U oracle连接到oracle数据库,并使用标准SQL行进行查询,如:

从t1中选择*; 结果作为数据帧返回

观察 Spyder和Jupyter笔记本的查询速度同样慢。 从像DBeaver这样的SQL客户机进行查询时,返回结果的时间约为十分之一。 警告 当我在cx Oracle查询中包含行限制时,我没有测试这是否成立

调整应用程序架构

。特别是SDU大小和套接字缓冲区大小。如果有帮助的话,在中有一个关于这些的替代描述

,, 特别是Cursor.arraysize


@克里斯托弗·琼斯(Christopher Jones)和@Anthony Tuininga(Anthony Tuininga)指出了下一个层次的答案,解决了为什么查询返回如此缓慢的问题。在我的警告部分,我注意到我没有

其中rownum<10 在我的询问中。包括这一点确实减少了查询时间。我的错

还有,一个命令

将表t1创建为 挑选* 来自表1 由于没有从数据库接收到任何信息,因此会产生即时反馈。
这只是发出一个需要返回大量数据的查询的问题。SQL客户端内置了这些行限制,以防止像我这样的人提出这些问题!:

你的问题有点笼统。如果没有其他信息,例如您正在查询的数据以及您正在使用的查询代码,我无法回答您的问题。我发现cx_Oracle的性能在大多数情况下都是足够的,比同等的C程序稍慢一些,但工作量要小得多。因为您使用的是一个数据帧,这意味着您使用的是类似熊猫的东西。也可以尝试直接使用cx_Oracle。