1.单机架构
Gnode-s 的架构包含三个主要部分:进程管理,内存管理,磁盘存储管理:
(1) 进程管理:执行数据库服务器实例(instance)请求的任务。
(2) 共享内存管理:缓存数据表的数据;维护和控制着进程所需的资源。
(3) 磁盘存储管理:存储了数据表的数据和数据库服务器的系统信息。
2.内存管理
Gnode-s 的共享内存分 3 个段来管理:
(1) 驻留段:即缓冲池,内含逻辑日志和物理日志的缓冲区以及其它系统数据结构。
(2) 虚拟段:根据用途的不同,虚拟段可以进一步分为会话池、多线索池、字典池、存储过程池、排序池、大缓冲区池以及全局池。虚拟段内存池的分配和释放是动态进行的。
(3) 消息段:当客户与服务器利用共享内存进行通讯时,消息段将用做两者之间的消息缓冲区。
3.进程管理
Gnode-s 动态可扩展架构(DSA)是一个真正的多线程架构,Gnode-s 专为 DSA 架构设计独立的多线程类库,不依赖于具体的操作系统,跨平台能力强,资源利用率高。 Gnode-s 进程被认为是一个虚拟处理器(Virtual Processor, VP),每一个 VP 隶属于某一 虚处理器类,管理和运行属于它的线程,每一虚处理器类负责完成一类特定的任务, Gnode-s 虚处理器还包括:ADM VP、PIO VP、 LIO VP、JAVA VP、NET VP 等。
4.存储管理
Gnode-s 的磁盘组件由多个原始磁盘空间组成,称为 Chunk。Chunk 以页(page) 为基本单位,多个 Chunk 集合逻辑上构成了数据空间(dbspace),一个数据空间至少包括一个 Chunk,用于存储数据库、表以及物理日志和逻辑日志。
Gnode-s 不仅支持结构化数据的存储,也支持非结构化数据存储。