第一章 PostgreSQL中的数据库集群、数据库和表

本文详细介绍了PostgreSQL数据库集群的逻辑结构和物理结构,包括数据库集群由一组数据库组成,数据库由表和其他对象如索引、视图等构成,以及表在磁盘上的存储方式。此外,还探讨了数据元组的读写方法,包括顺序扫描和B树索引扫描。通过学习,读者将更好地理解PostgreSQL的数据存储机制。
摘要由CSDN通过智能技术生成

前言

最近想研究一下《The Internals of PostgreSQL》by  Hironobu Suzuki 这本书。书内容很好,干货满满,强烈推荐。

英文电子版:https://www.interdb.jp/pg/ 

中文版:https://item.jd.com/12527505.html

虽然这本书有中文版,但是我还想从英文版读起,结合自己的理解,去翻译或者重新整理下这本书,一方面是因为想同时提高自己阅读英文文档的能力,另一方面我觉得中译之后的书,会给我一种距离感。将一种语言转换成另一种语言,这个过程中或多或少会伴随着信息的缺失,我担心这种缺失,会影响我的理解。

以上。

另外最近想运营一个公众号,专门发一些有关PG和linux运维的总结,刚刚搞起,很多不足之处,望海涵,欢迎各位来踩~  公众号《PostgreSQL运维技术》。

悄悄放一张:

话不多说...

 

这一章主要介绍四个概念:

数据库集群的逻辑结构

数据库集群的物理结构

表文件的内部布局

读写数据元组的方法

 

数据库集群的逻辑结构

 

Pg中的集群,也即database cluster,是由PostgreSQL服务端来管理的一组数据库(database)的集合。注意这里是数据库(database)的集合,不是数据库服务(database servers)的集合。一个PostgreSQL服务器运行在单个主机上,管理单个数据库集群。

Pg与大多数的关系型数据库一样都是由表来存储数据,一个表(table)属于某个数据库(database),数据库(database)又同属于一个database cluster。

图1.1.数据库集群的逻辑结构

 

图片

图片来源:https://www.interdb.jp/pg/pgsql01.html

 

在一个数据库集群中,除了有表、数据库这些数据库对象,还有比如索引、视图、函数、序列等对象,pg对这些对象统一采用对象标识符(OIDs)来管理,oid是无符号的4字节整数。数据库对象和各自的oid存储在各自的system catalogs中,比如table是存储在pg_class, 而dababase存储在pg_database中。

图片

 

图片

 

数据库集群的物理结构

 

上面我们谈的是集群的逻辑结构,也即抽象概念。现在我们聊聊的物理结构也即真实存在的结构。实际上,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值