【转载】MongoDB 1000W级数据 Insert和Query和Delete性能测试

加索引测试:

  1. > db.users.getIndexes()  
  2. [  
  3.         {  
  4.                 "name" : "_id_",  
  5.                 "ns" : "test.users",  
  6.                 "key" : {  
  7.                         "_id" : 1  
  8.                 },  
  9.                 "v" : 0  
  10.         }  
  11. ]  
  12. > db.users.ensureIndex({NewsId:1})  
  13. > db.users.getIndexes()             
  14. [  
  15.         {  
  16.                 "name" : "_id_",  
  17.                 "ns" : "test.users",  
  18.                 "key" : {  
  19.                         "_id" : 1  
  20.                 },  
  21.                 "v" : 0  
  22.         },  
  23.         {  
  24.                 "_id" : ObjectId("4e2cc408572ff09d98851cb7"),  
  25.                 "ns" : "test.users",  
  26.                 "key" : {  
  27.                         "NewsId" : 1  
  28.                 },  
  29.                 "name" : "NewsId_1",  
  30.                 "v" : 0  
  31.         }  
  32. ]  

......................# MongoDB 加索引 插入1000W条测试 #...................

  1. ^_^[root@:~/svn/nugget/MongoDB/utest]#./insertData   
  2. MongoDB Connected OK!  
  3. Time:2019s:19419μs  

......................# MongoDB 加索引 1000W条测试遍历测试 #...................

 

还是一样取最后一条数据,然后看下性能:

  1. ^_^[root@:/usr/local/mongodb/bin]#./mongo <bat.js   
  2. MongoDB shell version: 1.8.2  
  3. connecting to: test  
  4. > var startTime = new Date();  
  5. >   
  6. > db.users.find({NewsId:"nxuvdqtjrrptoyildolesbkqmd"});  
  7. "_id" : ObjectId("4e2ccc2ea1ca039d82b9e4b3"), "NewsId" : "nxuvdqtjrrptoyildolesbkqmd" }  
  8. >   
  9. > (new Date().getTime()-startTime.getTime())/1000  
  10. 0.022s  
  11. > bye  

......................# MongoDB 加索引 删除1000W条测试 #...................

  1. ^_^[root@:/usr/local/mongodb/bin]#./mongo 10.7.3.228 < bat.js  
  2. MongoDB shell version: 1.8.2  
  3. connecting to: 10.7.3.228/test  
  4. > var startTime = new Date();    
  5. //db.users.find({NewsId:"csgsqdglbyfuwdjfkkrxgzyacc"});     
  6. > db.users.remove()  
  7. > (new Date().getTime()-startTime.getTime())/1000   
  8. 570.782  
  9. > bye  

 

......................# MongoDB 加索引 1000W中删除一条测试 #...................
  1. ^_^[root@:/usr/local/mongodb/bin]#./mongo 10.7.3.228 < bat.js  
  2. MongoDB shell version: 1.8.2  
  3. connecting to: 10.7.3.228/test  
  4. > var startTime = new Date();    
  5. //db.users.find({NewsId:"csgsqdglbyfuwdjfkkrxgzyacc"});     
  6. > db.users.remove({"NewsId":"cikjwikamhtixoykrrfjnepkwu"})  
  7. > (new Date().getTime()-startTime.getTime())/1000   
  8. 0.025  
  9. > bye  

 

总结下测试数据吧:

没索引
添加 1 千万 记录  Time:207s:194125μs   

查询 5.846s

删除全部 103.94s  

删除最后一条 3.991s



有索引
添加 1 千万 记录 Time:2019s:19419μs 

查询 0.022s 

 

删除全部 570.782s  

删除最后一条 0.025s

转载于:https://www.cnblogs.com/jecob/p/3691681.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/432630.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

名词解释说明用英语怎么说_“恍然大悟”用英语怎么说?

当我们对思考已久的事情&#xff0c;突然明白或醒悟时&#xff0c;可以说是“恍然大悟”了。那么问题来了&#xff0c;“恍然大悟”用英语该怎么说呢&#xff1f;① it occurs to me这是一个使用频率很高的表达&#xff0c;日常生活中经常会用到。在美剧《摩登家庭》中&#xf…

彩虹六号服务器显示,彩虹六号怎么看自己在什么服务器 | 手游网游页游攻略大全...

发布时间&#xff1a;2015-09-10在游戏中新手玩家要注意些什么呢?今天就为大家带来新手必看技巧汇总,一起来看看吧. 新手必看技巧大全: 1.开局遇到人别急着标记,尽量先找到目标位置 2.如果开局 ...标签&#xff1a;发布时间&#xff1a;2016-04-29彩虹六号:围攻 地图攻略 总统…

再次遇到谓词推入

explain plan for with aa as(select a.agmt_id,sum(c.acct_bal) as card_bal, --借记卡期末存款余额a.card_open_org,a.OPEN_DATE, -- 发卡日期 a.CARD_NEW_STATUS, -- 卡片状态 a.cust_magr, -- 客户经理号 a.cust_no, -- 客户号a.corp_orgfrom dwf.f_agt_cadb_book_…

OSG+VS2013+Win7 环境搭建,osgvs2013

最近在学习虚拟现实&#xff0c;要使用OpenSceneGraph&#xff08;OSG&#xff09;&#xff0c;但是网上找不到VS2013的搭建教程&#xff0c;好烦。。。 只能自己在vs2010的基础上&#xff0c;修改一些bug&#xff0c;最后成功搭建。 步骤一&#xff1a;材料准备 a) Osg源码 当…

ShardedJedisPool 中可用连接数的小bug

ShardedJedisPool中&#xff0c;returnBrokenResource() 及 returnResource() &#xff0c;为施放资源、关闭连接的方法&#xff0c;若重复调用&#xff0c;导致 _numActive 当前活动数一直递减&#xff0c;会出现负数的情况。 假如在一个方法中设置了三个jedis连接&#xff0c…

Linux设备树翻译计划

本文翻译自Device Tree Usage主页&#xff1a; http://devicetree.org/Device_Tree_Usage 此译文为本人原创&#xff0c;若要转载请注明&#xff01;Linux device tree的背景&#xff08;引用自宋宝华博客&#xff09;&#xff1a;Linus Torvalds在2011年3月17日的ARM Linux邮件…

像postman上传文件_90%的测试工程师是这样使用Postman做接口测试的……

postman介绍&测试准备postman介绍&#xff1a;postman是一个开源的接口测试工具&#xff0c;无论是做单个接口的测试还是整套测试脚本的拨测都非常方便。前期准备&#xff1a;测试前&#xff0c;需要安装好postman, 客户端版本跟插件版本都行&#xff0c;根据个人需要选择安…

浅析STL allocator

一般而言&#xff0c;我们习惯的 C 内存配置操作和释放操作是这样的&#xff1a; 1 class FOO{}; 2 FOO *pf new FOO; 3 delete pf; 我们看其中第二行和第三行&#xff0c;虽然都是只有一句&#xff0c;当是都完成了两个动作。但你 new 一个对象的时候两个动作是&#xff…

十六进制除法运算法则_苏教版数学七年级上册 微课视频 2.6 有理数的乘法与除法(1)...

第一章《数学与我们同行》视频讲解 同步练习2.1 《正数与负数》2.2 有理数与无理数2.3 数轴2.4 绝对值与相反数(1)2.4 绝对值与相反数(2)2.5 有理数的加法与减法(1)2.5 有理数的加法与减法(2)2.6 有理数的乘法与除法(1)七、有理数的乘除法1.有理数的乘法法则法则一&#xff1…

为自己尝试写点东西吧,程序员们!(转)

2012年秋季&#xff0c;正是大伙急于找实习工作的时候。尝试出去找过很多实习单位&#xff0c;但是基本上都是不靠谱&#xff0c;然后就是我自己能力的不足。所以找工作之路也是异常艰辛和曲折。 学了那么久的Java&#xff0c;做过那么多的小练习&#xff0c;但是说实话&#x…

a5d27 emmc启动 修改1

a5d27第1级bootloader是从sdhc0(emmc)加载还是从sdhc1(sd卡)加载&#xff0c; 只需要修改board/sama5d2_xplained文件即可 修改CONFIG_SDHC* y 这个宏定义在board/sama5d2_xplained.c中的void at91_sdhc_hw_init(void)函数实现 从上面代码可以看出第1级的bootloader只支持一…

矩阵每一行重复_【剑指offer】65 矩阵中的路径

- 题目描述请设计一个函数&#xff0c;用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始&#xff0c;每一步可以在矩阵中向左&#xff0c;向右&#xff0c;向上&#xff0c;向下移动一个格子。如果一条路径经过了矩阵中的某一…

什么是单工、半双工和双工通信?有哪些实际应用的例子

根据数据信息在传输线上的传送方向&#xff0c;数据通信方式分为单工通信 半双工通信和全双工通信3种。 1&#xff09;单工通信 数据信息在通信线上始终向一个方向传输。数据信息永远从发送端传输到接收端。列如&#xff0c;广播电视就是单工传输方式&#xff0c;收音机电视机只…

mysql5.464位下载_MySQL Front 64位

MySQL-Front是一款实用的MYSQL数据库管理工具&#xff0c;软件自带了简体中文语言&#xff0c;与mysql数据库连接后就可以对其地蚝各类管理操作了&#xff0c;比如对域进行编辑、增加和删除&#xff0c;执行sql脚本或者导出数据库等操作&#xff0c;除此之外还可以将数据库保存…

a5d27 emmc启动 修改2

修改第2级bootloader的include/configs/sama5d2_xplained.h文件 #define FAT_ENV_DEVICE_AND_PART "0" #define CONFIG_BOOTCOMMAND "fatload mmc 0:1 0x21000000 at91-sama5d2_xplained.dtb; " \ "fatload mmc 0:1 0x22000000 zImage; " \ &q…

监听APP升级广播处理

当旧版本的用户升级新版本的时候需要重新设定一些值处理,这时候需要监听升级版本的广播 <receiver android:name".OnUpgradeReceiver"><intent-filter><action android:name"android.intent.action.PACKAGE_REPLACED" /><data androi…

mysql linux 优化_mysql在linux中内核优化

linux内核优化,直接修改/etc/sysctl.conf执行 sysctl -p立即生效# 每个端口监听队列最大长度net.core.somaxconn 65535# 增加系统文件描述符限制fs.file-max 65535# 当网络接受速率大于内核处理速率时&#xff0c;允许发送到队列中的包数目net.core.netdev_max_backlog 6553…

a5d27 第1级bootloader启动问题

drivers/sdhc.c里的 static int sdhc_set_clock(struct sd_card *sdcard, unsigned int clock) 这段代码总是会超时&#xff0c;造成启动失败。 log如下图

LDA-Latent Dirichlet Allocation 学习笔记

以下内容主要基于《Latent Dirichlet Allocation》,JMLR-2003一文&#xff0c;另加入了一些自己的理解,刚开始了解&#xff0c;有不对的还请各位指正。 LDA-Latent Dirichlet Allocation JMLR-2003 摘要&#xff1a;本文讨论的LDA是对于离散数据集&#xff0c;如文本集&#xf…

A5D2应用程序无法启动问题

给/lib/ld-2.22.so文件&#xff0c;建立名称为ld-linux.so.3的软连接即可。 或者编译程序的时候&#xff0c;用-s选项&#xff0c;将库文件编译进程序