数据库服务器的三种数据结构

一、数据库系统的三种数据结构

(一)逻辑结构

以逻辑抽象结构来组织数据,方便数据的查询,新增,修改和删除。

例如:索引表、树形结构。

(二)内存物理结构

以数组或者对象的方式存放在内存里,方便在内存修改和查询。

如果是C语言,一般是数组和动态内存两种。

(三)文件存储结构

把数据以一定格式组织后,存入磁盘文件里。

一般按照固定的格式来组织数据,例如数据表的每个字段占用固定的字节,对应的是某个结构体属性。


二、实际操作步骤

1、数据库用SQL语句查询。

2、数据库引擎解析SQL语句后,获得查询的表和条件。

3、调用对应的方法,读取磁盘文件的部分数据进入内存。

4、查询内存的数据,判断是否符合。

5、如果符合,把内存中数据返回。不符合返回为空。

如果是更新,还需要把内存数据写入磁盘,覆盖旧的数据,或者追加数据到磁盘文件的末尾。


三、数据库文件的跳跃读取

数据库设计时一般每部分固定字节数,查询时就能根据主键和索引,快速的跳跃读取指针,定位到目标位置读取。

例如:每条记录固定20KB,如果读取第二条记录,就能直接跳跃到位置 (起始索引 + 20 * 1024 * 1)来读取

相关推荐
煎饼学大模型2 小时前
Agent 的“大脑-手“解耦架构:当推理层和工具执行层各自独立演进
数据库·人工智能·oracle·架构·agent
muddjsv5 小时前
SQLite数据库文件机制详解:journal、wal、shm文件作用与备份避坑
数据库·sqlite
吴声子夜歌6 小时前
MongoDB 4.2——应用程序设计
数据库·mongodb
数字新视界6 小时前
动环监控可视化在数据中心管理中的应用与实践解析
数据库·物联网·解决方案·动环监控·大榕树
极地野狼 音乐哔哔6 小时前
数据库备份恢复的原理实践
数据库
互联网中的一颗神经元7 小时前
小白python入门 - 25. SQL 与表设计入门
数据库·python·sql
ttwuai7 小时前
AI 生成后台改数据后,操作日志别只记按钮:Go + MySQL 怎么验
数据库·人工智能·mysql·golang
KaMeidebaby7 小时前
卡梅德生物技术快报 | 核酸适配体文库测序:核酸适配体文库测序的技术原理、实验流程与数据解析
前端·网络·数据库·人工智能·算法
ClouGence8 小时前
除了 DBeaver,2026 年还有哪些好用的开源数据库管理工具?
数据库·开源
暖和_白开水8 小时前
数据分析agent(十三_2):业务层和持久层相互转换mapper
数据库·oracle·数据分析