- 读时模式类似编程语言中的动态 (运行时)类型检査,而写时模式类似于静态 (编译
时) 类型检査 - 通常建议文档应该尽量小且避免写入时增加文档大小
- 融合关系模型与文档模型是未来数据库发展的一条很好的途径。
- 与直觉相反,内存数据库的性能优势并不是因为它们不需要从磁盘读取。如果有足够
的内存,即使是基于磁盘的存储引擎,也可能永远不需要从磁盘读取,因为操作系统
将最近使用的磁盘块缓存在内存中。相反,内存数据库可以更快,是因为它们避免使
用写磁盘的格式对内存数据结构编码的开销[441。 - 除了性能外,内存数据库的另一个有意思的地方是,它提供了基于磁盘索引难以实现
的某些数据模型。例如,Redis为各种数据结构(如优先级队列和集合)都提供了类
似数据库的访问接口。由于所有的数据都保存在内存中,所以实现可以比较简单。
最近的研究表明,内存数据库架构可以扩展到支持远大于可用内存的数据集,而不会
导致以磁盘为中心架构的开销|451。所谓的反缓存方法,当没有足够的内存时,通过将
最近最少使用的数据从内存写到磁盘,并在将来再次被访问时将其加载到内存。这与
操作系统对虚拟内存和交换文件的操作类似,但数据库可以在记录级别而不是整个内
存页的粒度工作,因而比操作系统更有效地管理内存。不过,这种方法仍然需要索引
完全放入内存(如本章开头的Bitcask示例)。
如果将来非易失性存储(non-volatile memory, NVM) 技术得到更广泛普及,可能还
需要进一步改变存储引擎设计[461。目前这是一个新的研究领域,但值得密切关注。
读书笔记-数据密集型应用系统设计
AbnerWright2026-08-29 16:40
相关推荐
tianhuo00315 小时前
从MySQL到Apache Doris:生鲜供应链数仓的ETL流水线与SARIMA需求预测全实SendTomo18 小时前
.ico透明图标在线生成下载平台深度解析qingwufeiyang_5302 天前
IceBerg学习笔记2学代码的CJY4 天前
CJY 知识工作台:博客写作使用指南喻师傅4 天前
Apache Hudi 概述:从 Parquet 更新难题到数据湖 Upsert宽海智能仓储物流6 天前
航发自动化立体库异构系统改造:宽海智能30天联调技术全解析程序员小羊!8 天前
医疗数据仓库ODS层敏感信息防护实战:7大关键策略欢迎来到祖安!8 天前
企业微信 API 接口能力介绍:支持消息收发、图片发送、表情互动、联系人管理等多场景应用RestCloud9 天前
飞书多维表格落地新思路:ETL做数据导入,豆包做业务智能分析AgentMaster10 天前
元数据、血缘、质量、安全四大模块能力拆解,数据治理方案对比:4 种技术路线深度评测