![[浅入浅出]MongoDB和WiredTiger [浅入浅出]MongoDB和WiredTiger](http://www.cooa.com.cn/d/file/17bianji/lsqh/07d317a90c9ff5b2a0fdd9662b897733.jpeg)
WiredTiger 还支撑在内存中和磁盘上对索引进行紧缩,在紧缩时也应用了前缀紧缩的方法以削减 RAM 的应用,在后面的文┞仿中我们会具体介绍和分析 WiredTiger 存储引擎是若何对各类数据进行存储的。
Journaling
为了在数据库宕机包管 MongoDB 中数据的持久性,MongoDB 应用了 Write Ahead Logging 向磁盘上的 journal 文件预先辈行写入;除了 journal 日记,MongoDB 还应用检查点(Checkpoint)来包管数据的一致性,当数据库产生宕机时,我们就须要 Checkpoint 和 journal 文件协作完成数据的恢复工作:
- 在数据文件中查找上一个检查点的标识符;
- 在 journal 文件中查找标识符对应的记录;
- 重做对应记录之后的全部操作;
MongoDB 会每隔 60s 或者在 journal 数据的写入达到 2GB 时设置一次检查点,当然我们也可以经由过程在写入时传入 j: true 的参数强迫 journal 文件的同步。
这篇文┞仿并不会介绍 Journal 文件的格局以及相干的内容,作者可能会在之后介绍分析 WiredTiger 的文┞仿中简单分析其存储格局以及一些其它特点。
总结
这篇文┞仿中只是对 MongoDB 的一些根本特点以及数据模型做了简单的介绍,固然『无穷』扩大是 MongoDB 异常重要的特点,然则因为篇幅所限,我们并没有介绍任何跟 MongoDB 集群相干的信息,不过会在之后的文┞仿中专门介绍多实例的 MongoDB 是若何协同工作的。
在这里,我想说的是,如不雅各位读者接收到了类似 MongoDB 比 MySQL 机能好很多的断言,然则在应用 MongoDB 的过程中仍然遵守以往 RDBMS 对数据库的设计方法,那么我信赖机能在最终也不会有太大年夜的晋升,反而可能会不升反降;只有真正懂得 MongoDB 的数据模型,并且根据营业的须要进行设计才能很好地应用类似嵌入式文档等特点并晋升 MongoDB 的机能。
【编辑推荐】
- MySQL高可用数据库内核深度优化的四重定制
- 崛起的GPU数据库大年夜揭秘:多半据流及时分析,若何做档毙木沉电?
- 青铜到王者,快速晋升你MySQL数据库的段位!
- MySQL数据库的“十宗罪”(附10大年夜经典缺点案例)
- DB-Engines 9月全球数据库排名,Oracle跌势明显
推荐阅读
年薪40万的程序员为啥找不到女朋友?这是我见过最精彩的回答!
今天看到一位题主问了一个问题:年薪40万的法度榜样员为什么找不到女同伙!哈,问题不出色评论出色,来和小编一路看看你吧我熟悉的男法度榜样员,大年夜多集技艺与逗比于一身,读得了《边>>>详细阅读
地址:http://www.17bianji.com/lsqh/37233.html
1/2 1