我在Ubuntu 14.04上运行MongoDB。
我已成功将CSV中的数据导入MongoDB,但我希望能够读取操作的总执行时间。
我一直在使用.explain()命令监视在mongodb.exe本身内执行的查询CRUD操作,但这显然不会对从bin级别执行的导入过程起作用。< / p>
请问任何人都可以建议我如何轻松获得导入的性能读数? (我有一个演员,无法找到合适的指导)。
我用于导入的代码是:
jon@ubuntu:~/Desktop/mongodb-linux-x86_64-2.6.3/bin$ mongoimport --db jontestcsv --collection Aircraft --ignoreBlanks --type csv --headerline --file /home/jon/Desktop/Aircraft.csv
非常感谢任何指导。
此致 乔恩
答案 0 :(得分:0)
time
实用程序如果您刚好在脚本的执行时间之后,可以在mongoimport
命令行前加上标准的Unix-ish实用程序time
,例如:
time mongoimport --db jontestcsv --collection Aircraft --ignoreBlanks --type csv --headerline --file /home/jon/Desktop/Aircraft.csv
时间使用任何给定参数ARG运行程序COMMAND。什么时候 COMMAND完成,时间显示有关所用资源的信息 COMMAND(默认情况下,在标准错误输出上)。如果COMMAND退出 如果状态为非零,则时间显示警告消息和退出 状态。
mongod
日志如果您确定mongod
作业的连接ID,那么您还可以通过mongoimport
日志获取更多信息。例如,在下面的日志片段中,您可以计算从接受的localhost连接到#27之间的时间差,并通过grepping 127.0.0.1:64023
来结束:
2014-07-21T06:20:59.143+1000 [initandlisten] connection accepted from 127.0.0.1:64023 #27 (2 connections now open)
2014-07-21T06:20:59.180+1000 [conn27] build index on: test.twitter properties: { v: 1, key: { _id: 1 }, name: "_id_", ns: "test.twitter" }
2014-07-21T06:20:59.182+1000 [conn27] added index to empty collection
2014-07-21T06:21:05.705+1000 [FileAllocator] allocating new datafile /data/test.1, filling with zeroes...
2014-07-21T06:21:05.709+1000 [FileAllocator] creating directory /data/_tmp
2014-07-21T06:21:06.337+1000 [FileAllocator] done allocating datafile data/test.1, size: 128MB, took 0.618 secs
2014-07-21T06:21:06.343+1000 [conn27] insert test.twitter ninserted:1 keyUpdates:0 numYields:0 locks(micros) w:663227 663ms
2014-07-21T06:21:11.924+1000 [conn27] end connection 127.0.0.1:64023 (1 connection now open)