![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MIT6.830
文章平均质量分 96
Robinsyn_L
这个作者很懒,什么都没留下…
展开
-
MIT6.830 lab6 一个简单数据库实现
lab4为了保证事务的原子性,我们在事务提交时才对脏页进行写盘,也就是no-steal/force策略no-steal:磁盘上不会存在uncommitted数据force:事务在committed之后必须将所有更新立刻持久化到磁盘在这个lab中,我们要实现的是steal/no-force策略,对于steal策略,如果数据库异常重启,为了保证事务的原子性,我们需要uodo-log来保证数据库crash的时候能够回滚;原创 2023-02-06 14:24:50 · 288 阅读 · 0 评论 -
MIT6.830 lab5 一个简单数据库实现
这次的lab是实现B+树索引,BTreeFile 由四种不同的页面组成。和;此外还有头部节点页面用于跟踪文件中的哪些页面正在使用最后,还有一个B+树的根节点完整代码lab5的讲义真的很重要,讲清楚了很多逻辑,另外也提供很多方法可以直接调用,如果是自己从0开始我觉得lab5的难度可能是最大的,不过理解清了B+树的结构的话做起来就没那么难受了。还剩最后一个lab的报告没写了,加油!原创 2023-02-03 14:44:31 · 261 阅读 · 0 评论 -
MIT6.830 lab4 一个简单数据库实现
这次的效率还算比较高,主要是在家也没什么事情做,就写写报告好了。完整代码整个lab4理解了做起来挺快的,记得最开始做的时候不知道Lock部分怎么实现,参考了网上前辈的方法,今天写报告的时候也发现了之前一些漏洞。还有两个lab报告没写,这些全部写完后如果有时间可能还是会考虑做一下lab3,说是这么说,但感觉应该没有多少时间了,毕竟学校里面的文章也是大头。原创 2023-02-02 15:21:26 · 275 阅读 · 0 评论 -
MIT6.830 lab2 一个简单数据库实现
上次说要写这个报告,半年过去了,我终于决定写lab2了。今天导师发消息让过完大年返校了,拖了半年的实验报告也重新启动,当然下一篇报告什么时候写就不一定了,提前预告下一篇写lab4,lab3我没有做,因为这部分内容是让去实现一个解析优化,我不想在这方面涉入太深,不然这个方向学着学着不就成数据库开发工程师了,然后去搞分布式存储什么的哈哈哈哈。原创 2023-01-30 21:52:45 · 483 阅读 · 0 评论 -
MIT6.830 lab1 一个简单数据库实现
这学期刚开始的时候买了一本《MySQL是怎样运行的——从根儿上理解MySQL》,看完之后得知MIT有一门用Java编写的简单数据库lab,遂决定试试手,中间做课题组的实验整理数据花了挺多时间,但还是断断续续的抽空完成了MIT6.830。在这个过程中网上一些先辈的实验报告对我起了很大的帮助,我也准备将其整理出来,也当自己再了解一遍。...原创 2022-08-03 16:37:49 · 1651 阅读 · 3 评论