python - 将游标对象共享给多个线程 cx_oracle
问题描述
我正在尝试从 oracle 表中获取数据并使用 python 的 cx_oracle 模块写入 csv。
它工作正常,但是当有大量数据时,它会花费太多时间。我想使用线程/多处理来优化它。
目前我正在使用一个固定的游标大小,比如说 50k 并执行 fetchmany() 方法来一次获得那么多行。
我没有主键,我可以通过创建与数据库的多个新连接来订购表。所以我多次运行这个 fetchmany () 方法,直到没有更多的数据可以获取。
我想知道如何将该光标共享给我的线程,以便以并行方式运行 fetchmany() 以 4-5 倍的速度完成工作。
我试图将该光标对象作为参数传递,但这不起作用并给我一个错误DPI -1042 INVALID OCI NUMBER
解决方案
推荐阅读
- python - Python Sanic 或 Async 框架使用 Asgiref 的原因?
- java - 如何在主类中调用 ResponseDefinitionTransformer
- c# - 将 Ninject ToConstant 转换为简单的注入器实现
- r - 在 par() 函数中设置轴的 lwd
- c# - c# FileHelpers 将具有可变长度行的 csv 加载到 DataTable 中
- wordpress - 网站的 URL 末尾有一个奇怪的字符串
- php - Laravel Web 安装程序错误 .env 文件
- image - 无法将图像数据写入路径 laravel live 项目
- groovy - 为什么 file.append 将“hello world”写为 csv 文件中的重复项
- java - 使用 Firebase 登录