nodejs之mongodb中索引学习

听说创建索引能提升查询速度10倍以上,作为一个接触数据库不久的小白,我是不确信,那就自己动手来研究下吧。

  1. 首先给mongdb添加个几万条测试数据,再插入一条name=zhangsan的数据
    nodejs之mongodb中索引学习
  2. 查询数据name=zhangsan的这条数据,把查询时间显示出来
    nodejs之mongodb中索引学习
  3. 创建索引(这里注意,createIndex()和ensureIndex()方法来创建索引,前者用于3.0及以上版本,后者用于3.0以下版本。)

语法:
db.COLLECTION_NAME.ensureIndex(keys,options)
keys:要建立索引的参数列表。如:{KEY:1},其中key表示字段名,1表示升序排序,也可使用使用数字-1降序。
options:可选参数,表示建立索引的设置。可选值如下:
background,Boolean,在后台建立索引,以便建立索引时不阻止其他数据库活动。默认值为false。
unique,Boolean,创建唯一索引。默认值 false。
name,String,指定索引的名称。如果未指定,MongoDB会生成一个索引字段的名称和排序顺序串联。
partialFilterExpression, document.如果指定,MongoDB只会给满足过滤表达式的记录建立索引.
sparse,Boolean,对文档中不存在的字段数据不启用索引。默认值是 false。
expireAfterSeconds,integer,指定索引的过期时间
storageEngine,document,允许用户配置索引的存储引擎

nodejs之mongodb中索引学习

  1. 再来查询这条数据,对比相差几十倍- -!
    nodejs之mongodb中索引学习
    mongdb创建索引方法很简单,不仅能创建单索引也能创建复合索引,大大提升了查询速度!
    中文文档:http://www.mongoing.com/docs/indexes.html

上一篇:nodejs之nginx学习
下一篇:nodejs之koa框架学习