- 1
- 2
- 3
- 4
- 5
NewSQL 数据库底层存储核心技术解析
资料介绍
一、NewSQL 数据库的底层存储定位
NewSQL 是对同时满足传统关系型数据库的ACID事务支持与SQL兼容性,又具备NoSQL系统分布式水平扩展能力的新一代数据库的统称,其底层存储架构是实现两类优势融合的核心载体。不同于传统单机关系型数据库基于本地文件系统的单实例存储设计,也不同于多数NoSQL数据库为扩展性牺牲事务一致性的分片存储方案,NewSQL的底层存储需要同时解决三个核心矛盾:分布式场景下的事务ACID保证、水平扩展的存储弹性、SQL查询的高效执行。
二、NewSQL 底层存储的核心架构设计
1. 分布式分片存储架构
NewSQL普遍采用基于数据分片的分布式存储架构,这是实现水平扩展的基础。常见分片方式有两种:范围分片和哈希分片,多数主流NewSQL会结合两种分片设计优势优化存储结构:
· 范围分片:按照主键或索引键的区间范围将数据切分到不同存储节点,优势是范围查询效率高,相邻连续数据分布在相同或邻近节点,适合主键的范围扫描场景;缺点容易出现数据热点,比如自增主键会导致新写入数据集中在最新范围节点。
· 哈希分片:通过哈希函数计算主键的哈希值分配存储节点,优势是数据分布均匀,能够很好的打散写入热点;缺点是范围查询需要跨多个节点聚合,查询效率更低。
主流NewSQL产品比如Google Spanner、TiDB采用了范围分片为主的弹性分片设计,将数据划分为固定大小的分片(通常为几十MB到数百MB),每个分片管理一段连续的主键范围,当分片大小超过阈值后自动分裂,避免单分片过大,同时通过负载均衡将分裂后的分片调度到不同节点,解决了范围分片的热点问题,同时保留了范围查询的效率优势。
2. 分层存储架构
为了平衡读写性能、存储成本和持久化需求,NewSQL普遍采用分层存储设计,从上到下一般分为三层:
1. 内存层:作为热点数据缓存和写入缓冲,所有新写入数据首先写入内存,热点查询数据也优先在内存命中,降低磁盘IO访问延迟。同时内存层会维护数据的多版本信息,支持MVCC并发控制。
2. 持久化日志层:为了保证数据不丢失,所有数据修改先写入持久化的WAL(Write Ahead Log)日志,日志通常采用多副本同步复制的方式存储在分布式节点,保证故障恢复时可以通过日志重放恢复内存中的数据。
3. 持久化数据层:存储全量数据的快照文件,通常基于LSM树结构优化写入性能,定期将内存层的修改合并到持久化数据层,减少日志体积,提升查询效率。
部分文件列表
| 文件名 | 大小 |
| NewSQL_数据库底层存储核心技术解析.docx | 16K |
最新上传
-
tangyu1 打赏1.00元 3天前
-
jjjjkkkkk 打赏1.00元 3天前
-
emlimei 打赏1.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏3.00元 3天前
资料:低频功率放大器的设计.
-
21ic小能手 打赏3.00元 3天前
-
21ic小能手 打赏3.00元 3天前
-
21ic小能手 打赏3.00元 3天前
-
21ic小能手 打赏3.00元 3天前
-
21ic小能手 打赏5.00元 3天前
资料:51单片机数字频率计
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
21ic小能手 打赏5.00元 3天前
-
13573902396 打赏1.00元 3天前
-
21下载积分 打赏310.00元 3天前
用户:江岚
-
21下载积分 打赏310.00元 3天前
用户:潇潇江南
-
21下载积分 打赏60.00元 3天前
用户:他山之石可攻玉
-
21下载积分 打赏310.00元 3天前
用户:小猫做电路
-
21下载积分 打赏210.00元 3天前
用户:zhengdai
-
21下载积分 打赏210.00元 3天前
用户:w993263495
-
21下载积分 打赏10.00元 3天前
用户:烟雨
-
21下载积分 打赏60.00元 3天前
用户:gsy幸运
-
21下载积分 打赏70.00元 3天前
用户:铁蛋锅
-
21下载积分 打赏65.00元 3天前
用户:xzxbybd
-
21下载积分 打赏60.00元 3天前
用户:jh0355
-
21下载积分 打赏60.00元 3天前
用户:w178191520
-
21下载积分 打赏20.00元 3天前
用户:jh03551
-
21下载积分 打赏20.00元 3天前
用户:sun2152
-
21下载积分 打赏20.00元 3天前
用户:kk1957135547
-
21下载积分 打赏25.00元 3天前
用户:w1966891335
-
21下载积分 打赏20.00元 3天前
用户:xuzhen1
-
21下载积分 打赏15.00元 3天前
用户:x15580286248
-
21下载积分 打赏25.00元 3天前
用户:pcb
-
21下载积分 打赏20.00元 3天前
用户:bhacker
-
21下载积分 打赏15.00元 3天前
用户:liqiang9090
-
21下载积分 打赏25.00元 3天前
用户:有理想666
-
21下载积分 打赏15.00元 3天前
用户:godbox
-
21下载积分 打赏15.00元 3天前
用户:aetek
-
21下载积分 打赏5.00元 3天前
用户:mulanhk
-
21下载积分 打赏5.00元 3天前
用户:JuneLin61




全部评论(0)