openGauss数据库的主要逻辑对象有哪些?

openGauss数据库的主要逻辑对象有哪些?

看官网文档,如下图描述还是比较清晰的:

基本概念

1、数据库(Database)

数据库是存储在一起的相关数据的集合,这些数据可以被访问,管理以及更新。

数据库用于管理各类数据对象,与其他数据库隔离。创建数据对象时可以指定对应的表空间,如果不指定相应的表空间,相关的对象会默认保存在PG_DEFAULT空间中。数据库管理的对象可分布在多个表空间上。

2、数据块(Block)

数据块是数据库管理的基本单位,默认大小为8KB。

3、行(ROW)

一行(元组,或记录)是一组相关的数据,例如一条用户订阅的数据。

4、列(Cloumn)

每一列被当作是一个字段。每个字段中的值代表一种类型的数据。例如,一个表可能有3个字段:姓名、城市和国家。这个表就会有3列,一列代表姓名,一列代表城市,一列代表国家。表中的每一行包含3个字段的内容,姓名字段包含姓名,城市字段包含城市,国家字段包含国家。

5、表(Table)

表是由行与列组合成的,是数据库中用来存储数据的对象,是整个数据库系统的基础。

每张表只能属于一个数据库,也只能对应到一个表空间。每张表对应的数据文件必须在同一个表空间中。

6、数据文件(Datafile Segment)

通常每张表只对应一个数据文件。如果某张表的数据大于1GB,则会分为多个数据文件存储。

7、表空间(Tablespace)

在openGauss中,表空间是一个目录,在物理数据和逻辑数据间提供了抽象的一层,为所有的数据库对象分配存储空间,里面存储的是它所包含的数据库的各种物理文件。由于表空间是一个目录,仅是起到了物理隔离的作用,其管理功能依赖于文件系统

表空间可以存在多个,创建好之后,创建数据库对象时可以指定该对象所属的表空间。

8、模式(schema)

数据库对象集,包括逻辑结构,例如表、视图、序、存储过程、同义名、索引及数据库链接。

9、事务(Transaction)

数据库管理系统执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成。在关系数据库中,一个事务可以是一条SQL语句,一组SQL语句或整个程序。

同时,事务也是恢复和并发控制的基本单位,必须具备ACID特性,即:

    原子性(Atomicity):一个事务是一个不可分割的工作单位,事务中包括的操作要么都做,要么都不做。

    一致性(Consistency):事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。

    隔离性(Isolation):一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。

    持久性(Durability):持久性也称永久性(Permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。

温馨提示:答案为网友推荐,仅供参考
相似回答