返回首页

gbase数据、南大通用产品文档:GBase8a_gbase_loader_orc_row_group_num

更新日期:2024年09月11日

取值:[1,10]
默认值:6
说明:加载orc 文件,并发解析时每个线程分配的行组个数。默认值为6 个行组。
修改方式:
可使用set 语句修改值也可在配置文件中修改值。
适用于session、
global
范围均可。

嵌套赋值
给变量嵌套赋值的语法请参见图17-3。
图17-3 nested_assignment_value::=
对以上语法格式的解释如下:

variable_name:变量名。

col_name:列名。

subscript:下标,针对数组变量使用,可以是值或表达式,类型必须为int。

value:可以是值或表达式。值value 的类型需要和变量variable_name 的类型兼容
才能正确赋值。
示例:
gbase=#CREATE TYPE o1 as (a int, b int);
postgres=# DECLARE

GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
635
TYPE r1 is VARRAY(10) of o1;
emp_id
r1;
BEGIN
emp_id(1).a := 5;--赋值
emp_id(1).b := 5*7784;
END;
/

INTO 方式赋值仅支持对第一层列赋值,且不支持二维及以上数组;

引用嵌套的列值时,
若存在数组下标,
目前仅支持在前三层列中只存在一个小括号
情况,建议使用方括号[ ]引用下标;

使用 SYSSBSPACENAME 配置参数来指定 sbspace 的名称,
数据库服务器在其中存储分片级
别数据分布统计信息,syfragsdist 系统目录表在其 encsdist 列中存储为 BLOB 对象。
还使用 SYSSBSPACENAME 来指定 sbspace 的名称,数据库服务器在其中存储 UPDATE
STATISTICS 语句为某些用户定义的数据类型收集的统计信息。
onconfig.std 值
未设置。
如未出现
0

最多 128 字节。SYSSBSPACENAME 必须是唯一的,以一个字母或下划线开头,且仅包含数
字、字母、下划线或 $ 字符。
生效
编辑 onconfig 文件并重启数据库服务器之后。
当您通过运行 onmode -wf 命令在 onconfig 文件中动态地重置该值时。
当您通过运行 onmode -wm 命令重置内存中的该值时。
参考
 更新统计信息,在 GBase 8s 性能指南 中关于个别查询性能的章节中
 sbspace 特征,在 GBase 8s 性能指南 中关于配置对 I/O 影响的章节中
 写用户定义的统计信息,在 GBase 8s 用户定义的例程和数据类型开发者指南 中
的性能章节中
 提供一列的统计信息数据,在 GBase 8s DataBlade API 程序员指南 中
用法

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 162 -
要支持分片级别统计信息,您必须指定一个 sbspace 的名称作为 SYSSBSPACENAME 设置,
且您必须分配那个 sbspace(通过使用 onspaces 实用程序,如下所示。对于任何其
STATLEVEL 属性设置为 FRAGMENT 的表,如果未设置 SYSSBSPACENAME,或如果未正当地分
配 SYSSBSPACENAME 设置到的那个 sbspace,则数据库服务器返回错误)。
对于分片表中一列的分布统计信息,
您可根据这个公式估计该 sbspace 要求的存储容量为
多少字节:
nfrags * 1.25 * ((10000 / resolution) * ((2 * column_width) + 6))
此处 1.25 接近溢出 GBase_8s bin 的数目。公式还包括这些变量:
 column_width 是 UPDATE STATISTICS 语句指定列的以字节计的宽度。
 nfrags 是表的分片数。
 resolution 是计算分布的 UPDATE STATISTICS 语句的 resolution 子句中
percent 值。
resolution 还是 dbschema -hd table 命令为该列分布统计信息显示的内容。
SYSSBSPACENAME 还指定 sbspace 的名称,数据库服务器在其中存储 UPDATE STATISTICS
语句为某些用户定义的数据类型收集的统计信息。通常情况下,数据库服务器在
sysdistrib 系统目录表中存储统计信息。
请不要混淆 SYSSBSPACENAME 配置参数与 SBSPACENAME 配置参数。
由于用户定义的数据类型的数据分布可很大,您有在 sbspace 中存储它们,而不存储在
sysdistrib 系统目录表中的选项。如果您在 sbspace 中存储数据分布,则请使用
DataBlade API 或 GBase 8s ESQL/C 功能来检查统计信息。
即使您以 SYSSBSPACENAME 参数指定一个 sbspace,在可使用它之前,您也必须以
onspaces 实用程序的 -c -S 选项创建该 sbspace。当发生下列情况之一时,数据库服务
器验证这个 sbspace 的名称:
 当数据库服务器执行带有 MEDIUM 或 HIGH 关键词的 UPDATE STATISTICS 语句时,
数据库服务器尝试将多重表示类型的数据分布写到 SYSSBSPACENAME。
 当数据库服务器执行带有 DROP DISTRIBUTIONS 关键词的 UPDATE STATISTICS 语
句时,数据库服务器尝试将多重表示类型的数据分布删除到 SYSSBSPACENAME。
如果未设置 SBSSPACENAME,或如果未分配存储到那个 sbspace,则数据库服务器可能存储
分布统计信息,以便 UPDATE STATISTICS 操作以错误 -9814失败。
虽然您可在 SYSSBSPACENAME 中指定的 sbspace 中存储智能大对象,
但推荐将分布统计信
息与智能大对象保持在分开的 sbspace 中,因为:
 您要避免当查询正在访问智能大对象,
且查询优化器正在使用分布来确定查询计划
时发生磁盘争用。
 当每一 sbspace 用于不同的目的,磁盘空间花费较长时间才填满。

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 163 -