返回首页

gbase数据、南大通用产品文档:GBase8aDDL 优化

更新日期:2024年09月11日

对于集群层主要指合理设定表的分布属性,以及合理选择Hash 分布列。对于
GNode 层主要指压缩参数。

行列混存即行存和列存混合存储,
在现有列存的基础上,
把某些列的数据拼起来,
当作一列来存储。这样当列数较多,访问的数据记录又非常离散时,通过冗余行
存储可以有效提高I/O 性能。
功能说明
行列混存具有以下功能:

支持SQL 语法,包括建表时定义行列混存,对已存在的表创建行列混存,删
除行列混存;

支持快速创建,并行创建行列混存;

行列混存支持压缩存储;

提升I/O 性能,
行列混存可以按更小粒度的Data Page 读取数据,
而不是DC;

系统会自动判断某场景是否需要使用行列混存数据;

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
1042

存储冗余方式灵活,用户可自定义数据存储及冗余方式;

行列混存维护,
DML 语句自动维护行列混存,
包括INSERT、
快速UPDATE、
DELETE、LOAD 等。
使用约束

不能与表中其他列重名(包括行列混存)。

同一字段不允许出现在两个行列混存定义中。

除删除行列混存语句外,行列混存不允许在任何语句中被直接引用。

行列混存的定义不允许修改,在确实需要修改的情况下,只能先删除,再根
据新的定义创建。

行列混存定义中包含的物理列不允许删除和修改数据类型,但可以修改列名
和列在表中的顺序。

行存列只允许使用0、3、5 压缩方式,使用其它压缩方式会发生错误。

行存列的名字,不能与表中的索引名称重名。

当创建逻辑日志文件时,使用 LOGSIZE 配置参数来指定使用的文件大小。
onconfig.std 值
LOGSIZE 10000
单位
KB

整数值。
最小值 = 200
当数据库服务器首次初始化时,最大值 = (ROOTSIZE - PHYSFILE - 512 - (63 *
pagesize/1024)) / LOGFILES
pagesize 值是操作系统的缺省系统页大小。
如果您扩展 root dbspace 或将逻辑日志移到一个不同的 dbspace,则逻辑日志文件大小
的最大值不能超过下列与页大小相依的值:
 1 GB,当页大小 = 2 KB
 2 GB,当页大小 = 4 KB

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 101 -
此限制是日志位置可以为那些页大小描述的页的最大数目。
生效
编辑 onconfig 文件并重启数据库服务器之后。
当您通过运行 onmode -wf 命令在 onconfig 文件中动态地重置该值时。
当您通过运行 onmode -wm 命令重置内存中的该值时。
用法
当您更改 LOGSIZE 配置参数的值时,
仅影响新的日志文件。
现有的日志文件的大小不更改。
逻辑日志大小的合计是 LOGSIZE 配置参数设置与 LOGFILES 配置参数值的乘积。然而,如
果您更改 LOGSIZE 配置参数的值,
则所有逻辑日志文件的大小合计依赖于每个大小的日志
文件的数目。
如果启用 AUTO_LLOG 配置参数,则根据需要自动地添加逻辑日志文件来提高性能,直到逻
辑日志大小合计达到可配置最大值。
要验证您的平台上数据库服务器的页大小,请运行 onstat -b 命令。
如果您声明一个智能大对象列的日志记录,则您必须确保此逻辑日志比插入或更新期间日
志记录的数据量大许多。数据库服务器不可备份打开的事务。如果许多事务是活动的,则
合计日志记录活动必须不强制打开的事务到日志备份文件。例如,如果您的日志大小是
1000 KB 且高水印是 60%,则不为智能大对象更新使用多于 600 KB 逻辑日志。当达到高
水印 600 KB 时,数据库服务器启动回滚事务。