DolphinDB中使用loadTextEx加载文本文件
在DolphinDB数据加载性能测试实验中,我使用loadTextEx批量加载130个csv文本文件,htop实际观察到两个logical CPU处于活跃状态(活跃的定义是cpu利用率在60%以上)。
问题1:这个加载过程是利用了两个logical CPU吗?
问题2:实际的loadTextEx加载过程会用到多少CPU是由哪些因素决定的?
问题3:每个logical CPU会开多少线程来执行加载任务?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
loadTextEx这个函数实现用到了两个线程,一个线程不停地解析csv,另一个线程不停地往数据库写数据。如果用submitJob启动多个数据加载任务,那就会使用更多的cpu核。有关多任务多文件并行导入的例子可参阅 https://github.com/dolphindb/... 3.2节的例子。
关于cpu核和线程之间的关系,DolphinDB本身没有限制,完全取决于用户的设置,workerNum,localExecutors,batchWorkerNum, webWorkerNum,subExecutors,这些都是不同类型的线程池。当然cpu核太少,线程太多,会导致频繁的context switch,整体的性能反而下降。