#DBMS_CM
DBMS_CM包提供了一组内置的存储过程/函数,用于yasboot在特定功能场景中调用维护分布式集群的元数据信息。
Caution:
不建议用户直接调用DBMS_CM高级包,避免造成不可控影响。
DBMS_CM高级包仅适用于分布式部署。
# CREATE_CLUSTER
DBMS_CM.CREATE_CLUSTER(
CLUSTER_ID IN VARCHAR,
CLUSTER_NAME IN VARCHAR,
MN_HOST IN VARCHAR
);
该函数用于创建分布式集群的集群级别元数据信息,相应信息将被写入缓存和系统表中。
| 参数 | 描述 |
|---|---|
| CLUSTER_ID | 分布式集群的唯一UUID,部署时由yasboot自动生成。 |
| CLUSTER_NAME | 分布式集群的名称。 |
| MN_HOST | 首次部署时首个MN节点的服务器地址。 |
# UPDATE_CLUSTER_ID
DBMS_CM.UPDATE_CLUSTER_ID();
该函数用于更新分布式集群的集群级别元数据信息,将相应信息从配置参数文件中加载到内存和系统表。
# CREATE_GROUP
DBMS_CM.CREATE_GROUP(
GROUP_ID OUT INT,
GROUP_NAME IN VARCHAR,
GROUP_TYPE IN INT
);
该函数用于创建分布式集群的节点组级别元数据信息,相应信息将被写入缓存和系统表中。
| 参数 | 描述 |
|---|---|
| GROUP_ID | 节点组ID。 |
| GROUP_NAME | 节点组名称。 |
| GROUP_TYPE | 节点组类型,主要包含:CN(协调节点),DN(数据节点),MN(管理节点)。 |
# DELETE_GROUP
DBMS_CM.DELETE_GROUP(
GROUP_ID IN INT,
IS_FORCE IN BOOL
);
该函数用于从系统表和缓存中删除分布式集群的节点组级别元数据信息。
| 参数 | 描述 |
|---|---|
| GROUP_ID | 节点组ID。 |
| IS_FORCE | 当前类型只剩最后一个节点组时,是否强制删除该组 |
# CREATE_NODE
DBMS_CM.CREATE_NODE(
GROUP_NODE_ID OUT INT,
ENDPOINT OUT INT,
GROUP_ID IN INT,
NODE_TYPE IN INT,
HOST IN VARCHAR,
SERVICE_ADDR IN VARCHAR,
REPLICA_ADDR IN VARCHAR,
DATA_ADDR IN VARCHAR,
IS_SYNC_METADATA IN BOOL
);
该函数用于创建分布式集群的节点级别元数据信息,相关信息将被写入缓存和系统表中。
| 参数 | 描述 |
|---|---|
| GROUP_NODE_ID | 组内节点ID。 |
| ENDPOINT | 节点endpoint。 |
| GROUP_ID | 节点组id。 |
| NODE_TYPE | 节点类型。 |
| HOST | 节点的服务器地址。 |
| SERVICE_ADDR | 节点的服务地址。 |
| REPLICA_ADDR | 节点的复制地址。 |
| DATA_ADDR | 节点的数据传输地址。 |
| IS_SYNC_METADATA | 新扩容的CN节点或DN组首节点时,是否需要同步元数据信息。 |
# DELETE_NODE
DBMS_CM.DELETE_NODE(
GROUP_ID IN INT,
GROUP_NODE_ID IN INT
);
该函数用于从缓存和系统表中删除分布式集群的节点级别元数据信息。
| 参数 | 描述 |
|---|---|
| GROUP_ID | 节点组ID。 |
| GROUP_NODE_ID | 组内的节点id |
# UPDATE_DATA_URL
DBMS_CM.UPDATE_DATA_URL(
GROUP_ID IN INT,
GROUP_NODE_ID IN INT,
URL IN VARCHAR,
DATA_ADDR IN VARCHAR,
REPLICA_ADDR IN VARCHAR,
DATA_PATH IN VARCHAR,
HOST IN VARCHAR
);
该函数用于更新分布式集群中节点的URL信息以及数据路径,相关信息将被写入缓存和系统表中。
| 参数 | 描述 |
|---|---|
| GROUP_ID | 节点组ID。 |
| GROUP_NODE_ID | 组内节点ID。 |
| SERVICE_ADDR | 服务地址。 |
| DATA_ADDR | 数据地址。 |
| REPLICA_ADDR | 复制地址。 |
| DATA_PATH | 数据路径。 |
| HOST | 服务器地址。 |
# UPDATE_DATA_PATH
DBMS_CM.UPDATE_DATA_URL(
GROUP_ID IN INT,
GROUP_NODE_ID IN INT,
DATA_PATH IN VARCHAR
);
该函数用于更新分布式集群中节点的数据路径,相关信息将被写入缓存和系统表中。
| 参数 | 描述 |
|---|---|
| GROUP_ID | 节点组ID。 |
| GROUP_NODE_ID | 组内节点ID。 |
| DATA_PATH | 节点数据路径。 |
# TRIGGER_PUSH
DBMS_CM.TRIGGER_PUSH();
该函数用于在分布式集群级别元数据不同步时,主动触发同步机制。

