返回首页

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

更新日期:2024年09月11日

修改表压缩属性
语法格式
ALTER TABLE [IF NOT EXISTS] [vc_name.][database_name.]table_name
ALTER COMPRESS (<’method’>,);
表5- 82 参数说明
参数名称


method
指定压缩算法,
不设置时show variables 显示
“NO Setting”

压缩方式取值:

Nozip:没有压缩

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



HighZ:高压缩比

RapidZ:快速压缩

NewRapidZ:

STDZ:
压缩方式中的字符串不区分大小写
level
指定压缩级别,0~9,1 压缩比最低,压缩/解压缩速度最快,
9 反之。不设置时show variables 显示为0。默认级别为0,
针对不通的原型算法有不通的选取。
示例
示例1:修改表压缩属性的压缩类型。
gbase> CREATE TABLE t1 (a int, b varchar(10)) COMPRESS('rapidz',5);
Query OK, 0 rows affected (Elapsed: 00:00:00.12)
gbase> SHOW CREATE TABLE t1\G
*************************** 1. row ***************************
Table: t1
Create Table: CREATE TABLE "t1" (
"a" int(11) DEFAULT NULL,
"b" varchar(10) DEFAULT NULL
) COMPRESS('RapidZ', 5)
ENGINE=EXPRESS DEFAULT CHARSET=utf8
TABLESPACE='sys_tablespace'
1 row in set (Elapsed: 00:00:00.00)
gbase> ALTER TABLE t1 ALTER COMPRESS('newrapidz',0);
Query OK, 0 rows affected (Elapsed: 00:00:00.90)
gbase> SHOW CREATE TABLE t1\G
*************************** 1. row ***************************
Table: t1
Create Table: CREATE TABLE "t1" (
"a" int(11) DEFAULT NULL,
"b" varchar(10) DEFAULT NULL
)
COMPRESS('NewRapidZ',
0)
ENGINE=EXPRESS
DEFAULT
CHARSET=utf8 TABLESPACE='sys_tablespace'
1 row in set (Elapsed: 00:00:00.00)

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

EXPLAIN 后没有EXTENDED 和PARTITIONS 时,显示缺省输出。
缺省输出只输出简化版的查询计划,主要包括数据重分布方式和每个步骤的主要
操作。
详细解释如下:
gbase> explain select * from x2 where id2 > (select count(*) from x3);
+----+-----------+-----------+----------+----------------+----+-------+------+
| ID | MOTION
| OPERATION | TABLE
| CONDITION
| ROW | WIDTH | COST(TOTAL) |
+----+-----------+-----------+----------+----------------+----+------+------------+
| 02 | [RESULT]
| SCAN
| x2[id4]
| id2{S} > &x1x&) | 16
| 16
| 1.05(3.26) |
| 01 | [SCALAR_1] | Step
| <00>
|
| 0
| 0
| 0.52(2.21) |
|
|
| AGG
|
|
|
|
|
|
| 00 | [GATHER]
| Table
| x3[id4]
|
| 0
| 0
| 1.69(1.69) |
|
|
| AGG
|
|
|
|
|
|
+----+-----------+-----------+----------+---------------+----+-------+------------+
5 row in set
表5- 142 详细解释如下:

解释
ID
计划的步骤,从00 开始执行,从下往上依次执行的步骤。
MOTION
该步骤的执行结果的处理方式:
RESULT:结果发送到客户端;
GATHER:结果发送到汇总节点;
REDIST(…):结果HASH 重分布,括号中为计算HASH 的列,如果超长
则截断为两个点;
NO REDIST:结果直接保存到对应的数据分片,不进行重分布;
BROADCAST:结果拉复制表;
RAND REDIST:结果随机分布到所有节点;
SCALAR_N:结果为标量,N 为标量子查询的编号,如果条件中有引用,

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
1143
则使用&xNx&方式引用。
如01 步骤中标量子查询[SCALAR_1],
02 步骤
中对01 步骤标量的引用:id2{S} > &x1x&
OPERATIO
N
SCAN:单表扫描,并使用条件过滤数据;
Table:单表,没有过滤条件;
SubQueryN:子查询,N 为自动编号;
Step:使用前一个Step 的结果;
INNER/LEFT/FULL JOIN:连接操作;
WHERE:子查询的WHERE 条件;
GROUP:分组操作;
ORDER:排序操作;
LIMIT:计算LIMIT,OFFSET;
AGG:distinct,聚集操作;
UNION/UNION ALL/MINUS/INTERSECT:UNION 操作;
例如图中00 的含义为:
第一个INNER JOIN 的左边为第二个INNER JOIN;
第二个INNER JOIN 的左边为date_dim,该表为复制表,有条件过滤;
第二个INNER JOIN 的右边为salesreturns,
其为子查询Salesreturns 子查询
包含一个UNION ALL:为catelog_sa..与catelog_re..的UNION ALL;
第一个INNER JOIN 的右边为catalog_page,该表为复制表;
第一个INNER JOIN 结束后有一个GROUP 操作;
对于每个步骤(ID 列不为空的为一个步骤)OPERATION 每层有1 个空格
的缩进。
TABLE
OPERATION 涉及到的表,只显示别名和属性,超长截断为两个点;
HASH 分布表:中括号中显示HASH 列;
复制表:显示[REP];
随机分布表:显示[DIS];
子查询:OPERATION 列显示SubQueryN,其中N 为数字,用来区分不同
的子查询;
某个步骤的结果:OPERATION 列显示为Step,本列显示为其中N 为
用到的步骤的第一列ID,表示该步骤的结果;
例如:
图中ID 为03 的步骤是一个汇总步骤,源表为x 子查询;
x 子查询为一个UNION,涉及到ssr,csr,wsr;
ssr,csr,wsr 都是子查询,分别来自02,00,01 的结果进行GROUP BY。
CONDITIO
N
显示操作的条件,
例如FILTER 的单表条件,
JOIN 的连接条件,
GROUP BY,
ORDER BY,LIMIT 的内容。
如果某个条件可能使用索引,会在有索引的列后进行标注,例如:

WHERE t1.a{S} > 10 表示可能使用t1.a 的智能(Smart)索引;

WHERE t1.a{H} = 10 表示可能使用t1.a 的HASH 索引;

WHERE t1.a{H}= t2.b 表示可能使用t1.a 的HASH 索引;

WHERE t1.a{H} = t2.b{H}表示可能使用t1.a 和t2.b 的HASH 索
引;

WHERE contains(t1.a{F}…) 表示可能使用t1.a 的全文(Full
Text)索引。

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
1144
只有物理表的单列包含索引:

物理表单列的>,<,>=,<=,=可能使用智能索引;

物理表单列的=可能使用HASH 索引,包括等于常量和等值
JOIN;

物理表的contains 函数可能使用全文索引。
ROW

WIDTH

COST
(TOTAL)
显示代价评估的内容,分别为该步骤结果的条数ROW,行宽WIDTH,该
步骤的代价和总体代价COST。
其中代价不包括结果进行数据移动的代价。
图中的值不是真实数据,仅供参考。
注:当某些表或者列缺少统计信息时,则不会显示代价相关的内容,而显
示缺少统计信息的那些表或列,如x2 和x3 表缺少统计信息,则不显示
ROW、WIDTH、COST 列,而是显示NO STA Tab/Col 列,列出缺少统计
信息相关表x2 和x3,如下显示:
gbase> explain select * from x2 where id2 > (select count(*) from x3);
+----+-----------+-----------+----------+---------------+----+-------+------+
| ID | MOTION
| OPERATION | TABLE
| CONDITION
| NO STA Tab/Col|
+----+-----------+-----------+----------+---------------+----+-------+
| 02 | [RESULT]
| SCAN
| x2[id4] | (id2{S} > &x1x&) |
|
| 01 | [SCALAR_1] | Step
| <00>
|
|
|
|
|
| AGG
|
|
|
|
| 00 | [GATHER]
| Table
| x3[id4]
|
| x3
|
|
|
| AGG
|
|
| x2
|
+----+-----------+-----------+----------+---------------+----+-------+5 row in set

Exceeded maximum no. of connections configured for Connection Pool Manager

GBase 8s JDBC Driver 程序员指南
南大通用数据技术股份有限公司
- 320
-
如果您在不关闭连接的情况下,使用 DataSource 对象重复连接数据库,则连接累积。
当 DataSource 对象的连接的总数超出最大限制(100)时,会抛出此异常。