文章目录

  • 前言
  • 知识总览
  • 无结构文件
  • 有结构文件
  • 有结构文件的逻辑结构
    • 1、顺序文件
    • 2、索引文件
    • 3、索引顺序文件
      • 检索效率分析
      • 多级索引顺序文件
  • 知识点回顾与重要考点

前言

此篇文章是我在B站学习时所做的笔记,部分为亲自动手演示过的,方便复习用。此篇文章仅供学习参考。


提示:以下是本篇文章正文内容,下面案例可供参考

知识总览


无结构文件

  • 无结构文件:文件内部的数据就是一系列二进制流或字符流组成。又称“流式文件”。如:Windows操作系统中的.txt文件。
    文件内部的数据其实就是一系列字符流,没有明显的结构特性,因此也不用探讨无结构文件的“逻辑结构”问题。

有结构文件

  • 有结构文件:由一组相似的记录组成,又称“记录式文件”。每条记录又若干个数据项组成。如:数据库表文件。一般来说,每条记录有一个数据项可作为关键字(作为识别不同记录的ID)

    根据各条记录的长度(占用的存储空间)是否相等,又可分为定长记录和可变长记录两种。

有结构文件的逻辑结构

1、顺序文件

顺序文件:文件中的记录一个接一个地顺序排列(逻辑上),记录可以是定长的或可变长的。各个记录在物理上可以顺序存储或链式存储。

:一般来说,考试题目中所说的“顺序文件”指的是物理上顺序存储的顺序文件。
结论:定长记录的顺序文件,若物理上采用顺序存储,则可实现随机存取;若能再保证记录的顺序结构,则可实现快速检索

2、索引文件

对于可变长记录文件,要找到第i个记录,必须先顺序第查找前i-1个记录,但是很多应用场景中又必须使用可变长记录。如何解决这个问题?

索引表的各个表项是需要连续存放的,每个索引表的表项都是大小相等的,比如说,索引号、长度、指针这3个字段分别占4个字节,则表项需要占12个字节的长度,因此索引表本身也可以理解成是定长记录的顺序文件。定长记录的顺序文件是可以支持随机访问的,所以可以快速找到第i个记录对应的索引表项存放在什么地方。

3、索引顺序文件

索引顺序文件的索引表其实是一个定长记录的串结构的顺序文件

思考索引文件的缺点:每个记录对应一个索引表项,因此索引表可能会很大。比如:文件的每个记录平均只占8B,而每个索引表项占32个字节,那么索引表都要比文件内容本身大4倍,这样对存储空间的利用率就太低了。

检索效率分析

  • 若一个顺序文件有10000个记录,则根据关键字检索文件,只能从头开始顺序查找(这里指的并不是定长记录、顺序结构的顺序文件),平均须查找5000个记录。
  • 若采用索引顺序文件结构,可把10000个记录分为√10000= 100组,每组100个记录。则需要先顺序查找索引表找到分组(共100个分组,因此索引表长度为100,平均需要查50次),找到分组后,再在分组中顺序查找记录(每个分组100个记录,因此平均需要查50次)。可见,采用索引顺序文件结构后,平均查找次数减少为50+50= 100次。
  • 同理,若文件共有106个记录,则可分为1000个分组,每个分组1000个记录。根据关键字检索一个记录平均需要查找500+500 = 1000次。这个查找次数依然很多,如何解决呢?

多级索引顺序文件

为了进一步提高检索效率,可以为顺序文件建立多级索引表。例如,对于一个含106个记录的文件,可先为该文件建立一张低级索引表,每100个记录为一组,故低级索引表中共有10000个表项(即10000个定长记录),再把这10000个定长记录分组,每组100个,为其建立顶级索引表,故顶级索引表中共有100个表项。

知识点回顾与重要考点

文件的逻辑结构(1、顺序文件 2、索引文件 3、索引顺序文件)相关推荐

  1. 【操作系统学习笔记 ⑮ 完结篇】——文件管理 [ 文件系统 + 索引文件的详细样例 ]

    ✅ 操作系统完结篇 文章目录 一.导语 二.文件系统的基础知识点 2.2 文件.记录和数据项 2.3 文件类型 2.4 文件系统模型 三.文件的逻辑结构与存取方法 3.1 文件的逻辑结构 3.2 文件 ...

  2. 4.1.2 OS之文件逻辑结构(顺序文件、索引文件、索引顺序文件、多级索引顺序文件)关于数据库的索引如聚簇索引可以看一下索引文件例题的解析,感觉还是可以收获到东西的

    文章目录 0.思维导图 1.无结构文件 2.有结构文件 有结构文件的逻辑结构 顺序文件 索引文件 索引顺序文件 多级索引顺序文件 0.思维导图 1.无结构文件 2.有结构文件 定长记录: 不定长记录: ...

  3. 操作系统之文件管理:2、文件的逻辑结构(有结构文件、无结构文件、顺序文件、索引文件、索引顺序文件)

    2.文件的逻辑结构 思维导图 逻辑结构VS物理结构 文件的逻辑结果分类 1.无结构文件 2.有结构文件 按照记录的长度来分: 按照逻辑结构来分: 1.顺序文件 问题:能否实现随机存取? 2.索引文件 ...

  4. 4.1.2 文件的逻辑结构

    目录 思维导图 无结构文件 有结构文件 有结构文件的逻辑结构 顺序文件 索引文件 索引顺序文件 思维导图 无结构文件 有结构文件 有结构文件的逻辑结构 顺序文件 索引文件 索引顺序文件

  5. 操作系统——文件的逻辑结构

    文章目录 1.文件的逻辑结构的概念 1.1 按照逻辑结构的文件分类 1.2 无结构文件和有结构文件的区别 2 顺序文件 3 索引文件 4.索引顺序表 1.文件的逻辑结构的概念 1.1 按照逻辑结构的文 ...

  6. 操作系统之文件管理:5、文件物理结构(连续分配、链式(显式、隐式)分配、索引分配(链接、多层索引、混合索引))

    3.文件物理结构 思维导图 文件块.磁盘块 文件分配方式 1.连续分配 2.链接分配 隐式链接 显式链接 3.索引分配 如果一个文件的大小超过一个磁盘块怎么办? 1.链接方案 2.多层索引 3.混合索 ...

  7. (王道408考研操作系统)第四章文件管理-第一节2:文件的逻辑结构

    文章目录 一:无结构文件 二:有结构文件 (1)顺序文件 (2)索引文件 (3)索引顺序文件 和数据结构中的逻辑结构与物理结构一样,文件也具有逻辑结构和物理结构 逻辑结构:从用户角度看,文件内部的数据 ...

  8. 文件管理之文件的逻辑结构

    通常,文件是由一系列的记录组成的.文件系统设计的关键,是将这些记录构成一个文件的方法,以及将一个文件存储到外存上的方法.对于任一个文件,都存在两种形式的结构: ㈠ 文件的逻辑结构(File Logic ...

  9. 初识文件管理、文件的逻辑结构

    文章目录 前情回顾与后期规划 文件属性 文件内部数据组织 操作系统向上提供的功能 从上往下看文件如何保持在外存 其他需要由操作系统实现的文件管理功能 总结思维导图 文件的逻辑结构 知识总览思维导图 有 ...

最新文章

  1. 简单的DPDK介绍与分析
  2. Flutter学习记录(二、Flutter项目学习Widget)
  3. bbsmax mysql_Problems with MMM for mysql(译文)
  4. Java学习小程序(10)三个等级的才字母游戏
  5. (转)编译Android源码的全过程
  6. 【译】10个有趣的JSCSS库(2018.10)
  7. 计算机应用研究潜规则,基于相容矩阵计算的不完备决策系统规则获取算法
  8. 阿里云定时任务并自动释放
  9. Python使用集合实现素数筛选法
  10. SQL Server数据库的兼容级别:错误;找不到xxxx对象
  11. C#foreach循环的优点
  12. Java操作文件夹的工具类
  13. 关于微信退款出现错误代码:52的解决方法【转】
  14. python多线程爬取qq好友空间的留言
  15. nginx image_filter模块415问题
  16. xmanager登陆linux黑屏,使用xmanager工具登陆linux服务器时黑屏问题
  17. 华为NE5000E集群路由器荣获InfoVision奖
  18. micropython实现mpy的ota(有用,推荐)
  19. 洞悉物联网发展1000问之从三网融合到广电物联网会带来新机遇?
  20. 大型会议的礼仪(2)

热门文章

  1. 欢迎界面动画效果的简单实现
  2. 【python爬虫】爬取疾病资料库
  3. 吾尝终日而思矣——2019.02.27
  4. Visual Studio 2008 简体中文版下载
  5. 计蒜客-百度的年会游戏(模拟)
  6. 数据结构之链表基本操作
  7. 千兆车载以太网TSN(时间敏感网络)网络测试?TSN Box为您焕新
  8. 如何在Mac上快速压缩和解压文件?Mac上解压和压缩文件的方法
  9. 胡振波:我的芯片之路
  10. 信息安全技术网络安全等级保护