读书笔记-数据密集型应用系统设计

  1. 读时模式类似编程语言中的动态 (运行时)类型检査,而写时模式类似于静态 (编译
    时) 类型检査
  2. 通常建议文档应该尽量小且避免写入时增加文档大小
  3. 融合关系模型与文档模型是未来数据库发展的一条很好的途径。
  4. 与直觉相反,内存数据库的性能优势并不是因为它们不需要从磁盘读取。如果有足够
    的内存,即使是基于磁盘的存储引擎,也可能永远不需要从磁盘读取,因为操作系统
    将最近使用的磁盘块缓存在内存中。相反,内存数据库可以更快,是因为它们避免使
    用写磁盘的格式对内存数据结构编码的开销[441。
  5. 除了性能外,内存数据库的另一个有意思的地方是,它提供了基于磁盘索引难以实现
    的某些数据模型。例如,Redis为各种数据结构(如优先级队列和集合)都提供了类
    似数据库的访问接口。由于所有的数据都保存在内存中,所以实现可以比较简单。
    最近的研究表明,内存数据库架构可以扩展到支持远大于可用内存的数据集,而不会
    导致以磁盘为中心架构的开销|451。所谓的反缓存方法,当没有足够的内存时,通过将
    最近最少使用的数据从内存写到磁盘,并在将来再次被访问时将其加载到内存。这与
    操作系统对虚拟内存和交换文件的操作类似,但数据库可以在记录级别而不是整个内
    存页的粒度工作,因而比操作系统更有效地管理内存。不过,这种方法仍然需要索引
    完全放入内存(如本章开头的Bitcask示例)。
    如果将来非易失性存储(non-volatile memory, NVM) 技术得到更广泛普及,可能还
    需要进一步改变存储引擎设计[461。目前这是一个新的研究领域,但值得密切关注。
相关推荐
zgl_200537791 天前
源代码:跨数据库通用“字段级”数据血缘解析与图形化(2/3:标注信息的拆解、检验、保存)
大数据·数据库·数据仓库·sql·数据挖掘·etl·嵌入式实时数据库
fastjson_2 天前
Hive 复杂数据类型
数据仓库·hive·hadoop
roman_日积跬步-终至千里2 天前
量化投研中的缓慢变化维:从因子定义到回测可复现的底层逻辑
大数据·数据仓库·金融
hopsky2 天前
《Hive性能调优实战》核心内容详细解读
数据仓库·hive·hadoop
楠楠子呀4 天前
独立站聊天转化全链路:从二维码引流到数据复盘
java·javascript·数据仓库·python·c#·自动化·etl
熊出没5 天前
AI经营分析数据中台如何搭建数仓
数据仓库
熊出没5 天前
解密数仓中的ODS、DWD、DWS、ADS
数据库·数据仓库
等一个人的@6 天前
数睿通2.0更新:可视化ETL引擎重构与部署优化
数据仓库·重构·etl
学代码的CJY7 天前
Codex + Obsidian:搭建你的 AI 知识库(保姆级教程)
数据仓库·人工智能