DBMS
我不是狼人
渣渣辉
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
COMP9315 week6a 课堂笔记
Indexingindexing是一个辅助文件,包含不同类型的records,由(key_value,tuple)组成。如果我们要搜索k2,在index file中找到k2对应的tid(即一个k2所在data page的引用)。当我们找到匹配的tuples,需要读它们的data pages,然后对它们本身进行操作。Index file按key的大小排序,因此我们可以进行二分搜索。所...原创 2020-05-05 14:27:26 · 347 阅读 · 0 评论 -
COMP9315 week5b 课堂笔记
Hash帮助优化query time:如果query拥有相同的value,通过hash函数快速定位到相同的page。在hash时,有时候不同值落在了同一个点,这就是hash collision problem(哈希冲突),但时每个bucket都有很多空间,所以不用担心这个问题。ka是一个words的数组,它的起始与byte stream 的起始一样,如果K不能被4整除,会产生alignmen...原创 2020-05-03 01:36:20 · 400 阅读 · 0 评论 -
COMP9315 week5a 课堂笔记
Projection primary key不需要去重。Projection基于index可以不访问data file。(我们假设只在key attribute上做projection。)基本思想:扫描已经对key attribute 排好序的index file。重复项在index中相邻。index file有bi页组成。bi远小于最初pages的总数。每个方式的输出可能顺序不一样...原创 2020-05-01 11:07:43 · 413 阅读 · 0 评论 -
COMP9315 week4b 课堂笔记
Scanning抓取所有pages中的tuples作为结果集。Page Cost:b(一个表的data file中pages的总数)PSQL的heap file可以带overflow pages。如上,暴力scanning的代价是b+b(Ov),b(Ov)是overflow pages的总数。如果不按顺序,则可以如下:找到最多1个结果的query:通过primary key:...原创 2020-04-28 00:11:26 · 544 阅读 · 0 评论 -
COMP9315 week4a 课堂笔记
Tuples以上信息存在schema.sql。Tuples是一个schema上属性值的集合,Record则是tuple上data的对应的一串bytes。Record既存在在Disk中也存在在Buffers中。当读一个8K page(get_record)时,一些record对应在buffers中。Records需要在working memory里将其转化为tuple。(mkTuple)...原创 2020-04-25 00:12:14 · 370 阅读 · 0 评论 -
COMP9315 课堂笔记 week3 lecture3
Page InternalsPSQL 使用clock-sweep。Buffer pool可以看作一个buffer slots的循环列表。Buffer pool在启动服务时为空,一般在在结束时满。所以当新的page来的时候,我们需要evict(驱逐)一些page。---->NextVictimBuffer 存下一个被驱逐对象的索引。当决定谁被驱逐时,如果一个page很受欢迎,则保留它...原创 2020-04-22 18:23:59 · 431 阅读 · 0 评论 -
COMP9315 week07课堂笔记
Signature-based SelectionDescriptor 也叫signature。从individual attributes里提取并合并信息去组成单个bitstream,捕获tuple的内容。signature存储在signature file中。每个tuple都有自己的signature。但signature不会决定record的位置。signature file比d...原创 2020-04-01 14:44:07 · 1229 阅读 · 0 评论 -
COMP9315 课堂笔记(二)
Buffer Pool(缓冲池)Aim:保存那些需要重用的数据库文件中的page。被用于读写想要的pages的access methods,如sequential scan,indexed retrieval 和 hashing。它使用文件管理函数去获取与table对应的data files。Buffer pool的操作:1 . request_page(pid) 2.releas...原创 2020-03-09 11:48:57 · 829 阅读 · 2 评论 -
COMP9315 DBMS课堂笔记
DBMS课堂笔记文件管理在操作系统中文件操作流程: fd = open(fileName,mode) // open a named file for reading.writing/appending close(fd) // close an open file, via its descriptor read = read(rd, but, nbytes) //attem...原创 2020-03-03 13:28:30 · 1082 阅读 · 0 评论
分享