想请教一下大家,就是比如说我想测试一下批量插入某个 csv 文件到某个数据库的耗时,那么通常情况下这个耗时指的是加载 csv 文件的时间和插入到数据库的总时间,还是仅仅是插入到数据库的时间?
我的感觉是理想情况下是先把数据都先加载到内存中,然后从内存读取数据插入数据库,并且仅记录插入到数据库的时间作为插入的耗时(这样是排除硬盘读取对数据插入的影响)。
但这个问题主要疑惑的地方是,当 csv 文件很大比如说超过内存大小时,我的理解是会用 buffer read 的方式一边读取数据一边插入数据,那么这样 csv 数据读取和写入数据库是混在一起的,那么最终的记录的时间似乎是同时包含 csv 的读取和数据库的写入的。我不太清楚在 csv 数据很大的情况下这个插入的耗时如何记录比较合理。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/822992
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.