返回首页

gbase数据、南大通用产品文档:GBase8a虚拟集群

更新日期:2024年09月11日

虚拟集群以大规模集群为基础开发,一个集群中包含多个VC。各VC 在整
个集群范围内独立运行,共享统一的入口。权限许可的情况下,各虚拟集群间

GBase 8a MPP Cluster 技术白皮书


- 18 -

南大通用数据技术股份有限公司
可以相互访问。
支持Coordinator node 和VC 的data node 在同一个物理节点上。
统一管理
在集群内部进行虚拟集群划分,在增强集群的扩展能力同时,提供统一的
管理视图,集群可以达到千节点规模。
集群统一访问入口

图 4-2 统一访问入口
用户选择Coordinator
cluster 中的任意一个Coordinator
node 作为集群
入口。Coordinator node 根据用户确定默认VC。
注:coordinator 节点存储了所有VC 的database 和表的元数据。
业务隔离
虚拟集群对集群进行垂直资源隔离,在实际的业务场景中,可以实现不同
业务的资源物理隔离。
透明访问
虚拟集群提供统一的访问入口,应用对多个物理集群的访问对应用是透明



GBase 8a MPP Cluster 技术白皮书
南大通用数据技术股份有限公司

- 19 -
的,对应用来说就是一个统一的集群。


表定义的列对应的数据文件字段数据需要忽略,不加载入库,全部填充为
NULL,使用filler 关键字。
gbase@suse100-4:~> cat t1.txt
1|a|b
gbase> create table t1(c1 int,c2 varchar(10),c3 varchar(20));

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
1201
Query OK, 0 rows affected (Elapsed: 00:00:00.06)
存在的列名加filler
gbase> load data infile 'sftp://gbase:gbase@192.168.105.54//home/gbase/t1.txt'
into table t1 fields terminated by '|' table_fields 'c1,c2 filler,c3';
Query OK, 1 row affected (Elapsed: 00:00:01.13)
Task 1310 finished, Loaded 1 records, Skipped 0 records
gbase> select * from t1;
+------+------+------+
| c1
| c2
| c3
|
+------+------+------+
|
1 | NULL | b
|
+------+------+------+
3 rows in set (Elapsed: 00:00:00.03)

数据文件字段比表定义的列多,多出来的列需要忽略
gbase@suse100-4:~> cat t1.txt
1|m|a|b
gbase> create table t1(c1 int,c2 varchar(10),c3 varchar(20));
Query OK, 0 rows affected (Elapsed: 00:00:00.06)
存在的列名加filler
gbase> load data infile 'sftp://gbase:gbase@192.168.105.54//home/gbase/t1.txt'
into table t1 fields terminated by '|' table_fields 'c1,m,c2,c3';
Query OK, 1 row affected (Elapsed: 00:00:01.13)
Task 1310 finished, Loaded 1 records, Skipped 0 records
gbase> select * from t1;
+------+------+------+
| c1
| c2
| c3
|
+------+------+------+
|
1 | a
| b
|
+------+------+------+
3 rows in set (Elapsed: 00:00:00.03)

语法格式
ORDER BY {col_name | expr | position} [ASC | DESC] , ...
参数说明

ORDER BY 用于对结果集进行排序,数据列列名称或者表达式。

col_name:
指定排序的数据列,
多列之间用
“,”
分隔。
col_name 可以是SELECT
中使用AS 定义的别名。

expr:指定排序的表达式,多列之间用“,”分隔。

position :在“ SELECT col_name_1,..., col_name_n FROM ” 之间的
“col_name_1,..., col_name_n”的序号,position 是整数型数值,从“1”开始。

例如:
“SELECT stu_no,stu_name FROM stundent ORDER BY 1;”
语句中,
“1”
就是指代数据列stu_no。

ASC | DESC:如果希望对记录进行排序,可以使用ASC 或DESC 关键字来指
定排序规则,ASC 代表升序规则,DESC 代表降序规则。默认按照升序对记录
进行排序。
示例
示例1:... ORDER BY...
gbase> SELECT a.stu_name,math,english,sum(math+english) AS
total FROM student a
INNER
JOIN result b ON a.stu_no = b.stu_no GROUP BY a.stu_no ORDER BY a.stu_no;

GBase UP 产品手册 5 数据库管理指南
文档版本04(2021-04-21) 南大通用数据技术股份有限公司 707
+----------+------+---------+-------+
| stu_name | math | english | total |
+----------+------+---------+-------+
| Tom | 80.0 | 85.2 | 165.2 |
| Jim | 78.0 | 95.5 | 173.5 |
| John | 89.5 | 99.0 | 188.5 |
| Rose | 65.0 | 75.5 | 140.5 |
| Jane | 92.0 | 94.0 | 186.5 |
| Mike | 72.5 | 86.0 | 158.5 |
| Jack | 85.0 | 76.0 | 161.5 |
| Jerry | 95.0 | 97.0 | 192.0 |
| Allen | 56.0 | 78.0 | 134.0 |
| Max | 86.0 | 93.0 | 179.0 |
+----------+------+---------+-------+
10 rows in set