返回首页

gbase数据、南大通用产品文档:GBase8a复合节点的替换

更新日期:2024年09月11日

替换复合节点需要执行两次节点替换,分别替换Coordinator 服务和Data 服务。
注意

替换复合节点只能使用全新节点替换;

替换复合节点必须先进行Coordinator 服务的替换;

替换Data 服务需确认被替换节点之外的Coordinator 节点状态正常。
集群环境描述:

GBase 8a MPP Cluster 产品手册
4 管理员指南
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
328
Coordinator 节点:172.168.83.11,172.168.83.12,172.168.83.13
Data 节点:
vc1:172.168.83.11,172.168.83.12,172.168.83.15
Vc2:172.168.83.13,172.168.83.14
替换vc2 的复合节点172.168.83.13。

geqo
参数说明:控制基因查询优化的使用。
该参数属于USERSET 类型参数,请参考表15-1 中对应设置方法进行设置。
须知:
通常情况下在执行过程中不要关闭,geqo_threshold 变量提供了更精细的控制GEQO 的

GBase 8c V5 开发者手册
南大通用数据技术股份有限公司
1248
方法。
取值范围:布尔型

on 表示使用。

off 表示不使用。
默认值:on

可以在 SELECT 语句的 Projection 子句中包含 FIRST max 规范(其中 max 具有整数值)
来构建查询,
使其仅返回匹配 SELECT 语句条件的最初max 行。

(且仅在)
此上下文中,
也可以使用关键字 LIMIT 作为 FIRST 的同义词。执行具有FIRST 子句的 SELECT 语句
时返回的行可能会不同,这取决于该语句是否还包含 ORDER BY 子句。

GBase 8s SQL 指南:教程
南大通用数据技术股份有限公司 - 46 -

在 Projection 子句中,
后面跟无符号整数的关键字 SKIP 可用在 FIRST 或 LIMIT 关键字
前面。
SKIP offset 子句指示数据库服务器在返回 FIRST 子句指定的行数之前,
从查询结果
集中排除最初 offset 行满足条件的行。在 SPL 例程中,SKIP 、FIRST 或 LIMIT 的参数
可以是字面值整数或局部 SPL 变量。如果 Projection 子句包含 SKIP offset 但不包含
FIRST 或 LIMIT 规范,那么查询返回除最初 offset 行以外所有满足条件的行。
Projection 子句在下列上下文中不能包含 SKIP 、FIRST 或 LIMIT 关键字:

当 SELECT 语句是视图定义的一部分

在子查询中,除了外部查询的 FROM 子句

在跨服务器分发的查询中,其中参与的数据库服务器不支持 SKIP 、FIRST 或
LIMIT 关键字。
有关使用 FIRST 子句的限制的信息,请参阅《GBase 8s SQL 指南:语法》中 SELECT 语
句的 Projection 子句的描述。

不具有 ORDER BY 子句的 FIRST 子句
如果具有 FIRST 子句的 SELECT 语句中没有 ORDER BY 子句,那么可能返回符合
SELECT 语句条件的任何行。换言之,数据库服务器确定返回哪些限定行,并且查询结果
可能会不同,这取决于优化器选择的查询计划。
以下查询使用 FIRST 子句来返回 state 表中的前五行。
图: 查询
SELECT FIRST 5 * FROM state;
图: 查询结果
code sname

AK Alaska
HI Hawaii
CA California
OR Oregon
WA Washington
当只想知道表包含的所有列的名称和数据的类型,或者测试可能会返回许多行的查询时,
可以使用 FIRST 子句。以下查询显示了如何使用 FIRST 子句来返回表的第一行的列值。

图: 查询
SELECT FIRST 1 * FROM orders;
图: 查询结果
order_num 1001

GBase 8s SQL 指南:教程
南大通用数据技术股份有限公司 - 47 -

order_date 05/20/1998
customer_num 104
ship_instruct express
backlog n
po_num B77836
ship_date 06/01/1998
ship_weight 20.40
ship_charge $10.00
paid_date 07/22/1998

具有 ORDER BY 子句的 FIRST 子句
可以在具有 FIRST 子句的 SELECT 语句中包括 ORDER BY 子句,以返回包含指定列的
最高值或最低值的行。以下查询显示了包含 ORDER BY 子句以(按字母顺序)返回包含
在 state 表中的前五个州的查询。该查询,(除 ORDER BY 子句以外,它与图 1相同)返
回不同于图 1的一组行。
图: 查询
SELECT FIRST 5 * FROM state ORDER BY sname;
图: 查询结果
code sname

AL Alabama
AK Alaska
AZ Arizona
AR Arkansas
CA California
以下查询显示如何在具有 ORDER BY 子句的查询中使用 FIRST 子句来查找 stock 表中
列出的 10 中最贵的商品。
图: 查询
SELECT FIRST 10 description, unit_price
FROM stock ORDER BY unit_price DESC;
图: 查询结果
description unit_price

football $960.00
volleyball $840.00

GBase 8s SQL 指南:教程
南大通用数据技术股份有限公司 - 48 -

baseball gloves $800.00
18-spd, assmbld $685.90
irons/wedge $670.00
basketball $600.00
12-spd, assmbld $549.00
10-spd, assmbld $499.99
football $480.00
bicycle brakes $480.00
应用程序可以将 Projection 子句的 SKIP 和 FIRST 关键字与 ORDER BY 子句相结合使
用,以执行连续查询,对某些固定大小(例如,最大行数可在一屏显示,无需滚动)的子
集中所有满足条件的行进行增量检索。通过在每次查询后使用 FIRST 子句的 max 参数增
大 SKIP 子句的 offset 参数值可实现上述操作。通过对满足条件的行施加唯一的命令,
ORDER BY 子句确保每次查询返回满足条件行的不同子集。
以下查询显示了包含 SKIP 、
FIRST 和 ORDER BY 规范以
(按字母顺序)
返回 state 表的
10 个州中的第六个州,而不是前五个州的查询。该查询类似于图 1,但 SKIP 5 规范指示
数据库服务器返回不同于图 1的行集。
图: 查询
SELECT SKIP 5 FIRST 5 * FROM state ORDER BY sname;
图: 查询结果
code sname

CO Colorado
CT Connecticut
DE Delaware
FL Florida
GA Georgia
如果使用 SKIP 、FIRST 和 ORDER BY 关键字,必须指定对应于应用程序设计目标的参
数,如果 SKIP 的 offset 参数大于满足条件的行数,那么任何 FIRST 或 LIMIT 规范都无
效,并且查询不会返回任何结果。