2023年5月3日
Stonebraker的论文,介绍了 9个不同时代的数据模型;层次数据库IMS,以及网络数据库CODASYL,这两者都是逻辑数据、物理数据耦合,之后出现了关系模型,有了数据独立;再往后就是各种对关系模型的补充,如实体-关系模型、关系模型++、语义数据模型、OO模型、对象关系模型、半结构模型等;从中我们可以总结到:查询优化器很有用、技术的争论通常由市场和其他因素决定,简单模型比复制模型更容易实现数据独立、KISS 保持简单是很重要的、除非用户使用中出现很大问题否则他们不会买单、没有编程语言社区的支持想在语言上做改进突破很难、新技术的推广,需要标准化,或者大力度的推广、schema-last 可能只合适小部分场景
阅读全文
2023年4月11日
LevelDB 的辅助工具类,如内存分配、编码、LRU、bloom filter等
阅读全文
2023年4月9日
LevelDB 的SSTable模块,存储在磁盘上的结构,包括文件格式的组织、数据文件块是如何读取的、索引文件块是如何组织的
阅读全文
2023年4月6日
LevelDB 的MemTable模块,底层使用 skip-list实现的,用来实现内存的读、写操作
阅读全文
2023年3月30日
LevelDB 的 src/include目录下的公开接口、跨平台的移植(对文件读写、线程、锁做了简单封装方便了跨平台迁移),读写流程的大致流程等
阅读全文
2023年3月27日
LevelDB的架构,各个组件的基本原理,一些基本操作(open、增删改),高级特性(options、自定义比较器)
阅读全文
2023年3月20日
卡耐基梅隆的bustub数据库,实验课程;包括:LRU-k实现、可扩展的hash表、B+的的增删改查、B+树的并发控制、各种SQL算子的执行和优化,并发处理
阅读全文