第9章-文件高级程序设计.ppt
- 文档编号:2121993
- 上传时间:2022-10-27
- 格式:PPT
- 页数:28
- 大小:222.50KB
第9章-文件高级程序设计.ppt
《第9章-文件高级程序设计.ppt》由会员分享,可在线阅读,更多相关《第9章-文件高级程序设计.ppt(28页珍藏版)》请在冰豆网上搜索。
本章主要内容本章主要内容:
11、文件概述、文件概述22、顺序文件、顺序文件33、索引文件、索引文件44、ISAMISAM文件文件55、散列文件、散列文件本章重点:
本章重点:
文件的组织形式与检索方法。
文件的组织形式与检索方法。
本章难点:
本章难点:
ISAMISAM文件的组织与检索。
文件的组织与检索。
1在在现现代代计计算算机机的的应应用用领领域域中中,数数据据处处理理是是一一个个重重要要方方面面。
数数据据处处理理是是对对各各种种类类型型的的大大批批量量的的数数据据进进行行收收集集、存存储储、排排序序、检检索索、计计算算、修修改改、输输出出等等分分析析和和加加工工处处理理的的过过程程。
例例如如,用用计计算算机机进进行行企企业业管管理理、财财务务工工资资管管理理、仓仓库库物物资资管管理理、情情报报检检索索、统统计计报报表表等等都都涉涉及及到到数数据据存存放放到到外外存存储储器器上上。
有有时时,为为了了长长期期保保存存原原始始数数据据和和加加工工处处理理过过的的数数据据,也也需需要要将将这这些些数数据据以以文文件件的的形形式式存存放放在在外外存存上上。
学学完完本本章章读读者者应应能能掌掌握握文文件件的的概概念念、逻辑特性、物理结构和基本操作。
逻辑特性、物理结构和基本操作。
9.1文件概述文件概述21、文件概念、文件概念1、常用外存:
、常用外存:
磁带:
由磁带介质、读、写磁头、驱动器、接收盘和原始盘组成。
磁带:
由磁带介质、读、写磁头、驱动器、接收盘和原始盘组成。
便宜、可反复使用、是一种顺序存取设备。
查找费时、速度慢(尤其是查找末便宜、可反复使用、是一种顺序存取设备。
查找费时、速度慢(尤其是查找末端记录时)。
端记录时)。
.读读出出头头写写入入头头原原始始盘盘接接收收盘盘IBG(InterBlockGap)块间块间间隙间隙块块1块块3块块2带文件的读写带文件的读写时间:
时间:
Ti/o=ta+ntwta:
延迟时间:
延迟时间tw:
传输时间:
传输时间/字符字符n字符字符数。
数。
3磁盘:
由存取装置、读、写磁头、活动臂、盘片(磁道、扇区)、旋转主轴构成。
磁盘:
由存取装置、读、写磁头、活动臂、盘片(磁道、扇区)、旋转主轴构成。
速速度快、容量大、直接存取设备。
度快、容量大、直接存取设备。
种类:
种类:
固定头磁盘、活动头磁盘固定头磁盘、活动头磁盘固定头磁盘固定头磁盘:
每个磁道都有一个磁头(速度快):
每个磁道都有一个磁头(速度快)活动头磁盘活动头磁盘:
每个盘面共用一个磁头,:
每个盘面共用一个磁头,增加了找道的时间,应用广泛。
增加了找道的时间,应用广泛。
柱面柱面:
各盘面的直径相同的磁道的总和。
:
各盘面的直径相同的磁道的总和。
物理位置物理位置:
盘组号、:
盘组号、柱面号、柱面号、磁道号、磁道号、块(扇区号)块(扇区号)盘文件的读写时间盘文件的读写时间:
Ti/o=tseck+tla+ntwmtseck:
找道时间:
找道时间tla:
等待时间:
等待时间twm:
传输时间:
传输时间/字符,字符,n字符数。
字符数。
4数据域(数据场)数据域(数据场):
记录中的每个数据项,称之为域或场(:
记录中的每个数据项,称之为域或场(Field)关键字关键字:
唯一标识记录的域,称之为关键字。
辅助关键字,称之为次关键字。
:
唯一标识记录的域,称之为关键字。
辅助关键字,称之为次关键字。
记录(记录(Record):
若干相关的若干相关的数据项的集合。
如果存之于外存,叫做记录。
数据项的集合。
如果存之于外存,叫做记录。
文件文件:
记录的集合。
:
记录的集合。
记录的物理结构和逻辑结构记录的物理结构和逻辑结构:
逻辑结构:
记录在用户或程序员面前呈现的形式。
逻辑结构:
记录在用户或程序员面前呈现的形式。
物理结构:
记录在在物理存储器上的存储方式,是数据的物理表示和组织。
物理结构:
记录在在物理存储器上的存储方式,是数据的物理表示和组织。
物理记录和逻辑记录物理记录和逻辑记录:
物理记录物理记录:
计算机用一条:
计算机用一条I/O指令进行读写外存的基本单位。
通常,对一定指令进行读写外存的基本单位。
通常,对一定的设备和操作系统,大小是固定不变的。
的设备和操作系统,大小是固定不变的。
逻辑记录逻辑记录:
程序员加以定义,用户要求使用的。
:
程序员加以定义,用户要求使用的。
22、基本术语:
、基本术语:
5记录记录B记录记录C记录记录D记录记录A记录记录A记录记录B记录记录C记录记录D6检索:
检索:
顺序存取顺序存取:
存取下一个逻辑记录:
存取下一个逻辑记录直接存取直接存取:
存取第:
存取第i个逻辑记录个逻辑记录按关键字值存取相应的记录按关键字值存取相应的记录:
简单询问:
查单个记录简单询问:
查单个记录区域询问:
查多个记录区域询问:
查多个记录函数询问:
满足某种条件的记录函数询问:
满足某种条件的记录布尔询问:
满足布尔运算组合的询问布尔询问:
满足布尔运算组合的询问修改修改:
插入、修改、更新:
插入、修改、更新更新方式更新方式:
实时、批量两种方式:
实时、批量两种方式3、检索和修改、检索和修改79.2顺序文件顺序文件顺顺序序文文件件是是物物理理结结构构最最简简单单的的文文件件,也也是是数数据据处处理理历历史史上上最最早早使使用用的的文文件件结结构构。
顺顺序序文文件件的的各各个个记记录录按按输输入入的的先先后后次次序序存存放放在在外外存存中中的的连连续续存存储储区区。
为为了了便便于于检检索索和和修修改改文文件件,文文件件中中的的记记录录通通常常按按关关键键字字的的大大小小次次序序排排列列,成成为为按按关关键键字字排排序序的顺序文件。
的顺序文件。
顺顺序序文文件件的的基基本本优优点点是是在在连连续续存存取取时时速速度度较较快快。
例例如如,如如果果文文件件中中的的第第ii个个记记录录刚刚被被存存取取过过,而而下下一一个个要要存存取取的的记记录录就就是是第第i+1i+1个个记记录录,则则此此次次存存取取将将会会很很快快完完成成。
磁磁带带是是比比较较适适用用于于这这种种应应用用的的外外存存设设备备。
存存放放于于磁磁带带上上的的文文件件也也只只能能是是顺顺序序文文件件,这这是是由由磁磁带带的的物物理理特特性性决决定定的的。
存存放放于于磁磁盘盘上上的的文文件件,既既可可以以是顺序文件,也可以是索引结构或其它结构类型的文件。
是顺序文件,也可以是索引结构或其它结构类型的文件。
8当当需需要要对对磁磁带带顺顺序序文文件件进进行行检检索索时时,一一般般是是采采用用顺顺序序扫扫描描的的方方式式来来检检索索满满足足查查询询条条件件的的记记录录。
例例如如,若若要要检检索索第第ii个个记记录录,则则必必须须先先检检索索前前面面的的i-1i-1个个记记录录。
为为了了提提高高平平均均检检索索效效率率,可可采采用用批批量量处处理理技技术术。
如如果果将将对对文文件件的的多多个个检检索索请请求求加加以以积积累累和和排排序序,则则形形成成一一个个称称为为待待办办文文件件(或或事事务务文文件件)的的文文件件。
如如果果将将被被查查询询的的文文件件称称为为主主文文件件,则则批批量量检检索索就就是是按按照照待待办办文文件件的的要要求求成成批批地地检检索索主主文文件件。
批批量量检检索索对对于于实实时时应应用用来来说说是是不不适适宜宜的的,因因为为实实时时查查询询要要求求响响应应时时间间快快,而而在在很很短短的的时时间间间间隔隔内内,积积累累的的批批处处理理文文件件规规模模太太小小,不不能能表表现现出出它它的的优优越性。
越性。
9在在磁磁带带顺顺序序文文件件中中插插入入记记录录,只只能能加加在在文文件件的的末末尾尾,不不能能插插在在两两个个原原有有记记录录之之间间。
修修改改记记录录,即即使使在在新新旧旧记记录录等等长长的的情情况况下下,将将新新记记录录写写在在旧旧记记录录的的位位置置上上,一一般般不不但但不不可可能能完完全全重重合合,甚甚至至还还会会破破坏坏邻邻近近记记录录的的信信息息。
因因此此,修修改改一一个个磁磁带带文文件件,需需要要用用另另一一条条磁磁带带将将原原文文件件复复制制过过来来,在在复复制制过过程程中中进进行行插插入入、删删除除、修修改改记记录录的的操操作作。
为为了了提提高高效效率率,修修改改一一个个顺顺序序文文件件,也也采采用用成成批批处处理理技技术术。
这这种种批批量量修修改改方方式式很很适适用用于于银银行行帐帐户户结结算算管管理理系系统统。
例例如如,可可把把一一天天的的零零星星支支取取和和存存入入分分别别作作为为记记录录收收集集在在一一起起,构构成成为为一一个个待待办办文文件件,在在当当天天下下班班时时再再按按照照待待办办文文件件进进行行批批量量修修改改主主文文件件(头头天天下下班班修修改改过过的的主主文文件件)的的工工作作,便得到一个新主文件。
便得到一个新主文件。
109.3索引文件索引文件顺顺序序文文件件的的查查询询速速度度很很慢慢。
采采用用索索引引文文件件可可以以提提高高检检索索效效率。
实际上,在前面的章节中我们已经运用了索引技术。
率。
实际上,在前面的章节中我们已经运用了索引技术。
索索引引用用来来表表示示关关键键字字与与相相应应记记录录的的存存储储地地址址之之间间的的对对应应关关系系。
换换言言之之,索索引引指指出出了了记记录录在在存存储储器器中中的的存存储储地地址址。
设设记记录录RRii的的关关键键字字为为KKii,RRii在在外外存存中中的的存存储储地地址址为为AAii,则则(KKii,AAii)称称为为记记录录RRii的的索索引引项项。
索索引引表表(简简称称索索引引)是是索索引引项项的的集集合。
合。
11如如果果文文件件中中的的每每个个记记录录都都有有一一个个索索引引项项,则则这这样样的的索索引引称称为为稠稠密密索索引引。
如如果果多多个个记记录录只只有有一一个个索索引引项项,则则这这样样的的索索引引称称为为非非稠稠密密索索引引。
带带有有索索引引的的文文件件称称为为索索引引文文件件。
索索引引也也称称为为目目录。
录。
索索引引文文件件在在外外存存(磁磁盘盘、磁磁鼓鼓等等)中中可可分分为为两两个个存存储储区区:
索索引引区区和和记记录录区区(数数据据区区)。
索索引引表表中中的的索索引引项项顺顺序序存存放放在在索索引引区区中中,但但为为了了便便于于检检索索,索索引引项项一一般般按按关关键键字字的的大大小小次次序序排排列列。
文文件件中中的的记记录录按按输输入入的的先先后后次次序序存存放放到到记记录录区区;记记录录区区按按关键字大小次序排列的索引文件称为索引顺序文件。
关键字大小次序排列的索引文件称为索引顺序文件。
12对对于于索索引引顺顺序序文文件件,可可以以不不必必使使用用稠稠密密索索引引,只只为为一一个个记记录录块块(含含多多个个有有序序记记录录)建建立立一一个个索索引引项项。
记记录录区区不不按按关关键键字字大大小小次次序序排排列列的的索索引引文文件件称称为为索索引引非非顺顺序序文文件件,这这时时应应使使用用稠稠密密索索引引。
通通常常,索索引引项项所所含含的的数数据据信信息息比比记记录录少少得得多多,因因而而索索引引所所需需的的存存储储空空间间比比文文件件本本身身(记记录录区区)所所需需要要的的存存储储空空间间少少得得多多。
在在文文件件的的记记录录数数较较少少的的情情况况下下,可可以以为为每每个个记记录录建建立立一一个个索索引引项项。
文文件件建建立立时时,开开辟辟一一个个索索引引区区,一一般般固固定定在在某某个个磁磁盘盘面面的的一一个个或或多多个个磁磁道道上上。
写写入入一一个个记记录录到到记记录录区区时时,在在索索引引区区相相应应登登入入一一个个索索引引项项,即即把把该该记记录录的的关关键键字字(主主关关键键字字)和和记记录录的的存存储储地地址址顺顺序序写写入入索索引引区区。
文文件件建建立立后后,将将索索引引区区中中的的索索引引读读入入内内存存的的缓缓冲冲区区,按按关关键键字字进进行行内内部部排排序序。
最最后后将将排排序序好的索引项顺序写回到磁盘上的索引区。
好的索引项顺序写回到磁盘上的索
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 文件 高级 程序设计
![提示](https://static.bdocx.com/images/bang_tan.gif)