javascript和JQuery焦点图和代码特效大全
当前最流行的开源CMS网站系统大全
当前位置:首页 > 数据库 > db2

MongoDB(3)——Index的创建流程1

来源:IT技术网编辑:雨天发布于:2017-06-19人围观

1. 创建

除了用户手动创建索引,系统会为每个Collection建立一个主键索引,下面分析的就是这个主键索引的创建过程。
原来我们说到Collection的创建是在Database的createCollection中开始。

进入_getOrCreateCollectionInstance方法,确实有Collection的创建语句。

那么Collection的构造函数又干了些什么?从下图可以看到,Collection的构造过程中,确实做了一些与索引相关的工作,但还不知道究竟做了些什么。我们继续向下走。

进入init函数,其实并不是每一句都弄清楚了,但是看到_setupInMemoryStructures这个函数就吸引了我。

进入setupInMemoryStructures函数终于发现了看到了关于获取index的函数,追踪发现getIndex函数确实就是创建Index的方法。经过这一系列步骤,索引结构就确定了。

2. 插入数据建立索引

前面我们说过Collection中是如何插入数据的,同样是在_insertDocuments方法中,我们最后有一段没有分析,如下图所示代码,首先获得record的id,然后构造成一个bsonRecord,这个BsonRecord包含两项,一个Id,一个指向Record的指针,这样就构造了Index的一项,最后将这个索引节点插入。

上一篇:MongoDB优化

下一篇:MongoDB时间问题

与相关的文章
有时间的话来看看IT界的突发事件