
CMU15-445课程记录
文章平均质量分 91
爱好学习的青年人
学习学习再学习
展开
-
CMU15-445 Tree Indexes II Note
Tree Indexes II1 B+树设计选择1.1 Node Size 节点大小根据存储介质,我们可能更喜欢更大或更小的节点大小。 例如,存储在硬盘驱动器上的节点的大小通常为兆字节数量级,以减少查找数据所需的搜索次数并分摊大块数据上昂贵的磁盘读取,而内存数据库可能使用页面大小小到 512 字节作为节点,以便将整个页面放入 CPU 缓存中并减少数据碎片。 这种选择也可能取决于工作负载的类型,因为点查询希望页面尽可能小以减少加载的不必要的额外信息量,而大型顺序扫描可能更喜欢大页面以减少所需的提取次数原创 2021-09-29 17:04:06 · 211 阅读 · 0 评论 -
CMU15-445 Tree Indexes I Note
Tree Indexes I1 表索引可以在数据库系统内部使用许多不同的数据结构,例如内部元数据、核心数据存储、临时数据结构或表索引。对于表索引,可能涉及范围扫描的查询。表索引是表列子集的副本,这些列被组织和/或排序以使用这些属性的子集进行高效访问。因此,DBMS 无需执行顺序扫描,而是可以查找表索引的辅助数据结构,可以更快地查找元组。 DBMS 确保表和索引在逻辑上总是同步的。每个数据库要创建的索引数量之间存在权衡。 尽管更多的索引可以更快地查找查询,但索引也使用存储并需要维护。 找出用于执行原创 2021-09-29 17:02:21 · 209 阅读 · 0 评论 -
CMU15-455 Buffer Pools - BPM
Buffer Pools1 Locks vs. Latches在讨论 DBMS 如何保护其内部元素时,我们需要区分 lock 和 latches。锁 lock保护数据库逻辑内容(例如,元组、表、数据库)免受其他事务的影响。在交易期间持有。需要能够回滚更改。锁存器 latches 类似操作系统的mutex保护 DBMS 内部数据结构的关键部分免受其他线程的影响。在操作期间保持。不需要能够回滚更改。2 缓冲池 Buffer PoolBPM的总体架构与虚拟内存的设计思想一原创 2021-09-28 22:07:41 · 313 阅读 · 0 评论 -
2021年秋季版 CMU数据库15-445/645 Note1~4
2021年秋季版 CMU数据库15-445/645 Note翻译NOTE这也就是说这并不是一门教你如何使用数据库去构建应用程序、网站或者其他东西课,也不是一门教你如何去管理和部署数据库的课。我们所注重的是教你如何去构建和设计软件,这才是数据库管理系统本文前四章翻译用的是知乎 https://www.zhihu.com/column/c_1298236285451513856 taoting的,后面开始是本人(菜鸟)自己译的。文章目录Introduction1 数据库2 平面文件3 数据库管理系统(转载 2021-09-28 19:45:31 · 2552 阅读 · 0 评论 -
CMU15-445 2021Fal PROJECT#1 - BUFFER POOL 含代码慎用
PROJECT #1 - BUFFER POOLTask1 LRU REPLACEMENT POLICYLRUReplacer 的最大页数与缓冲池的大小相同,因为它包含 BufferPoolManager 中所有帧的占位符。 然而,在任何给定时刻,并非所有帧都被认为在 LRUReplacer 中。 LRUReplacer 被初始化为没有帧。 然后,只有 新取消固定(零引用) 的才会被认为在 LRUReplacer 中。Victim(frame_id_t*) :与替换器跟踪的所有其他元素相比,删除最近原创 2021-09-26 22:33:13 · 1758 阅读 · 14 评论 -
CMU15-445 2021Fall Project0-C++ primer
CMU15-445 2021Fall Project0-C++ primerIn this project, you will implement three classes: Matrix, RowMatrix, and RowMatrixOperations. These matrices are simple two-dimensional matrices that must support addition, matrix multiplication, and a simplified Gen原创 2021-09-16 09:33:31 · 824 阅读 · 6 评论