Mongodb 源码分析:整体架构
最近一直在学习Mongodb的源码,很希望能够搞清楚Mongodb内部的具体实现。从Mongodb中文社区和其他人的博客里面学到了很多, 因此, 开了这个博客希望把自己学到的一些分享给大家。
任何源码的分析都是从整体架构来开始的, Mongodb的整体架构跟其他的关系型的数据库很类似,
都是有一些关键的模块组成,
作为一个简单的对比, 我们给出了如下经典的关系型数据库的结构图:
作为对比, 我们也提供一个类似的Mongodb的结构图:
在我后续的文章中, 会详细的讲述各个某块的具体实现。
数据库管理
CRUD与Command: https://blog.csdn.net/baijiwei/article/details/86560794
连接池:https://blog.csdn.net/baijiwei/article/details/86404776
原子操作: https://mp.csdn.net/mdeditor/86351130#
查询引擎
查询相关的文章: http://blog.csdn.net/baijiwei/article/details/78128632
副本集
oplog 同步: http://blog.csdn.net/baijiwei/article/details/78303200
executor 实现:
http://blog.csdn.net/baijiwei/article/details/78378050
heartbeat实现:
http://blog.csdn.net/baijiwei/article/details/78441843
raft选主,主从切换
http://blog.csdn.net/baijiwei/article/details/78443525
oplog同步位置更新:
https://blog.csdn.net/baijiwei/article/details/85370519
副本集节点的状态变化
https://blog.csdn.net/baijiwei/article/details/78311665
存储引擎
WiredTiger概述:
https://blog.csdn.net/baijiwei/article/details/80506121
WiredTiger的缓存:
https://blog.csdn.net/baijiwei/article/details/80504715
WiredTiger Journal:
https://blog.csdn.net/baijiwei/article/details/89739781
WiredTiger Hazard pointer:
https://blog.csdn.net/baijiwei/article/details/89705491
分片 auto-sharding
概述:
https://blog.csdn.net/baijiwei/article/details/87535186
MoveChunk:
https://blog.csdn.net/baijiwei/article/details/88072121
事务相关
MongoDB事务的实现:
https://blog.csdn.net/baijiwei/article/details/90113775
MongoDB的并行机制:
https://blog.csdn.net/baijiwei/article/details/90054272
Mongodb 源码分析:整体架构相关推荐
- Mongodb源码分析--Replication之主从模式--Master
mongodb中提供了复制(Replication)机制,通过该机制可以帮助我们很容易实现读写分离方案,并支持灾难恢复(服务器断电)等意外情况下的数据安全. 在老版本(1.6)中,Mongo提供了两种 ...
- PX4 Autopilot源码分析 - 总体架构
PX4 Autopilot源码分析 - 总体架构 应用场景 单独飞控 飞控+任务计算机场景 软件架构 译自PX4 user guide,原文请参阅: https://docs.px4.io/maste ...
- spring transaction源码分析--事务架构
1. 引言 事务特性 事务是并发控制的单元,是用户定义的一个操作序列.这些操作要么都做,要么都不做,是一个不可分割的工作单位.通过事务将逻辑相关的一组操作绑定在一起,以便服务器 保持数据的完整性.事 ...
- FairFuzz 论文简读+源码分析+整体流程简述
FairFuzz: A Targeted Mutation Strategy for Increasing Greybox Fuzz Testing Coverage 一.论文阅读 Abstract ...
- Backbone源码分析-Backbone架构+流程图
作者:nuysoft/高云/nuysoft@gmail.com 声明:本文为原创文章,如需转载,请注明来源并保留原文链接. Backbone0.9.1源码分析分析系列 jQuery1.6.1源码分析系 ...
- 一步步去阅读koa源码,整体架构分析
阅读好的框架的源码有很多好处,从大神的视角去理解整个框架的设计思想.大到架构设计,小到可取的命名风格,还有设计模式.实现某类功能使用到的数据结构和算法等等. 使用koa 其实某个框架阅读源码的时候,首 ...
- 【深入浅出jQuery】源码浅析--整体架构(转)
最近一直在研读 jQuery 源码,初看源码一头雾水毫无头绪,真正静下心来细看写的真是精妙,让你感叹代码之美. 其结构明晰,高内聚.低耦合,兼具优秀的性能与便利的扩展性,在浏览器的兼容性(功能缺陷.渐 ...
- 【jQuery源码】整体架构
jQuery源码可以精简为以下内容: 方框上面的代码根据Jq注释我们可以知道是对AMD规范的支持. jQuery整体上被包裹在一个匿名函数中,这个匿名函数再作为另一个匿名函数的参数被传入,形参fact ...
- JQuery源码解析-整体架构的设计
最近在看jQuery的源码,查了一些资料,偶尔看到了网易云课堂里有套视频是对源码进行讲解的,是叫妙味课堂出的,看着还不错,对这方面感兴趣的推荐看下, 个人感觉很不错.所以发些文章,边学边记录. 版本: ...
最新文章
- TCP 和 UDP 在socket编程中的区别
- sicily 1024 Magic Island
- c 最大子序列和_最大子序列和暴力法、分治+递归法、妙法
- 实验3 动态规划(0/1背包)
- pdfLaTeX和XeLaTeX
- 在mac OSX中安装启动zookeeper
- oracle多条件分组统计_多条件统计,就必须用Ifs系列函数,绝对的高能!
- C++primer 第 5 章语句 5.2语句作用域 5.3条件语句 5 . 4 迭代语句 5.5跳转语句 5.6 try语句块和异常处理
- Vivado MMCM IP核接口信号介绍
- 秋季海报设计元素|水彩手绘纹理植物素材,从人群中脱颖而出。
- Windows和Mac os x一样不安全?!
- 简单几行javascript代码,实现动态倒计时功能
- 模型算法_生产建模型 算法控效率
- SonarQube安装步骤 Windows10系统
- 今年水果贵,咱走网购
- html+css+jquery制作图片展示效果
- 【转载】20款密码破解工具
- 清明节日期的计算方法
- DirectX11,DirectX12,OpenGL,Vulkan学习资料
- 4-5. do...while循环