书签 分享 收藏 举报 版权申诉 / 50
上传文档赚钱

类型数据库的讲义存储与文件结构 课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3492264
  • 上传时间:2022-09-07
  • 格式:PPT
  • 页数:50
  • 大小:1.63MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《数据库的讲义存储与文件结构 课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    数据库的讲义存储与文件结构 课件 数据库 讲义 存储 文件 结构
    资源描述:

    1、存储与文件结构存储与文件结构存储与文件结构存储与文件结构4物理存储介质概述物理存储介质概述4磁盘磁盘4RAID4第三级存储第三级存储4存储访问存储访问4文件组织文件组织4文件中的记录组织文件中的记录组织物理存储介质的分类物理存储介质的分类4数据存取的速度数据存取的速度4每单位数据的成本每单位数据的成本4可靠性可靠性 系统故障或者电源故障造成的数据丢失系统故障或者电源故障造成的数据丢失 存储设备的物理故障存储设备的物理故障4可以将存储介质分为:可以将存储介质分为:易失存储:当电源关闭时,所存储的内容就会丢失易失存储:当电源关闭时,所存储的内容就会丢失 非易失存储:非易失存储:即便在电源关闭时,存

    2、储内容也不会丢失即便在电源关闭时,存储内容也不会丢失 包括辅助存储和第三级存储,以及具有后备电源的主存储包括辅助存储和第三级存储,以及具有后备电源的主存储器器物理存储介质物理存储介质4高速缓存高速缓存 最快和最昂贵的存储介质;是易失最快和最昂贵的存储介质;是易失的;由计算机操作系统管理。的;由计算机操作系统管理。4主存储器主存储器 快速存取快速存取(10到到100纳秒;纳秒;1纳秒纳秒=109 秒)秒)通常太小(或者太贵)而不能存储整个数据库通常太小(或者太贵)而不能存储整个数据库 容量可达数容量可达数G字节,当前得到了广泛的应用字节,当前得到了广泛的应用 其容量不断上升,而每一字节的购买成本

    3、却在稳定而快速其容量不断上升,而每一字节的购买成本却在稳定而快速的下降(大约每的下降(大约每2至至3年下降一倍)年下降一倍)易失的易失的 如果发生电源故障或者系统故障,主存如果发生电源故障或者系统故障,主存储器中的内容通常会丢失。储器中的内容通常会丢失。物理存储介质(续)物理存储介质(续)4闪存闪存 在电源故障时能够将数据保存下来在电源故障时能够将数据保存下来 数据可以被擦除和写入数据可以被擦除和写入 只能支持有限次的写入和擦除操作。只能支持有限次的写入和擦除操作。擦除数据时,必须擦除整个闪存中的数据擦除数据时,必须擦除整个闪存中的数据 读速度与主存储器一样快读速度与主存储器一样快 但写速度很

    4、慢(需要几个微秒)但写速度很慢(需要几个微秒),擦除速度则更慢擦除速度则更慢 单位存储成本与主存储器大致相当单位存储成本与主存储器大致相当 广泛应用于嵌入设备如数字相机中广泛应用于嵌入设备如数字相机中 也称为也称为EEPROM(Electrically Erasable Programmable Read-Only Memory)物理存储介质(续)物理存储介质(续)4磁盘磁盘 数据存储在旋转的盘片上,通过电磁方式读写数据存储在旋转的盘片上,通过电磁方式读写 是用于长期保存数据的主要介质;通常能够存储整个数据库是用于长期保存数据的主要介质;通常能够存储整个数据库 在存取数据时需要把数据从磁盘移动

    5、到主存储器,修改完毕在存取数据时需要把数据从磁盘移动到主存储器,修改完毕后还需要将数据写回磁盘后还需要将数据写回磁盘 与主存储器相比,磁盘的存取速度要慢的多与主存储器相比,磁盘的存取速度要慢的多 直接存取直接存取 与磁带不同,磁盘可以以任意顺序读取盘片上的与磁带不同,磁盘可以以任意顺序读取盘片上的数据数据 硬盘与软盘硬盘与软盘 现在,磁盘的容量可达现在,磁盘的容量可达100 GB 与主存储器和闪存相比,磁盘在容量上要大得多,而每字节代价与主存储器和闪存相比,磁盘在容量上要大得多,而每字节代价却小得多却小得多 随着技术的进步,磁盘的性能仍然在稳定和快速的提高随着技术的进步,磁盘的性能仍然在稳定和

    6、快速的提高(大约(大约每每2至至3年增长一倍)年增长一倍)在电源故障和系统故障时不会丢失数据在电源故障和系统故障时不会丢失数据 磁盘故障会毁坏数据,但这种情况很少发生磁盘故障会毁坏数据,但这种情况很少发生物理存储介质(续)物理存储介质(续)4光存储器光存储器 非易失的,使用激光器从旋转的盘片上读取数据非易失的,使用激光器从旋转的盘片上读取数据 最常见的形式是:最常见的形式是:CD-ROM(640 MB)和)和DVD(4.7到到17 GB)使用只能写一次,但能多次读的光盘来归档数据使用只能写一次,但能多次读的光盘来归档数据(CD-R和和DVD-R)也存在可以多次写的光盘也存在可以多次写的光盘(C

    7、D-RW,DVD-RW和和DVD-RAM)与磁盘相比,光盘的读写速度都更慢与磁盘相比,光盘的读写速度都更慢 光盘柜系统,使用大量可移动的盘片,少数驱动器光盘柜系统,使用大量可移动的盘片,少数驱动器和自动装载和卸载盘片的机构来存储大量的数据和自动装载和卸载盘片的机构来存储大量的数据物理存储介质(续)物理存储介质(续)4磁带存储器磁带存储器 非易失的,主要用来备份(以便对磁盘故障进行恢非易失的,主要用来备份(以便对磁盘故障进行恢复)和归档数据复)和归档数据 顺序存取顺序存取 比磁盘的速度要慢得多比磁盘的速度要慢得多 非常高的容量(非常高的容量(40到到300 GB)可以从磁带驱动器中移出磁带可以从

    8、磁带驱动器中移出磁带 磁带存储的代价磁带存储的代价远低于磁盘远低于磁盘 磁带库可以用来存储海量的数据磁带库可以用来存储海量的数据 从数百从数百TB(1TB=109 字节字节)到到PB(1PB=1012 字节字节)存储设备层次结构存储设备层次结构存储设备层次结构(续)存储设备层次结构(续)4基本存储:最快的存储介质但却是易失的(包基本存储:最快的存储介质但却是易失的(包括高速缓存、主存储器)括高速缓存、主存储器)4辅助存储器:下一层存储介质,非易失的,存辅助存储器:下一层存储介质,非易失的,存取速度较快,也称为联机存储设备取速度较快,也称为联机存储设备 例如:闪存,磁盘例如:闪存,磁盘4第三级存

    9、储:层次的最低一级,非易失的,存第三级存储:层次的最低一级,非易失的,存取速度较慢,也称为脱机存储设备取速度较慢,也称为脱机存储设备 例如:磁带,光盘例如:磁带,光盘硬盘工作原理图硬盘工作原理图磁盘磁盘4读写头读写头位置与盘片表面非常接近(几乎挨到)位置与盘片表面非常接近(几乎挨到)以电磁方式读或者写信息以电磁方式读或者写信息4盘片的表面划分为圆形的磁道盘片的表面划分为圆形的磁道在通常的硬盘上每个盘片上有超过在通常的硬盘上每个盘片上有超过16,000条磁道条磁道4每个磁道又划分为多个扇区每个磁道又划分为多个扇区扇区是读写的最小数据单位扇区是读写的最小数据单位扇区的大小通常为扇区的大小通常为51

    10、2个字节个字节每条磁道通常包含:每条磁道通常包含:200(在内侧磁道)(在内侧磁道)到到 400(在外侧磁道)个扇(在外侧磁道)个扇区区4要读写扇区要读写扇区磁盘臂要通过摆动将磁头定位到正确的磁道上磁盘臂要通过摆动将磁头定位到正确的磁道上随着盘片的不断旋转,当扇区从磁头下经过时,就可以对数据进行随着盘片的不断旋转,当扇区从磁头下经过时,就可以对数据进行读写读写4磁头和磁盘的组合方式磁头和磁盘的组合方式多个磁盘盘片安装在一个轴上(通常是多个磁盘盘片安装在一个轴上(通常是2到到4个磁盘)个磁盘)每个盘片一个磁头,安装在同一个磁盘臂上每个盘片一个磁头,安装在同一个磁盘臂上4柱面柱面 i由所有盘片的第

    11、由所有盘片的第 i 条磁道构成条磁道构成磁盘(续)磁盘(续)4早期的磁盘容易产生磁头故障早期的磁盘容易产生磁头故障 早期磁盘的表面覆盖着一层金属氧化涂层,这层涂层会在早期磁盘的表面覆盖着一层金属氧化涂层,这层涂层会在磁头故障中碎裂,并毁坏磁盘上的所有数据磁头故障中碎裂,并毁坏磁盘上的所有数据 现在的磁盘很少会发生这样灾难性的故障,尽管某些扇区现在的磁盘很少会发生这样灾难性的故障,尽管某些扇区还是可能损毁的还是可能损毁的4磁盘控制器磁盘控制器 计算机系统和磁盘驱动器硬件之间的接口计算机系统和磁盘驱动器硬件之间的接口 能够接受对扇区进行读写的高级命令能够接受对扇区进行读写的高级命令 能够进行一些操

    12、作,例如将磁盘臂移动到右侧磁道,并读能够进行一些操作,例如将磁盘臂移动到右侧磁道,并读写数据写数据 能够为每个扇区计算和附加校验和来验证读取的数据是否能够为每个扇区计算和附加校验和来验证读取的数据是否是正确的是正确的 如果数据损坏了,在大多数情况下,重新计算的校验和如果数据损坏了,在大多数情况下,重新计算的校验和与存储的校验和都是不匹配的与存储的校验和都是不匹配的 在写完数据后,重新读回数据以确保写操作是正确的在写完数据后,重新读回数据以确保写操作是正确的 对坏扇区进行映射对坏扇区进行映射磁盘子系统磁盘子系统4多个磁盘通过一个控制器连接到计算机系统多个磁盘通过一个控制器连接到计算机系统4控制器

    13、的功能(求校验和,进行坏扇区映射)通常是由各个磁盘控制器的功能(求校验和,进行坏扇区映射)通常是由各个磁盘来完成的,以便减少磁盘控制器的负担。来完成的,以便减少磁盘控制器的负担。4磁盘接口标准簇磁盘接口标准簇 ATA(AT adaptor)系列标准系列标准 SCSI(Small Computer System Interconnect)系列标准系列标准 上述各个标准的一些变化形式上述各个标准的一些变化形式(在速度和容量上有所不同在速度和容量上有所不同)磁盘的性能度量磁盘的性能度量4存取时间存取时间 从发出读写请求到数据开始传输之间的时从发出读写请求到数据开始传输之间的时间,由:间,由:寻道时间

    14、寻道时间 将磁盘臂重定位到正确的磁道上所花费的时间将磁盘臂重定位到正确的磁道上所花费的时间 平均寻道时间是最坏情况下寻道时间的平均寻道时间是最坏情况下寻道时间的1/2 在通常的磁盘上为在通常的磁盘上为4到到10 毫秒毫秒 旋转等待时间旋转等待时间 等待被存取的扇区出现在磁头下的时间等待被存取的扇区出现在磁头下的时间 平均旋转等待时间是最坏情况下旋转等待时间的平均旋转等待时间是最坏情况下旋转等待时间的1/2 在通常的磁盘上为在通常的磁盘上为4到到11 毫秒毫秒(每分钟每分钟5400到到15000转转)4数据传输率数据传输率 是从磁盘获取数据或者向磁盘存储数据是从磁盘获取数据或者向磁盘存储数据的速

    15、率的速率 通常为通常为 4到到8 MB每秒每秒 由于多个磁盘可能会共用同一个控制器,所以控制器的速率由于多个磁盘可能会共用同一个控制器,所以控制器的速率也是很重要的也是很重要的 例如:例如:ATA-5:66 MB/秒,秒,SCSI-3:40 MB/秒,光纤通道秒,光纤通道:256 MB/秒秒磁盘的性能度量(续)磁盘的性能度量(续)4平均故障时间平均故障时间(MTTF)磁盘在不出现磁盘在不出现故障的情况下可以持续运行的平均期望故障的情况下可以持续运行的平均期望时间时间4通常为通常为3到到5年年4新磁盘出现故障的可能性非常低,其理新磁盘出现故障的可能性非常低,其理论论MTTF为为30,000到到1

    16、,200,000小时小时磁盘块存取的优化磁盘块存取的优化4磁盘块磁盘块 一条磁道上连续的几个扇区构成的序列一条磁道上连续的几个扇区构成的序列 数据在磁盘和主存储器之间以块为单位进行传输数据在磁盘和主存储器之间以块为单位进行传输 块的大小从块的大小从512字节到几字节到几KB不等不等 磁盘块越小,需要传输的次数越多磁盘块越小,需要传输的次数越多 磁盘块越大,被浪费的空间越多,因为存在许多没有被填满的磁盘块越大,被浪费的空间越多,因为存在许多没有被填满的块块 现在,磁盘块的大小一般为现在,磁盘块的大小一般为4到到16KB4磁盘臂调度算法对等待中的磁道访问请求进行调度安磁盘臂调度算法对等待中的磁道访

    17、问请求进行调度安排,使磁盘臂移动的距离最小化排,使磁盘臂移动的距离最小化 电梯算法:向一个方向移动磁盘臂(从外侧磁道到内侧磁道电梯算法:向一个方向移动磁盘臂(从外侧磁道到内侧磁道或者相反),处理下一个与磁盘臂移动方向相同的请求,直或者相反),处理下一个与磁盘臂移动方向相同的请求,直到没有该方向的请求为止,然后向反方向移动,并重复上述到没有该方向的请求为止,然后向反方向移动,并重复上述步骤步骤磁盘块存取的优化(续)磁盘块存取的优化(续)4文件组织文件组织 根据对文件的存取方式来组织磁盘根据对文件的存取方式来组织磁盘块,从而优化磁盘块的存取时间块,从而优化磁盘块的存取时间 例如,将相关的信息存储在

    18、同一个或者邻近的柱面例如,将相关的信息存储在同一个或者邻近的柱面上上 随着时间的流逝,文件会变得碎片化随着时间的流逝,文件会变得碎片化 例如,对文件进行插入、删除数据的操作例如,对文件进行插入、删除数据的操作 或者磁盘上空闲的磁盘块是分散的,那么新创建的文件所或者磁盘上空闲的磁盘块是分散的,那么新创建的文件所包含的磁盘块就会分散在整个磁盘上包含的磁盘块就会分散在整个磁盘上 对碎片化的文件进行顺序存取会增加磁盘臂的移动对碎片化的文件进行顺序存取会增加磁盘臂的移动 一些系统具有能够减少文件系统碎片的应用程序,一些系统具有能够减少文件系统碎片的应用程序,以便加快文件的存取速度以便加快文件的存取速度磁

    19、盘块存取的优化(续)磁盘块存取的优化(续)4非易失写缓冲区非易失写缓冲区 通过将块立即写入非易失的通过将块立即写入非易失的RAM缓冲区来加速缓冲区来加速磁盘写操作磁盘写操作 非易失非易失RAM:具有后备电源的:具有后备电源的RAM或者闪存或者闪存 即使电源故障,当电源恢复时仍然可以安全地将数据写回到磁盘即使电源故障,当电源恢复时仍然可以安全地将数据写回到磁盘 当磁盘没有其他请求时或者请求已经等待了一段时间,控制器就会当磁盘没有其他请求时或者请求已经等待了一段时间,控制器就会将数据写入到磁盘将数据写入到磁盘 那些需要首先将数据安全地保存才可以继续执行的数据库操作,现那些需要首先将数据安全地保存才

    20、可以继续执行的数据库操作,现在就可以不必等待将数据写入磁盘了在就可以不必等待将数据写入磁盘了可以对写操作进行重新排序,以最小化磁盘臂的移动可以对写操作进行重新排序,以最小化磁盘臂的移动4磁盘日志磁盘日志 将对于块的修改按照顺序记录在一个专门的磁盘上将对于块的修改按照顺序记录在一个专门的磁盘上 可以像非易失可以像非易失RAM那样使用那样使用 因为不需要寻道,写日志磁盘的速度是非常快的因为不需要寻道,写日志磁盘的速度是非常快的 不需要特殊的硬件不需要特殊的硬件(NV-RAM)4文件系统通常通过对写操作进行重新排序来提高性能文件系统通常通过对写操作进行重新排序来提高性能 基于日志的文件系统:将数据以

    21、安全的顺序写入基于日志的文件系统:将数据以安全的顺序写入 NV-RAM或者日志或者日志磁盘磁盘 如果不采用日志的方式记录数据,就会冒文件系统数据损坏的风险如果不采用日志的方式记录数据,就会冒文件系统数据损坏的风险RAID4RAID:Redundant Arrays of Independent Disks(廉价(廉价磁盘冗余阵列)磁盘冗余阵列)一种对大量磁盘进行管理,并提供单个磁盘视图的磁盘组织一种对大量磁盘进行管理,并提供单个磁盘视图的磁盘组织技术技术 通过并行使用多个磁盘从而达到高速度和高容量通过并行使用多个磁盘从而达到高速度和高容量 通过数据的冗余存储,即使在磁盘故障的情况下也可以恢复数

    22、据通过数据的冗余存储,即使在磁盘故障的情况下也可以恢复数据4N个磁盘组成的集合中的一些磁盘出现故障的几率远个磁盘组成的集合中的一些磁盘出现故障的几率远高于特定的单个磁盘发生故障的几率高于特定的单个磁盘发生故障的几率 例如,对于一个拥有例如,对于一个拥有100个磁盘,每个磁盘的个磁盘,每个磁盘的MTTF为为100,000小时小时(约约11年)的系统,其系统年)的系统,其系统MTTF为为1000小时(约小时(约41天)天)对于拥有大量磁盘的系统来说,使用冗余的技术避免数据丢对于拥有大量磁盘的系统来说,使用冗余的技术避免数据丢失是非常重要的失是非常重要的4RAID最初是作为大而昂贵的磁盘的替代方法而

    23、提出的最初是作为大而昂贵的磁盘的替代方法而提出的 RAID 的的I最初代表最初代表“inexpensive 现在现在RAID被采用的原因是因为其更高的可靠性和带宽被采用的原因是因为其更高的可靠性和带宽 RAID 的的I 现在的含义是现在的含义是“independent”通过冗余提高可靠性通过冗余提高可靠性4冗余冗余 存储额外的信息以便在磁盘故障时重建信息存储额外的信息以便在磁盘故障时重建信息4例如,镜像技术例如,镜像技术(或影像技术或影像技术)复制每一个磁盘,逻辑磁盘由两个物理磁盘组成复制每一个磁盘,逻辑磁盘由两个物理磁盘组成 写数据时需要同时对两块磁盘进行写操作写数据时需要同时对两块磁盘进行

    24、写操作 读数据时只需要对其中一块磁盘进行读操作读数据时只需要对其中一块磁盘进行读操作 如果两个磁盘中的一个出现故障,另外一个磁盘上的数据仍如果两个磁盘中的一个出现故障,另外一个磁盘上的数据仍然可用然可用 只有当一个磁盘出现故障,而且在系统修复前其镜像磁盘也出只有当一个磁盘出现故障,而且在系统修复前其镜像磁盘也出现故障的情况下,才会出现数据丢失现故障的情况下,才会出现数据丢失 除了火灾、建筑倒塌或者电源故障等情况以外,发生上述情况的可除了火灾、建筑倒塌或者电源故障等情况以外,发生上述情况的可能性非常小能性非常小4平均的数据丢失时间取决于平均的故障时间和平均的平均的数据丢失时间取决于平均的故障时间

    25、和平均的修复时间修复时间 例如,如果一对镜像的磁盘(假定磁盘故障之间是相互独立例如,如果一对镜像的磁盘(假定磁盘故障之间是相互独立的)的的)的MTTF为为100,000小时,平均修复时间为小时,平均修复时间为10小时,则平小时,则平均数据丢失时间为均数据丢失时间为500*106小时(或者小时(或者57,000年)年)通过并行性提高性能通过并行性提高性能4磁盘系统中的并行有两个目的:磁盘系统中的并行有两个目的:对多个小的存取操作进行负载平衡以提高吞吐量对多个小的存取操作进行负载平衡以提高吞吐量 并行执行大的存取操作,以减少大的存取操作的响应时间并行执行大的存取操作,以减少大的存取操作的响应时间4

    26、可以通过拆分数据并将其分布到多个磁盘上以提高数据传输率可以通过拆分数据并将其分布到多个磁盘上以提高数据传输率4比特级拆分比特级拆分 将每个字节按比特拆开并分布到多个磁盘上将每个字节按比特拆开并分布到多个磁盘上 在八个磁盘构成的阵列中,将每个字节的第在八个磁盘构成的阵列中,将每个字节的第i个比特位写到第个比特位写到第i个磁盘个磁盘上上 每次存取所读取的数据量是单个磁盘的八倍每次存取所读取的数据量是单个磁盘的八倍4块级拆分块级拆分 对于对于 n个磁盘的阵列,文件的第个磁盘的阵列,文件的第i 块将存放到第块将存放到第(i mod n)+1块磁盘上块磁盘上 如果所请求的数据块保存在不同的磁盘上,就可以

    27、并行地存取这些如果所请求的数据块保存在不同的磁盘上,就可以并行地存取这些块块 当对很长的、顺序排列的块进行存取时可以并行的存取所有的磁盘当对很长的、顺序排列的块进行存取时可以并行的存取所有的磁盘RAID的级别的级别4通过使用磁盘拆分与奇偶校验位相结合的方法,以低成本提供数据冗余的模式 不同的RAID级别,具有不同的成本、性能和可靠性特征4RAID 0级:使用块级拆分;没有冗余级:使用块级拆分;没有冗余 为一些不关心数据丢失风险的高性能应用程序所使用4RAID 1级:使用块级拆分的镜像磁盘级:使用块级拆分的镜像磁盘 提供最佳的写性能 通常为类似于存储数据库系统中日志文件的应用程序所使用RAID的

    28、级别(续)的级别(续)4RAID 2级:内存风格的纠错码与比特拆分技术级:内存风格的纠错码与比特拆分技术4RAID 3级:位交叉的奇偶校验级:位交叉的奇偶校验4单个奇偶校验位足以进行纠错,而不仅仅是检测错误,因为我们知道哪个比特发生故障了4在写数据时,必须计算相应的奇偶校验位,并将奇偶校验位写入磁盘4要恢复毁坏磁盘上的数据,需要对其他磁盘(包括存储奇偶校验位的磁盘)上的比特进行XOR运算RAID的级别(续)的级别(续)4RAID 3级(续)级(续)4比单个磁盘更快的数据传输率,但由于每个磁盘都必须参加每一比单个磁盘更快的数据传输率,但由于每个磁盘都必须参加每一次次I/O,所以每秒的,所以每秒的

    29、I/O次数相对较少次数相对较少4包容了包容了RAID 2级(具有级(具有2级所有的优点,但成本更低)级所有的优点,但成本更低)4RAID 4级:块交叉奇偶校验;使用块级拆分,并将一个独立的磁级:块交叉奇偶校验;使用块级拆分,并将一个独立的磁盘上为其他盘上为其他N块磁盘上对应的块保留一个奇偶校验块块磁盘上对应的块保留一个奇偶校验块4在写数据块的时候,必须计算相应块的奇偶校验位,并写入奇偶在写数据块的时候,必须计算相应块的奇偶校验位,并写入奇偶校验磁盘校验磁盘4要找出毁坏的块的值,可以对其他盘(包括奇偶校验磁盘)上相要找出毁坏的块的值,可以对其他盘(包括奇偶校验磁盘)上相应的块的位进行应的块的位进

    30、行XOR运算运算RAID的级别(续)的级别(续)4RAID 4级(续)相对于3级,读取独立的块时具有较高的I/O速率 读块时只需读取单个磁盘,所以存储在不同块上的块可以被并行读取 在读取多个块时,比不使用拆分技术的情况具有更高的传输率 在写一个块之前,必须计算奇偶校验数据 需要读取旧的奇偶校验块,当前块的旧值,当前块的新值来进行计算(两次块读取+两次块写入)奇偶校验块成为独立块写操作的瓶颈,因为每次写磁盘块时,都要写入奇偶校验磁盘RAID的级别(续)的级别(续)4RAID 5级:块交叉的分布奇偶校验;将数据和奇偶校级:块交叉的分布奇偶校验;将数据和奇偶校验位都分布在所有验位都分布在所有N+1个

    31、磁盘上,而不是将数据存储个磁盘上,而不是将数据存储在在N个磁盘上,奇偶校验位存储在另外一个磁盘上。个磁盘上,奇偶校验位存储在另外一个磁盘上。例如,具有5个磁盘的阵列,第n组磁盘块的奇偶校验块存储在第(n mod 5)+1个磁盘上,而数据块存储在其他四个磁盘上。RAID的级别(续)的级别(续)4RAID 5级(续)级(续)比4级的I/O速率高 如果块和他们的奇偶校验块存放在不同的磁盘上,就可以进行并行写操作。包容了4级:与之具有相同的优点,但却避免了奇偶校验磁盘造成的瓶颈4RAID 6级:级:P+Q冗余模式;与5级类似,但存储了额外的冗余信息以防止多个磁盘出现故障。以更高的成本换取了比5级更好的

    32、可靠性;使用并不广泛。RAID级别的选择级别的选择4选择选择RAID既别的因素既别的因素 费用费用 性能:每秒钟的性能:每秒钟的I/O操作数,以及在正常操作情况下的带宽操作数,以及在正常操作情况下的带宽 故障期间的性能故障期间的性能 在重建故障磁盘期间的性能在重建故障磁盘期间的性能包括重建故障磁盘需要花费的时间包括重建故障磁盘需要花费的时间4只有当数据安全性并不重要的情况下,才使用用只有当数据安全性并不重要的情况下,才使用用RAID 0 例如,可以从其它数据源快速恢复数据的情况下例如,可以从其它数据源快速恢复数据的情况下42级和级和4级从没有被使用过,因为它们已经为级从没有被使用过,因为它们已

    33、经为3级和级和5级所包容级所包容43级也不再使用了,因为比特级拆分在读单个块时也需要存取所级也不再使用了,因为比特级拆分在读单个块时也需要存取所有磁盘,浪费了磁盘臂移动的时间,而块级拆分(有磁盘,浪费了磁盘臂移动的时间,而块级拆分(5级)可以避级)可以避免这种情况。免这种情况。46级很少被使用,因为对几乎所有应用程序来说,级很少被使用,因为对几乎所有应用程序来说,1级和级和5级已经级已经能够提供充分的安全性了。能够提供充分的安全性了。4所以,只需要在所以,只需要在1级和级和5级之间进行选择即可级之间进行选择即可RAID级别的选择(续)级别的选择(续)41级比5级具有更好的写性能 5级在写单个块

    34、的时候,至少需要读取两个块和写入两个块。而1级只需要写入两个块。1级更适合用在更新频率高的环境中,如日志磁盘41级比5级具有更高的存储成本 在磁盘驱动器容量正在快速增大(50%/year)的同时,磁盘存取时间却减少的很慢(每10年增快3倍),I/O的需求已经有了巨大的增长,例如,对于 Web服务器 当购买了足够多的磁盘满足所需的I/O 率的时候,它们通常都拥有空余的磁盘空间,因而通常并不需要额外花费金钱来实现1级45级适合用于具有很大的数据量,但只具有较低更新率的场合41级则适用于所有其他情况硬件问题硬件问题4软件软件RAID:RAID的实现完全通过软件来实现,不需要特殊的硬件支持4硬件硬件R

    35、AID:需要使用特殊的硬件来实现RAID 使用非易失的来记录正在被执行的写操作 注意:在写操作期间的电源故障可能会导致磁盘上的数据损坏 例如,在一个镜像系统中,如果在写完第一个块之后,和第二个块之前发生电源故障 当电源恢复时,必须对类似这样损坏的数据检查 恢复损坏数据的过程类似于恢复故障磁盘的过程 NV-RAM有助于有效地检测潜在的损坏的块 否则,就必须读取磁盘上所有的块,并与镜像或者奇偶校验块进行比较硬件问题(续)硬件问题(续)4热对换:在系统正在运行的情况下替换磁盘,热对换:在系统正在运行的情况下替换磁盘,而无需关闭电源而无需关闭电源 为一些硬件RAID系统所支持 减少恢复时间,并极大地提

    36、高可用性4许多系统保有一些在线的空闲磁盘,在检测到故障时,将立即用这些磁盘来替换故障磁盘 极大地减少了恢复时间4许多硬件RAID系统通过使用以下技术来保证在单点失效的情况下系统不停止工作 具有后备电池组的冗余电源供应 具有多个控制器和互连通路以防止控制器和交互连接出现故障光盘光盘4只读光盘存储器:Compact disk-read only memory(CD-ROM)可以向驱动器装入或者移出盘片 很高的存储容量(每张盘片640 MB)很高的寻道时间,大约100毫秒 与磁盘相比,光盘具有较高的延迟(3000 RPM))和较低的数据传输率(3-6 MB/s)4数字视频光盘:Digital Vid

    37、eo Disk(DVD)DVD-5的容量为4.7 GB,而DVD-9的容量为8.5 GB DVD-10和DVD-18是双面的,容量分别为9.4 GB和17 GB 其他特征类似于CD-ROM4CD-R和DVD-R只能写一次,现在日益流行 数据只能写一次,不能被擦除 高容量和长的生命周期;用于进行归档存储 现在还出现了可以多次写的CD-RW,DVD-RW和DVD-RAM磁带磁带4可以保存大量的数据和提供高的数据传输率 DAT(Digital Audio Tape)格式的容量为数个 GB,DLT(Digital Linear Tape)各式的容量为10-40 GB,Ultrium格式的容量为100

    38、GB以上 传输率从几MB到几十MB每秒4是当前最廉价的存储介质 磁带的价格很低,但驱动器的价格非常高4与磁盘和光盘相比,磁带的存取时间非常慢 因为磁带是顺序存取 主要用于备份,保存不常用到的信息,和从一个系统向另外一个系统导数据时的脱机介质4磁盘库可以用来提供非常巨大的容量 从TB(1012字节)到PB(1015字节)存储访问存储访问4数据库文件可以被分成多个固定长度的存储单元,称为块。块是存储分配和数据传输的基本单位4数据库系统的一个目标就是使在磁盘和内存之间传输的块数量最小化。我们可以通过将尽可能多的块保存在内存中来减少磁盘访问的次数4缓冲区缓冲区 主存储器的一部分,用于存储磁盘块的拷贝4

    39、缓冲区管理器缓冲区管理器 负责在主存储器中分配缓冲区空间的子系统缓冲区管理器缓冲区管理器4当程序需要从磁盘上读取块时,就调用缓冲区管理器如果需要的块已经在缓冲区中,就会向发出请求的程序返回块在主存储器中的地址如果块不在缓冲区中缓冲区管理器在缓冲区中为该块分配空间,如果需要的话,替换(或者移出)其它一些块,以便为新块腾出空间如果被移出的块被修改过,将会把它写回到磁盘1.一旦在缓冲区中分配好了空间,缓冲区管理器就会将块从磁盘上读到缓冲区中,并将该块在主存储器中的地址传递给发出请求的程序缓冲区替换策略缓冲区替换策略4大多数操作系统采用最近最少使用法来进行块替换(least recently used

    40、,LRU)4隐藏在LRU后面的思想 使用过去的块引用模式来推测未来的引用4查询具有定义良好的存取模式(例如顺序扫描),并且数据库系统使用用户查询的信息来预测未来的引用4对于某些存取模式(包括对数据的反复扫描),LRU可能是一种坏的策略 例如,当对两个关系r和s通过嵌套循环来进行连接操作时,for each tuple tr of r do for each tuple ts of s do if the tuples tr and ts match 缓冲区替换策略(续)缓冲区替换策略(续)4钉住的块钉住的块 不允许些回到磁盘的内存块4立即丢弃策略 只要处理完块中的最后一个元组就立即释放块所占用

    41、的空间4最近最常使用策略(Most recently used,MRU)系统必须钉住当前被处理的块。当处理完块中最后一个元组后,不再钉住该块,该块成为最近最常使用的块.缓冲区管理器可以使用有关请求将会引用某个特别关系的可能性的统计信息 例如,数据字典是被频繁存取的。启发式规则:应当将数据字典块保存在主存储器缓冲区中 缓冲区管理器也强迫输出块以便进行恢复文件组织文件组织4数据库是存储在一个文件集合之中的,每个文件是记录的序列。记录时字段的序列4一种途径:假定记录的大小是固定的 每个文件只保护一种特定类型的记录 用不同的文件来存储不同的关系 这是最容易实现的途径;后面我们将讨论可变长纪录定长记录定

    42、长记录4简单的方法:将记录i保存在距离文件开头n (i 1)字节的地方,其中,n是每个记录的大小 记录存取是简单的,但记录可能会跨块 修正:不允许记录跨块的边界4删除记录I:将第i+1,.,n条记 录移动到第i,.,n 1 条记录 将记录n移动到 i 不移动记录,而是将所有 空闲的记录链接到一个 空闲列表空闲列表空闲列表4将第一条被删除的记录的地址存储在文件头4使用上述第一条被删除的记录来存储第二条被删除的记录,依此类推4可以把这些存储的地址看作指针,因为它们指向了记录的位置4更具有空间效率的的表示方法:重用空闲记录的属性空间来存储指针(在正在使用的记录中不会存储指针)可变长记录可变长记录4可

    43、变长记录出现在数据库系统的下列情况下:在一个文件中存储多种类型的记录 记录类型允许一个或者多个字段是变长的 记录类型允许可重复的字段(用于一些较老的数据模型)4字节流表示 在每条记录的结尾处附加一个特殊的记录终止控制符号()删除困难 记录长度增长困难可变长记录:分槽的页结构可变长记录:分槽的页结构4分槽的页头包含 记录条目的数量 块中空闲空间的末尾地址 每条记录的位置和大小4可以在页中移动记录以保证它们是连续的,它们之间没有空闲空间,移动记录时也要对页头进行相应修改4指针不能直接指向记录,相反,应当指向该记录在页头的条目可变长记录(续)可变长记录(续)4定长的表示方法:保留空间 指针4保留空间

    44、可以将记录的最大长度设置为记录的固定长度;在较短的记录中会出现未被使用的空间,需要使用空值或者记录终结符号来填充指针方法指针方法4指针方法4使用一系列固定长度的记录来表示可变长记录,这些记录通过指针链接起来4即使不知道记录的最大长度也可以使用指针方法(续)指针方法(续)4指针结构的缺点是除了链中的第一条记录以外,所有记录都浪费了空间4可以在文件中使用两种类型的块来解决这一问题:锚块 包含链中的第一条记录 溢出块 保存除了链中第一条记录以外的其它记录文件中记录的组织文件中记录的组织4堆堆 可以将记录放置在文件中任意有空闲空间的地方4顺序 以每条记录的搜索码的值的顺序来进行存储4散列 对于每条记录

    45、的某些属性使用一个散列函数来进行计算,其结果指定了该记录应当被放置在文件中的哪一个块中4每个关系的记录可以存储在单独的文件中。而在聚集聚集文件组织中,同一个文件中可以保存几个不同关系的文件组织中,同一个文件中可以保存几个不同关系的记录记录 动机:将相关的记录存储在同一个块上以最小化I/O顺序文件组织顺序文件组织4适合于那些需要顺序处理整个文件的应用情况4文件中的记录是按照搜索键来排序的顺序文件组织(续)顺序文件组织(续)4删除 使用指针链4插入 定位在记录需要被插入的地方 如果那里有空闲空间,就在那里插入 如果那里没有空闲空间,将记录插入到溢出块中去 在上述每一种情况下,都需要对指针链进行更新4需要周期性地对文件进行重新组织以便保持记录的顺序聚集文件组织聚集文件组织4文件结构简单,将每个关系存储在各自的文件中4在聚集文件组织中可以将多个关系存储在一个文件中!4例如,聚集组织customer和depositor关系:对于涉及depositor和customer的查询,以及涉及单个客户和他的帐户的查询是有益的 对于只涉及客户的查询是有害处的 导致大小可变的记录

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:数据库的讲义存储与文件结构 课件.ppt
    链接地址:https://www.163wenku.com/p-3492264.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库