数据库05 -01 磁道存储,记录在磁道存储,文件组织

本文详细介绍了计算机存储系统的磁道结构、磁盘性能指标(如访问时间)、磁盘访问优化(如块级和比特级数据拆分),重点探讨了RAID技术,包括冗余提高可靠性的方式(如镜像和奇偶校验)、RAID级别的选择及其在不同应用场景中的优劣,以及文件组织和记录存储的细节。
摘要由CSDN通过智能技术生成

01.计算机存储系统:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

02.磁道存储(数据库存储的重点)
在这里插入图片描述
扇面:
在这里插入图片描述
读写头和磁盘臂:
在这里插入图片描述
柱面:
在这里插入图片描述

在这里插入图片描述
磁盘控制器:
在这里插入图片描述
重映射:
在这里插入图片描述
03.磁盘性能的测量
访问时间:等于寻道时间+旋转等待时间
在这里插入图片描述
寻道时间:
在这里插入图片描述
平均寻道时间:
在这里插入图片描述
旋转等待时间:
在这里插入图片描述
数据传输率:
在这里插入图片描述
04.磁盘访问的优化
设置块:逻辑上的块
在这里插入图片描述
顺序访问
在这里插入图片描述


RAID

01.通过冗余提高可靠性

N张磁盘组成的集合中某张磁盘发生故障的概率会比特定的以一张磁盘发生的概率要高。

引入冗余(redundancy)是解决这个可靠性问题的方法。冗余对发生故障时重建信息。

实现冗余最简单的方式是:复制每一张磁盘。这种技术称为镜像(mirroring)。

1.一张逻辑磁盘由两张物理磁盘组成,并且每月一次写操作都要在两张磁盘上执行。如果其中一张磁盘发生了故障,数据可以从另一张磁盘读出。只有两张磁盘都发生故障,数据才会丢失。
2.一般情况下,先写一个磁盘,再对另一个进行拷贝。

02通过并行提高性能

磁盘镜像可以使得我们对多张磁盘进行并行访问,提高访问速度。

此外,也可以采用数据拆分(Striping Data)提高传输速率。有不同层次的数据拆分形式,如:块级拆分和比特级拆分等。其中块级拆分是最常用的数据拆分。

1.比特级拆分(Bit-Level Striping):将每个字节按照比特拆分,存储到多个磁盘上。
例如:有一个由8张磁盘组成的阵列,将每个字节的第i位存储到第i张磁盘,这8张磁盘阵列可以被看成单一的磁盘。这张大磁盘的一个扇区的大小是通常大小的8倍。它的传输速率也是通常的8倍。每张磁盘都参与每次的访问,每次读取的数据量是一张磁盘上的8倍。位级别的拆分可以推广到磁盘综述为8的整数倍或8的因子情况,如使用4张磁盘,则第第i位和第i+4位可以写到第i章磁盘上。
2.块级别的拆分(Block-Level Striping):将块拆分到多张磁盘上。假设有n张磁盘,则将第i块存储到第(i mod n)+1张磁盘上。块级拆分也提高了数据的传输速率。

磁盘中的并行主要有两个目的:

1.负载平衡多个小的操作(块访问),以提高这种访问操作的吞吐量。
2.并行执行大的访问操作,以减少大的访问操作的响应时间。

03.RAID级别
独立磁盘冗余阵列

除了磁盘镜像,奇偶校验结合磁盘拆分思想也可以实现冗余。

结合奇偶校验位、磁盘拆分思想、以及磁盘镜像,并对成本和性能进行权衡,提供了多种不同的冗余替代方案,并且分为RAID级别。
在这里插入图片描述
下图中P表示纠错位,C表示数据的拷贝

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

04RAID级别的选择

选择RAID级别应该考虑以下的因素:

所需的额外磁盘存储带来的花费
在I/O操作数量方面的性能需求
磁盘故障时的性能
在数据重建过程(rebuild performance 即,故障磁盘上的数据在新磁盘上重建的过程)中的性能

重建故障磁盘上数据的时间:RAID1最简单,直接从另一张磁盘中拷贝即可得到;其他级别的重建需要访问磁盘阵列中所有其他的磁盘来进行重建,比较复杂,耗时较长。

RAID0 - 可以用于数据安全不是很重要的高性能应用。

RAID2和RAID4被RAID3级和RAID5级所包含,所以一般RAID的选择只在RAID0,RAID1,RAID3和RAID5,RAID6上进行。

而RAID3的比特级拆分不如RAID5的块级拆分,RAID5在大数据上与RAID3同样好的数据传输率,同时对小数据的传输使用更少的磁盘,其并行性会减少延迟。实际中RAID3的性能会比RAID5的更差。

==>那么问题就变成如何在RAID1,RAID5和RAID6上进行。

RAID6级比RAID5具有更高的可靠性,可以用于数据安全十分重要的应用。

RAID1:提供较好的写操作的性能,在例如数据库系统日志文件的存储这类的应用中使用广泛

RAID5:相比RAID1需要较低的存储负载,但是写操作具有更高的开销。对于经常用读操作而很少进行写操作的应用,RAID5是首选。


记录在磁盘上的存储
01.文件和块
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
02.定长记录
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

01.问题1
在这里插入图片描述

02.问题2在这里插入图片描述
在这里插入图片描述
解决1
在这里插入图片描述
解决2
在这里插入图片描述
在这里插入图片描述

解决2的缺点

在这里插入图片描述
在这里插入图片描述
解决2的优化:空闲链表

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
03.变长记录
变长记录=定长记录+变长属性

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
详细讲解 第一个字节是21,5 第二个字节是26,10,第三个字节是36,10 ,第四个直接是从12-20

而后就是空位图, 占一个字节

从21开始,是数据21-26 是一部分数据 26-36 又是一部分数据 36-45 又是一部分数据

在这里插入图片描述

分槽页结构:就是把一个页(块)进行构造
图:
在这里插入图片描述
解释:
在这里插入图片描述
页的各个部分存储的位置
在这里插入图片描述

出现删除的情况:

大数据对象:
一般数据库要求大数据的大小不超过一个块
在这里插入图片描述

—文件组织:记录是如何查找的

在这里插入图片描述

在这里插入图片描述
01.顺序文件
按照一个搜索码的顺序进行:
在这里插入图片描述
缺点是:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
02.多表簇聚组织

一般数据库只会在一个大的文件中存储所有的关系

在这里插入图片描述
在这里插入图片描述

例子:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
缺点:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
数据字典:
在这里插入图片描述
元数据有什么:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
使用元数据:
在这里插入图片描述

  • 11
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值