返回首页

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

更新日期:2024年09月11日

功能说明
DESCRIBE 提供一个表中的列信息。它是SHOW COLUMNS 的简便形式,该语
句也可以显示视图信息。通过参数gbase_show_ident_case_sensitive 可以控制显示

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
1098
的列名大小写,默认与源表结构中列名大小写一致。具体参考7.6.3 章节Gnode
的配置参数。
语法格式
{DESCRIBE | DESC} [vc_name.][database_name.] [col_name]
表5- 108 参数说明
参数名称


vc_name
vc 名,可选项。
database_name
数据库名,可选项。
table_name
表名
col_name
可以是一个列名称,一个包含“%”(使用“%”时,需要用
单引号包含此通配符,如“'id%'”)或“_”的通配符的字符
串,
用于获得对于带有与字符串相匹配的名称的各列的输出。
字符串中包含空格或其它特殊字符时,需要使用引号将其包
围。
示例
示例1:查看customer c_custkey 的列信息。
gbase> DESCRIBE customer c_custkey;
+-----------+------------+------+-----+---------+-------+
| Field
| Type
| Null | Key | Default | Extra |
+-----------+------------+------+-----+---------+-------+
| c_custkey | bigint(20) | YES
|
| NULL
|
|
+-----------+------------+------+-----+---------+-------+
1 row in set
表5- 109 列信息含义说明
参数名称


Field
表字段名称。
Type
表字段的数据类型。
Null
表示是否可以存储NULL 值,YES 表示可以存储。
Key
该列为空,GBase 8a MPP Cluster 没有key。
Default
表示指派给该字段的默认值。
Extra
包含所有附加的关于该字段的有效信息。如果列的类型与在

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


CREATE TABLE 语句中定义的不同,则需要注意列类型可能
会发生改变


统一数据平台监控与运维系统用户手册
- 116 -
南大通用数据技术股份有限公司
GBase8aMPP 集群监管模块实现对集群所有业务的监控功能,通过此模块,
用户能够查看集群所有类型服务器的当前状态和集群数据库的相关功能。功能
概述如下:

集群主页:集群模式、状态、锁、报警信息、节点状态、节点资源、
会话统计、磁盘空间占用。

节点信息:节点信息包含集群服务器和数据库两个部分

集群服务器:显示当前集群所有节点拓扑及状态,状态通过颜色
区分是否报警以及报警级别,并能够切换到完整版查看。

集群数据库:查看当前集群所有的数据库,并能够逐层细化查看
表信息(列、索引),数据分布。

集群锁信息:查看当前集群是否发生死锁

数据库管理:页面可视化操作库、表、视图、分配权限等

SQL 执行器:执行SQL 语句,获取执行结果

SQL 日志信息:查询当前集群执行过的SQL 日志

参数信息:查看当前集群的配置参数当前值

状态信息:查看当前集群各个变量的状态值

进程信息:查看当前集群可监控进程的状态,并可启停各个进程

会话信息:查看当前集群正在进行的会话信息,并可以查看其执行计
划,以及分不到各个节点的SQL、执行计划,可以移除会话

系统日志:查看当前集群运行产生的各种日志信息,具体日志类型可
在平台管理中配置

监控指标趋势信息:查看当前集群各项监控指标指定时间段内的使用
趋势情况,帮助用户问题分析、原因查找。

资源统计信息:
查看集群某个/所有节点的资源使用情况,
并展示为图
表。

统一数据平台监控与运维系统用户手册
南大通用数据技术股份有限公司
- 117 -

同步任务信息:查看集群当前同步任务相关信息。

报警信息管理:
查看当前集群最新/历史报警信息,
可定时刷新报警条
数。

索引使用约束
下面是一个使用索引的例子:
gbase=#create table table1 (c_int int,c_bigint bigint,c_varchar varchar,c_text
text) with(orientation=row);

GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
634
gbase=#create text search configuration ts_conf_1(parser=POUND);
gbase=#create text search configuration ts_conf_2(parser=POUND)
with(split_flag='%');
gbase=#set default_text_search_config='ts_conf_1';
gbase=#create index idx1 on table1 using gin(to_tsvector(c_text));
gbase=#set default_text_search_config='ts_conf_2';
gbase=#create index idx2 on table1 using gin(to_tsvector(c_text));
gbase=#select c_varchar,to_tsvector(c_varchar) from table1 where
to_tsvector(c_text) @@ plainto_tsquery('¥#@……&**') and to_tsvector(c_text)
@@ plainto_tsquery('某公司') and c_varchar is not null order by 1 desc limit 3;
该例子的关键点是表table1 的同一个列c_text 上建立了两个gin 索引:idx1 和idx2,但
这两个索引是在不同default_text_search_config 的设置下建立的。
该例子和同一张表的同一
个列上建立普通索引的不同之处在于:

gin 索引使用了不同的parser(即分隔符不同)
,那么idx1 和idx2 的索引数据是不同的;

在同一张表的同一个列上建立的多个普通索引的索引数据是相同的。
因此当执行同一个
查询时,使用idx1 和idx2 查询出的结果是不同的。
使用约束
通过上面的例子,索引使用满足如下条件时:

在同一个表的同一个列上建立了多个gin 索引;

这些gin 索引使用了不同的parser(即分隔符不同)


在查询中使用了该列,且执行计划中使用索引进行扫描;
为了避免使用不同gin 索引导致查询结果不同的问题,
需要保证在物理表的一列上只有
一个gin 索引可用。

GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
635