SinoDB数据库存储结构

page
SinoDB数据库最小的物理存储单元是page,一个page是系统进行一次I/O操作的最小单元。即,仅修改了某个page中的某一条记录,系统也要对这整个page进行一次I/O操作。系统默认page的大小因不同的操作系统而有差异,例如Linux默认的page大小是2K,AIX、LinuxONE默认的page大小是4K。存储在同一个page中的数据是同类型的,一个page中可以是索引或数据,但不能同时包含二者。

extent
在同一个chunk中,多个连续的page组成一个extent。一个extent只能包含在一个chunk中。一般来说,一个表是由多个extent组成。

chunk
一个chunk是存储数据的一块连续磁盘空间。一个chunk可以是一块裸设备(raw device)或UNIX文件(cooked file)。每个chunk中一般包含多个extent。

tablespace
一个表或索引占用的空间称为一个tablespace。一个tablespace包含一个或多个extent。多个extent可能分布在不同的chunk中。

dbspace
一个dbspace是由一个或多个chunk组成。一个dbspace只能属于一个实例,却可以属于多个数据库;一个数据库也可以分布在多个不同的dbspace中。