当前位置: 首页 > news >正文

数据库:表和索引结构

        表和索引是如何组织和使用的,在很大程度上取决于具体的关系型DBMS,然而它们都依赖于大致相似的结构和原则。

索引页和表页

        表行和索引行都被存储在页中。页的大小一般为4kb,这是一个可以满足大部分需求的大小,也可以是其他大小,这不是一个重要的考虑点。页的大小仅仅决定了一个页可以存储多少个索引行、表行,以及一共需要多少页来存储表或者索引。

        缓冲池和I/O活动都是基于页的,一次将一个完整的页读取到缓冲池。

索引行

        对于一个唯一索引,一个索引行等同于叶子页中的一个索引条目。字段的值从表中复制到索引上,并加上一个指向表中记录的指针。

        对于一个非唯一索引,一个特定的索引值所对应的索引行应该被想象成独立的索引条目,每一个索引条目都含有相同的索引值,但是却有不同的指针。

        大多数情况下,非唯一索引的实际存储方式是一个索引值后带着多个指针。

索引结构

        非叶子页通常包含着一个键值,以及一个指向下一层级页的指针,该键值是下一层级页中的最大键值,多个索引层级按照这一方式逐层建立,直到只剩下一个页——根页。这种组织方式的索引叫做B树索引。通过这种索引方式查找任何一条索引记录都需要访问相同数量的非叶子页。

表行

        每一个索引行都指向表中相对应的一行记录,指针通常标识了记录所存放的页以及它在页中的位置。

        表中的每一行除了存储行的字段以外,还包含了一些控制信息用于定义行并帮助DBMS处理插入或者删除操作。

        当加载表或者向表中插入记录的时候,表中记录的顺序可以被定义成和它的某一个索引记录相同的顺序。在这种情况下,当索引行被按顺序处理时,对应的表行也将依照相同的顺序逐个处理,这是一个效率很高的过程。

http://www.lryc.cn/news/624959.html

相关文章:

  • 【68页PPT】智慧方案信息物理系统与数字孪生某著名企业(附下载方式)
  • 从零开始搭建React+TypeScript+webpack开发环境——多环境配置管理方案
  • 图论:Floyd算法
  • WPF---数据模版
  • 算法题打卡力扣第26. 删除有序数组中的重复项(easy))
  • 计算机网络-IPv6
  • 使用 uv管理 Python 虚拟环境:比conda更快、更轻量的现代方案
  • 保姆级教学:使用 Jenkins 部署前端项目(2025 年最新版)
  • 知识蒸馏 Jensen-Shannon散度
  • Vue3 全新特性 defineModel 深度解析
  • [Oracle数据库] Oracle 进阶应用
  • BPO(Business Process Optimization,业务流程优化)
  • 信创产业:从技术突围到生态重构的强国之路
  • redis持久化机制:RDB和AOF
  • 手机视频怎么提取音频?3步转成MP3,超简单!
  • 十年回望:Vue 与 React 的设计哲学、演进轨迹与生态博弈
  • PLC 控制系统中 PCB 板的选型与设计要点
  • 申请免费的SSL证书,到期一键续签
  • 深入浅出决策树
  • python学习DAY45打卡
  • JMeter与大模型融合应用之构建AI智能体:评审性能测试脚本
  • Nodejs学习
  • 基于ssm jsp中学校园网站源码和答辩PPT论文
  • 视觉语言导航(11)——预训练范式 4.1
  • 封装、继承、多态的含义及其项目应用
  • 机器人技术核心模块与前沿趋势总结
  • TikTok墨西哥POP店今日正式开放!0佣金+流量扶持+5店开放
  • PG靶机 - Bratarina
  • C# NX二次开发:字符串控件StringBlock讲解
  • Pandas 中常用的统计计算、排序、分组聚合