如何在Mongo DB中创建B树

Vin*_*han 4 b-tree mongodb

我正在尝试了解如何创建B树.

假设我使用数字作为索引变量.如何使用depth = 1创建树或者它是这样的 - http://bit.ly/ygwlEp 如果是这样,那么树的深度和最大子项数是多少.对于复合键(比如2个索引变量),会有两棵树.或者它是一棵树,第一级为第一级,第二级为第二级?假设我将时间戳作为索引键.我可以把它作为一棵树,第一层为年,第二层为月,第三层为白天.mongoDB可以自动解析这些信息吗?

Gat*_* VP 8

如何使用depth = 1创建树,或者它是这样的 - http://bit.ly/ygwlEp

你的图片显示的是"二叉树",而不是"b树",这些都是不同的.

"B-tree"通过创建给定大小的桶(相信MongoDB使用4k)并在这些桶中订购项目来工作.

如果是这样,树的深度和最大儿童数量是多少

请查看B-trees上的维基百科条目,它应该为您提供明确的答案.

对于复合键(比如2个索引变量),会有两棵树.

只有一棵树.然而,存储在树中的密钥基本上是两个"组合"的项目的BSON表示.

假设我将时间戳作为索引键.我可以把它作为一棵树,第一层为年,第二层为月,第三层为白天.mongoDB可以自动解析这些信息吗?

不,您无法控制索引结构.

没有MongoDB不支持对索引中的日期进行任何特殊解析.

如果对时间戳执行比较操作,则需要发送另一个时间戳.