乐趣区

关于nosql:MongoDB

MongoDB 概念:

MongoDB 是一个文档型的 NoSql 数据库,和关系型数据库相比,没有结构化的存储要求,扩大更灵便。

存储构造:

DataBase: 相似于关系数据库中的 DataBase。
Collection: 相似于关系数据库中的表。
Document:MongoDB 中的最小存储单元,相似于关系数据库中的行。每一个 Document 都是一个 BSON 键值对。

BSON:是一种网络数据交换格局,是 JSON 的二进制示意。构造相似于 JSON。扩大了 JSON 反对的数据格式:date,byte array。BSON 内元素前记录了此元素的字节长度,因而绝对于 JSON,遍历更快,解决更高效。毛病是须要更多的存储空间。

索引

单键索引

最常见的索引类型,基于一个字段进行索引,能够疾速定位到指定字段的值。

复合索引

基于多个字段组合创立的索引,能够放慢多个字段的查问效率,实用于多字段联结查问。

惟一索引

确保索引字段的唯一性,避免反复值的插入和更新。

文本索引

用于全文搜寻,反对文本关键字的匹配和查问。

多键索引

用于索引数组或嵌套文档中的多个键值,实用于查问和筛选数组字段中的值。

TTL 索引

Time-to-Live Index,依据指定的工夫字段主动删除过期的文档,实用于数据的主动清理和过期治理。

hash 索引

将索引字段的值进行散列哈希,用于疾速查找和比拟,不反对范畴查问。

wiredTiger 存储引擎

wiredTiger 是用 B + 树,写操作会先写到内存中,并记录日志。每过一段时间,会生成一个内存快照,而后以 page 为根本单位往磁盘读写数据,每一次写都会从新生成新的 root page。

适宜场景

适宜存价值不高,构造灵便扩大,数据结构比较复杂。

退出移动版