相关系统表和动态视图

可在 SP、BS 模式的 BP、MP 节点查询下列系统表和动态试图。在 SP、BS 模式的 BP 节点可查询到的是整个集群所有站点的信息,在 MP 上查询到的只有 MP 站点自身的信息。

12.1 DPC_NETWORK

记录网段信息。

序号 列名 列类型 含义
1 ID INTEGER 网段号
2 NAME VARCHAR(128) 网段名称
3 PREFIX VARCHAR(64) 前缀,如 192.168.0
4 DESCRIPTION VARCHAR(256) 描述信息

12.2 DPC_HOST

记录主机信息。

序号 列名 列类型 含义
1 ID INTEGER 主机号
2 NAME VARCHAR(128) 主机名
3 DESCRIPTION VARCHAR(256) 描述信息

12.3 DPC_HOST_ADDR

记录主机上多块网卡的地址信息。

序号 列名 列类型 含义
1 ID INTEGER 主机号
2 NET_ID INTEGER 网段号
3 NET_ADDR VARCHAR(64) IP 地址

12.4 DPC_FOLDER

记录 BP 域相关的主机的目录信息。

序号 列名 列类型 含义
1 ID INTEGER 目录号
2 DOMAIN_ID INTEGER 域号
3 NAME VARCHAR(128) 目录名
4 HOST_ID INTEGER 主机号
5 PATH VARCHAR(256) 路径
6 DESCRIPTION VARCHAR(256) 描述信息
7 XMAL_PORT INTEGER XMAL 通信端口号

12.5 DPC_BP_DOMAIN

记录 BP 域信息。

序号 列名 列类型 含义
1 ID INTEGER BP 域号
2 NAME VARCHAR(128) 域名
3 DESCRIPTION VARCHAR(256) 描述信息

12.6 DPC_DOMAIN_FOLDER

记录每个域内包含的所有目录信息。

序号 列名 列类型 含义
1 DOMAIN_ID INTEGER 域号
2 FOLDER_ID INTEGER 目录号
3 BP_XMAL_PORT INTEGER XMAL 通信端口号

12.7 DPC_FOLDER_INSTANCE

记录每个目录下的所有实例号信息。

序号 列名 列类型 含义
1 FOLDER_ID INTEGER 目录号
2 INSTANCE_ID INTEGER 实例号

12.8 DPC_BP_GROUP

记录系统中注册的每个 BP 组信息。

序号 列名 列类型 含义
1 ID INTEGER BP 组号
2 NAME VARCHAR(128) BP 组名
3 DESCRIPTION VARCHAR(256) 描述信息
4 RAFT_NUM INTEGER 包含 RAFT 组的个数
5 RAFT_INFO VARBINARY(2048) 包含的所有 RAFT 组的 Id 信息
6 INFO1 INTEGER 预留字段
7 INFO2 BIGINT 预留字段
8 INFO3 VARBINARY(1024) 预留字段

12.9 DPC_BP_RAFT

记录系统中注册的每个 RAFT 组信息。

序号 列名 列类型 含义
1 RAFT_ID INTEGER RAFT 组号
2 GROUP_ID INTEGER 本字段废弃,全部记为-1,无意义
3 DPC_MODE VARCHAR(8) DMDPC 模式
4 NAME VARCHAR(128) RAFT 组名
5 IS_VALID INTEGER BP 节点是否有效(节点是否可用,0 无效,1 有效)
6 INFO1 INTEGER 预留字段
7 INFO2 BIGINT 预留字段
8 INFO3 VARBINARY(1024) 预留字段

12.10 DPC_INSTANCE

记录系统中所有实例对象信息。

序号 列名 列类型 含义
1 RAFT_ID INTEGER 系统内部 RAFT 组号。取值范围:0~1023
2 INST_ID INTEGER 系统内部实例号。取值范围:4096~8191
3 NAME VARCHAR(128) 实例名
4 DPC_MODE VARCHAR(8) DMDPC 模式。取值:MP,SP 或 BP
5 XMAL_PORT INTEGER XMAL 通信端口号。用户通过 SP_CREATE_DPC_INSTANCE 中 AP_PORT 注册时配置,取值范围:1024~65534
6 INST_PORT INTEGER 实例端口。用户通过 SP_CREATE_DPC_INSTANCE 中 INST_PORT 注册时配置,取值范围:1024~65534
7 IP_INTERNAL VARCHAR(512) 实例内网 IP 地址
8 SYS_MODE VARCHAR(32) 系统模式
9 SYS_STATUS INTEGER 系统状态。1:启动;2:启动,redo 完成;3:MOUNT;4:打开;5:挂起;6:关闭
10 STATUS INTEGER 实例状态。1:有效;0:无效;2:SP 正常退出标记;4:SP 灰度升级。仅对 SP 有效
11 DESCRIPTION VARCHAR(256) 描述信息
12 IP_EXTERNAL VARCHAR(512) 实例外网 IP 地址
13 INFO1 INTEGER 预留字段。其中,这个字段的高 2 字节用来保存实例对应的容错域 id,用户可以执行 select info1>>16 fdom from DPC_INSTANCE;来查看结果
14 INFO2 BIGINT 预留字段
15 INFO3 VARBINARY(1024) 预留字段

12.11 DPC_NET_CONF

记录连接配置参数。

序号 列类型 说明
1 PARA_NAME VARCHAR(128) 参数名。
COMPRESS_LEVEL 消息压缩级别,取值范围 0~10。0 表示不压缩;1 表示压缩速度最快但是压缩效率最低;10 表示压缩速度最慢但是压缩率最高,默认 0;
CRC_CHECK 消息的 CRC 检验;
MONITOR_XLNK_TIME 监控链路消息收发用时,单位微秒;
TIMEOUT 通信超时,单位为秒;
XLNK_NUM 链路数
2 PARA_VALUE VARCHAR(128) 参数值

12.12 DPC_TABLESPACE

记录 DMDPC 系统的用户表空间。

序号 列类型 说明
1 TS_ID INTEGER 全局表空间 ID,全局唯一
2 RAFT_ID INTEGER RAFT 组 ID
3 STATE INTEGER 表空间状态。0:联机状态;1:脱机状态
4 NAME VARCHAR(256) 表空间名,主键
5 INFO1 INTEGER 预留字段
6 INFO2 BIGINT 预留字段
7 INFO3 VARBINARY(1024) 预留字段

12.13 DPC_HTS

记录 DMDPC 系统的混合表空间。

序号 列类型 说明
1 TS_ID INTEGER 全局表空间 ID,全局唯一
2 RAFT_ID INTEGER RAFT 组 ID
3 STATE INTEGER 表空间状态。0:联机状态;1:脱机状态
4 NAME VARCHAR(256) 表空间名,主键
5 INFO1 INTEGER 预留字段
6 INFO2 BIGINT 预留字段
7 INFO3 VARBINARY(1024) 预留字段

12.14 DPC_FAULT_DOMAIN

记录系统中所有容错域对象信息。

序号 列名 列类型 含义
1 DOMAIN_ID INTEGER 系统内部容错域号。取值范围:1~4096
2 NAME VARCHAR(128) 容错域名
3 DESCRIPTION VARCHAR(256) 容错域描述
4 INFO1 INTEGER 预留字段
5 INFO2 BIGINT 预留字段
6 INFO3 VARBINARY(1024) 预留字段

12.15 DPC_LONG_TRX

记录 DMDPC 中长事务相关信息。

序号 列名 列类型 含义
1 RAFT_ID SMALLINT 长事务所在的 RAFT 组号
2 TYPE SMALLINT 长事务的类型(0:全局 min_tid;1:指定 raft_id 的一个长事务 id;2:mp 代理故障 sp 的 trxid)
3 TID BIGINT 长事务的 id
4 START_TIME DATETIME 长事务添加到系统表的时间
5 INFO VARCHAR(1024) 预留字段

12.16 V$DPC_STASK_THRD

查看每个子任务、每个线程的执行统计信息。当 DM.INI 参数 ENABLE_MONITOR=1 时有效。

序号 数据类型 说明
1 EXEC_ID BIGINT 执行号
2 MPP_EXEC_ID BIGINT 内部的表示执行号
3 STASK_NO INTEGER 子任务序号
4 THRD_NO INTEGER 工作线程序号
5 PLAN_NO INTEGER 子计划序号
6 START_TIME DATETIME(0) 当前线程的开始工作时间
7 TIME_USED BIGINT 当前线程执行子任务的耗时,单位毫秒
8 FIRST_ROW_USED BIGINT 返回第一行数据的耗时,单位毫秒
9 N_ROWS_SEND BIGINT 子任务输出的行数,对于 HTAB 操作符为存储的行数
10 N_BYTES_SEND BIGINT 子任务输出的数据大小,字节为单位
11 N_ROWS_RECV VARCHAR(1024) 如果子任务有 ERECV 操作符,展示接收的行数
12 P_WAIT_TIMES VARCHAR(1024) 打开限流时,请求资源操作的等待次数。未打开限流时,此值无意义
13 IS_OVER CHAR(1) 工作线程执行是否结束。Y 是;N 否
14 THRD_ID BIGINT 工作线程 ID
15 SESS_ID BIGINT 会话号

例 查看执行号 16777624 的执行情况。

select * from v$dpc_stask_thrd where exec_id  = 16777624;

由于 V$dpc_stask_thrd 记录的是原始信息,我们也可以在它的基础上定义视图方便查看。

例 创建一个视图 v_eet,将 V$DPC_STASK_THRD 中的信息,通过 v_eet 展示出来。

create or replace view v_eet as select y.name name, 
                                       exec_id, 
                                       mpp_exec_id, 
                                       stask_no, 
                                       thrd_no, 
                                       cast(start_time as varchar(30)) as START_TIME, 
                                       time_used as TIME_USED_IN_MS, 
                                       first_row_used as FIRST_ROW_IN_MS, 
                                       n_rows_send as SENT_ROWS,
                                       case when n_bytes_send > 1024 * 1024 * 1024 then cast(n_bytes_send / 1024.0 / 1024 / 1024 as decimal(38,3)) || 'G' 
                                            when n_bytes_send > 1024 * 1024 then cast(n_bytes_send / 1024.0 / 1024 as decimal(38,3)) || 'M' 
                                            when n_bytes_send = 0 then 0 
                                            else cast(n_bytes_send / 1024.0 as decimal(38,3)) || 'K' end as SENT,
                                       n_rows_recv as RECV_ROWS,
                                       is_over
                                 from SYS.V$DPC_STASK_THRD x, SYS.DPC_BP_RAFT y
                                 where SF_GET_EP_SEQNO(x.rowid) = y.raft_id
                                 order by stask_no, name, thrd_no;

通过 v_eet 查看执行事务号为 16777624 的执行语句的执行时间。

select * from v_eet where exec_id = 16777624;

查看结果:

图 12.1 执行语句的统计信息.jpg

图12.1 执行语句的统计信息

从上图观察同一个 stask_no 的不同 thrd_no 线程的执行时间(TIME_USED_IN_MS),可以大概看出工作线程间的负载是否均衡,哪一个子任务耗时最久等信息。

通过观察 SENT_ROWS、SENT 和 RECV_ROWS 字段信息,可以看到每个线程发送、接收的数据量,分析出是否数据分布不均匀。比如某个子任务并行度为 2、THRD_NO=0 的线程接收了 1000000 记录,THRD_NO=1 的线程接收了 500 条记录,差别这么大的情况下我们可以继续分析数据来源,为何会存在这么大的不均衡。

例 执行事务号 16777624 对应的绿色区域为最根层子任务(stask_no 等于-1),安排了一个工作线程,耗时 78 毫秒。

红色区域为子任务 0,共安排了 8 个线程调度执行,耗时最久的为 2 号线程用时 16ms,其余都是 0ms。由于子任务 0 工作量不大,所以这点差距可以忽略。

假设某个子任务工作量很大的前提下,不同线程完成的时间差距很大,这时可以先观察 START_TIME,查看线程是否同时被调度?接收、发送行数是否均衡?

通过调整数据分布和工作线程个数,或者改变数据分发方式,我们可以对数据负载做出一定程度的均衡。

12.17 V$RLOG_RAFT_INFO

查询当前节点的选举状态和日志提交信息。配置成多副本系统的情况下,V$RLOG_RAFT_INFO 的值才是真实有效的,非多副本系统情况下,V$RLOG_RAFT_INFO 的值无实际意义。

序号 数据类型 说明
1 TERM_ID INTEGER 当前节点所处的任期号
2 STATE VARCHAR(16) 当前节点所处的角色
3 LEADER VARCHAR(256) 当前的主库(领导者)实例名
4 LOG_TERM_ID INTEGER 当前节点已经刷盘的任期号
5 C_SEQ BIGINT 当前节点已经提交到的日志包序号
6 C_LSN BIGINT 当前节点已经提交到的 LSN 值
7 F_SEQ_ARR VARCHAR(2048) 所有实例已经刷盘完成的日志包序号数组,仅在主库上查询才有效
8 F_LSN_ARR VARCHAR(2048) 所有实例已经刷盘完成的 LSN 数组,仅在主库上查询才有效
9 H_SEQ BIGINT 主节点已经提交到的日志包序号
10 H_LSN BIGINT 主节点已经提交到的 LSN 值
11 NEED_WAIT VARCHAR(8) 备库是否达到日志堆积上限,仅在主库上查询才有效
12 SELF_STATUS VARCHAR(8) 当前节点实例状态是否有效,仅在主库上查询才有效
13 HP_FLAG VARCHAR(8) 当前节点日志是否堆积
14 SWITCH_TIME VARCHAR(50) 当前节点上一次模式切换的时间
15 ARCH_CHG_FLAG VARCHAR(16) 当前节点是否在执行节点变更
16 ARCH_CHG_STAT VARCHAR(32) 当前节点所处的变更状态
17 DEST_ID_ARR VARCHAR(2048) 当前节点实例 ID 数组。与 F_SEQ_ARR 和 F_LSN_ARR 一一对应
18 RAFT_SHADOW INTEGER 当前节点是否是影子库。0:否,为 RAFT 库;1:是,为影子库
19 TOTAL_CACHE_TIME BIGINT 当前日志包总缓存时间。仅 RAFT 备库查询有效。单位:US

12.18 V$SQL_NODE_HISTORY

通过该视图既可以查询 sql 执行节点信息,包括 sql 节点的类型、进入次数和使用时间等等;又可以查询所有执行的 sql 节点执行情况,如哪些使用最频繁、耗时多少等。

当 INI 参数 ENABLE_MONITOR 和 MONITOR_SQL_EXEC 都开启时,才会记录 SQL 执行节点信息。

序号 数据类型 说明
1 SEQ_NO INTEGER 操作符在计划中的序号,即 explain 显示执行计划时的行号
2 EXEC_ID BIGINT 执行 ID
3 NODE BIGINT 节点 ID
4 TYPE$ INTEGER 节点类型
5 BYTES_DYNAMIC_ALLOCED BIGINT 动态分配字节数
6 BYTES_DYNAMIC_FREED BIGINT 动态释放字节数
7 N_ENTER INTEGER 节点进入次数
8 TIME_USED INTEGER 节点执行所耗时,单位为微秒
9 PLN_OP_ID INTEGER MPP 模式下,节点所属通讯操作符中的序号
10 BYTES_SEND INTEGER 发送的字节数
11 BYTES_RECV INTEGER 接收的字节数
12 ROWS_SEND INTEGER 发送的行数
13 ROWS_RECV INTEGER 接收的行数
14 BDTA_SEND INTEGER 发送 BDTA 的次数
15 BDTA_RECV INTEGER 接收 BDTA 的次数
16 MAL_ID BIGINT 邮件标识号
17 MPP_EXEC_ID BIGINT MPP 会话句柄上的执行序号,同一个会话上的每个节点上值相同
18 HASH_USED_CELLS BIGINT 哈希表上使用的槽数
19 HASH_CONFLICT BIGINT 哈希表上每个槽的冲突的个数
20 STASK_NO INTEGER 节点所在的子任务号
21 THRD_NO INTEGER 节点所在的线程号
22 MEM_USED BIGINT 操作符使用的内存空间,单位 KB
23 DISK_USED BIGINT 操作符预期使用的磁盘空间,单位 KB
24 DHASH3_USED_CELLS VARCHAR(500) 动态哈希表中使用的槽数
25 DHASH3_CONFLICT VARCHAR(300) 动态哈希表中的冲突情况
26 HASH_SAME_VALUE BIGINT 开启哈希相同值挂链优化时,记录哈希表中相同值的总数,唯一值不纳入计数。例如:哈希表中存在一个 0 和两个相同值链 1—1—1、3—3,此时 HASH_SAME_VALUE=5
27 SORT_BUF_ROWS BIGINT 排序操作符的排序缓冲区存放的总行数(关闭大内存排序时)或每路排序的行数(开启大内存排序时)
28 SORT_BUF_AVG_ROWSIZE BIGINT 排序操作符的排序缓冲区存放数据的预估平均行长,单位 Byte

12.19 V$DPC_MP_CFG

记录 RAFT 组内的 MP 实例信息。由于一个 RAFT 内最多 9 个实例,因此最多 9 条记录。

序号 数据类型 说明
1 INST_NAME VARCHAR(128) 实例名
2 IP_ADDRESS VARCHAR(128) IP 地址
3 MP_PORT SMALLLINT MP_PORT
4 RECONN_TIMEOUT INTEGER 连接 MP 失败时,尝试重连的超时时间,单位为秒。-2 表示无限制(即 MP_RECONN_TIMEOUT 取最大值)。该值由 MP.INI 中参数 MP_RECONN_TIMEOUT 来设置

12.20 V$DPC_QC_HISTORY

记录查询调度总单元 QC 的历史信息。

序号 数据类型 说明
1 SESS_ID BIGINT 和 V$SESSIONS 的 SESS_ID 字段匹配
2 SESS_SEQ INTEGER 和 V$SESSIONS 的 SESS_SEQ 字段匹配
3 EID BIGINT ESESSION 的 ID
4 THRD_ID BIGINT 创建 QC 的线程 ID
5 STMT_ID INTEGER 句柄 ID
6 EXEC_ID BIGINT 执行 ID
7 MPP_EXEC_ID BIGINT 内部执行 ID
8 SQC_EXEC_ID INTEGER 内部执行 ID,当函数调用包含 SQL 时,每一行调用时取值会不同
9 N_STASK INTEGER 子任务的个数
10 IDU_FLAG VARCHAR(6) 增删改的优化标记
11 N_BP INTEGER 计划涉及到的集群中节点个数,可能包含 SP、BP、MP
12 N_HTAB INTEGER 子计划中 HTAB 操作符的个数
13 N_SPL INTEGER 子计划中 SPOOL 操作符的个数
14 N_DPP INTEGER 子计划中涉及的动态分区裁剪参数个数
15 IS_OVER CHAR(1) 是否执行结束。Y 是;N 否

12.21 V$ARCH_STATUS

查询归档状态信息,归档状态是由主库记录和维护的,此视图只在主库上查询有效,备库上的查询结果没有实际意义。

序号 数据类型 说明
1 ARCH_TYPE VARCHAR(256) 归档类型
2 ARCH_DEST VARCHAR(256) 归档目标,本地归档和 REMOTE 归档为归档路径,其他类型为归档目标实例名。
3 ARCH_STATUS VARCHAR(256) 归档状态,Valid 为有效状态,Invalid 为无效状态,ASYNC_SEND 为异步恢复状态。
4 ARCH_SRC VARCHAR(256) 对 REMOTE 归档为源实例名,对其他归档类型为本地实例名

12.22 V$DPC_EGTS_MP_INFO

MP 上记录的各 SP 和 BP 的全局时钟系统(GTS)信息。

序号 列名 列类型 含义
1 RAFT_ID INTEGER SP 和 BP 的 RAFT_ID
2 STAT VARCHAR(20) 状态(OPEN/SHUTDOWN/CONN_LOST)
3 MIN_TID BIGINT 最小 TRXID
4 N_LONG INTEGER 长事务个数
5 LAST_CHECK_TICK BIGINT 上次检查的 TICK 计数
6 PROXY_STAT INTEGER MP 代理故障 SP 的进度状态
7 PROXY_VER INTEGER MP 代理时故障 SP 的网络版本
8 PROXY_TID BIGINT MP 代理时的事务 ID,标识故障 SP 的最大事务 ID
9 PROXY_FLAG INTEGER MP 代理处理时广播 BP 的标记

12.23 V$DPC_ENET_HISTORY

获取 ENET 模块更新各个节点的设置历史。

序号 列名 列类型 含义
1 SELF_RAFT_ID INTEGER 自身的 RAFT_ID
2 SELF_INST_ID INTEGER 自身的 INST_ID
3 DEST_RAFT_ID INTEGER 目标的 RAFT_ID
4 DEST_INST_ID INTEGER 目标的 INST_ID
5 TYPE VARCHAR(20) 操作类型(SET/RELEASE)
6 SITE_ARRD VARBINARY(8) 节点 XSITE 的内存地址
7 DESC VARCHAR(30) 变更原因描述
8 TIME TIMESTAMP 变更发生的时间

12.24 V$ARCH_SYS

获取全局归档配置信息。

序号 列名 列类型 含义
1 ARCH_COUNT INTEGER 归档数目
2 ARCH_CFG_CHANGING INTEGER 归档变更标记
3 ARCH_WAIT_APPLY INTEGER 全局事务一致标记
4 RAFT_SELF_ID INTEGER 自身 RAFT 归档序号,仅 RAFT 归档有效
5 XMAL_IP VARCHAR(64) RAFT 归档通信 IP
6 XMAL_PORT INTEGER RAFT 归档通信端口
7 XMAL_HB_INTERVAL INTEGER RAFT 归档 XMAL 链路心跳检测间隔
8 RAFT_HB_INTERVAL INTEGER RAFT 归档心跳检测间隔
9 RAFT_VOTE_INTERVAL INTEGER RAFT 归档选举超时间隔
10 ARCH_RESERVE_TIME INTEGER 归档保留时间。单位分钟
11 ARCH_LOCAL_SHARE INTEGER 远程归档是否共享其它节点本地归档路径。0:否;1:是
12 ARCH_LOCAL_SHARE_CHECK INTEGER 是否检查远程归档路径和其它节点本地归档路径相等。0:否;1:是

12.25 V$DM_ARCH_INI

归档参数信息。

序号 数据类型 说明
1 ARCH_NAME VARCHAR (128) 归档名称
2 ARCH_TYPE VARCHAR (128) 归档类型
3 ARCH_DEST VARCHAR (512) 对于 LOCAL 归档,表示归档路径;对于 REMOTE 归档,表示本节点归档要发送到的实例名;对于其余类型的归档,表示归档目标实例名
4 ARCH_FILE_SIZE INTEGER 归档文件大小
5 ARCH_SPACE_LIMIT INTEGER 归档文件的磁盘空间限制,单位 MB
6 ARCH_HANG_FLAG INTEGER 如果本地归档时磁盘空间不够,是否让服务器挂起。无实际意义,对本地归档类型和远程归档类型显示为 1,其他归档类型显示为 NULL
7 ARCH_TIMER_NAME VARCHAR (128) 对于异步归档,表示定时器名称;其余类型归档显示 NULL
8 ARCH_IS_VALID CHAR(1) 归档状态,是否有效。0:否;1:是
9 ARCH_WAIT_APPLY INTEGER 在主备系统中,主库发送归档日志给备库之前,是否需要等待备库将上一批日志重演完成。 0:为高性能模式,不用等待重演完成; 1:为数据一致模式,需等待重演完成。 如果为本地归档,因不需要重演,值定为 NULL
10 ARCH_INCOMING_PATH VARCHAR(256) 对 REMOTE 归档,表示远程节点发送过来的归档在本地的保存目录。其余类型归档显示 NULL
11 ARCH_CURR_DEST VARCHAR(256) 当前归档目标实例名。如果备库是 DMDSC 集群,则归档目标是备库控制节点,该字段表示当前被选定为归档目标的节点实例名。备库是单机的情况下,就是指的备库实例名
12 ARCH_FLUSH_BUF_SIZE INTEGER 归档刷盘日志包合并缓存大小。 单位为 KB
13 ARCH_RESERVE_TIME INTEGER 归档保留时间。单位分钟
14 ARCH_LOCAL_SHARE INTEGER 远程归档是否共享其它节点本地归档路径。0:否;1:是
15 ARCH_LOCAL_SHARE_CHECK INTEGER 是否检查远程归档路径和其它节点本地归档路径相等。0:否;1:是
16 ARCH_SEND_DELAY INTEGER 源库到异步备库的归档延时发送时间。单位分钟。取值范围 0~1440。缺省值 0,表示不启用归档延时发送功能
17 ARCH_DEST_IP VARCHAR(64) RAFT 归档目标 IP
18 ARCH_DEST_PORT INTEGER RAFT 归档目标端口
19 ARCH_DEST_ID INTEGER 归档目标多副本节点编号,用于标识多副本 RAFT 组中不同的节点

12.26 V$DPC_ESESS_STMTS

查询 DMDPC 系统内部所有 ESESSION 的所有语句句柄信息。ESESSION 为 SP 和其他节点之间的内部会话。该视图提供给达梦内部开发人员调试之用。

序号 数据类型 说明
1 STMT_ID INTEGER 句柄 ID
2 SESS_ID BIGINT 会话 ID
3 ESESS_ID BIGINT ESESSION 的 ID
4 PLAN_NO INTEGER 计划序号
5 SQC_EXEC_ID BIGINT 语句执行序号
6 N_BOXID_REUSE INTEGER 当前句柄上已分配的 BOXID
7 FREE_FLAG INTEGER 空闲句柄标记

12.27 V$DPC_EXA_INFO

查询当前连接的服务器正在自动处理的异步事务信息。

序号 数据类型 说明
1 TID BIGINT 异步处理事务 ID
2 STATUS INTEGER 事务处理状态
3 BRANCH_STATUS INTEGER 重构异步事务在来源站点的状态
4 CMTSEQ BIGINT 提交序号
5 ACKID BIGINT 异步处理通信标识
6 TICK BIGINT 开始异步处理的时间戳
7 N_RAFT INTEGER 事务涉及的站点数
8 RAFTID_ARR VARCHAR 事务涉及的站点 RAFT ID
9 STATUS_ARR VARCHAR 事务在各站点的分支事务状态

12.28 V$DPC_ROT_INFO

查询集群各个节点已加载的只读表信息。此外,可以通过 SF_GET_EP_SEQNO(ROWID);查看本视图数据所在实例的 RAFT_ID。

序号 数据类型 说明
1 ROT_TID INTEGER 只读表 ID
2 ROT_VERSION INTEGER 只读表版本号
3 TEMP_TID INTEGER 只读表对应的临时表 ID
4 TEMP_VERSION INTEGER 只读表对应的临时表版本号
5 LOAD_TIME DATETIME(0) 加载时间
6 LAST_USED_TIME DATETIME(0) 最后一次使用时间

12.29 V$DPC_ESESS

查询 DMDPC 系统内部所有 ESESSION 的信息。ESESSION 为 SP 和其他节点之间的内部会话。

序号 数据类型 说明
1 EID BIGINT 会话 ID
2 SRC_SITEID INTEGER 对应 SP 的 RAFT_ID
3 BP_CTL_BOXID INTEGER BP 端 ESESS 会话用于接收消息的消息盒子号
4 TRX_BOXID INTEGER SP 上用于处理事务使用的消息盒子号
5 SESS_ID BIGINT 对应会话的 ID
6 M_EID BIGINT 目前未使用(废弃字段),全是 NULL
7 N_SITE INTEGER 缓存的远程站点对象数
8 N_TRX_SITE INTEGER 当前事务涉及的节点个数
9 STHD_GRP_ID INTEGER ESESS 对应的线程池编号,非 ethd 线程为-1
10 THRD_ID INTEGER ESESS 对应的线程号,不与线程关联时为-1

12.30 V$DPC_EDCT_RAFT

查询 DMDPC 系统各节点内存中记录的 RAFT 信息。MP 上的信息对应 DPC_BP_RAFT 系统表的内容。SP 和 BP 上的内容是 MP 发送过来的。

序号 数据类型 说明
1 RAFT_ID INTEGER RAFT 组号
2 DPC_MODE VARCHAR(16) DMDPC 模式
3 IS_VALID CHAR(1) BP 节点是否有效(节点是否可用,0 无效,1 有效)
4 NAME VARCHAR(128) RAFT 组名
5 L_TERM_ID BIGINT 主库的任期号
6 DISCARD_TICK BIGINT 废弃时的 tick 时间值

12.31 V$DPC_EDCT_INSTANCE

查询 DMDPC 系统各节点内存中记录的实例信息。MP 上的信息对应 DPC_INSTANCE 系统表的内容。SP 和 BP 上的内容是 MP 发送过来的。

序号 数据类型 说明
1 RAFT_ID INTEGER 系统内部 RAFT 组号。取值范围:0~1023
2 INST_ID INTEGER 系统内部实例号。取值范围:4096~8191
3 NAME VARCHAR(128) 实例名
4 DPC_MODE VARCHAR(16) DMDPC 模式。取值范围:MP,SP 或 BP
5 XMAL_PORT INTEGER XMAL 通信端口号。用户通过 SP_CREATE_DPC_INSTANCE 中 AP_PORT 注册时配置,取值范围:1024~6553
6 INST_PORT INTEGER 实例端口。用户通过 SP_CREATE_DPC_INSTANCE 中 INST_PORT 注册时配置,取值范围:1024~65534
7 IP_INTERNAL VARCHAR(64) 实例内网 IP 地址
8 IP_EXTERNAL VARCHAR(64) 实例外网 IP 地址
9 SYS_MODE VARCHAR(16) 系统模式
10 SYS_STATUS VARCHAR(16) 系统状态
11 STATUS VARCHAR(16) 实例状态
12 AUX_SP CHAR(1) 是否辅助 SP
13 DISCARD_TICK BIGINT 废弃时的 tick 时间值
14 DESC VARCHAR(256) 描述信息
15 BS_FLAG INTEGER BS 启动标记。0:非 BS;1:BS
16 FAULT_DOMAIN INTEGER 实例对应的容错域 ID。NULL 表示实例不属于任何一个容错域

12.32 V$TABLE_ROWCNT_CACHE

显示 DMDPC 系统中各节点中的缓存表行数情况。

序号 数据类型 说明
1 TAB_ID INTEGER 表 ID
2 ROWCNT BIGINT 表行数
3 ACCESS_NUM INTEGER 访问次数

12.33 V$DPC_TS_MOVE

查询 DMDPC 系统当前表空间迁移进度等信息。

序号 数据类型 说明
1 TS_ID INTEGER 表空间 ID
2 READ_ONLY INTEGER 只读迁移标记。1:只读,0:读写
3 SRC_RAFT_ID INTEGER 表空间迁移源 RAFT_ID
4 DEST_RAFT_ID INTEGER 表空间迁移目标 RAFT_ID
5 BP_TS_CRT_LSN BIGINT 目标 BP 主库创建 TS 后的 CUR_LSN
6 START_TIME DATETIME(0) 开始迁移时间
7 DURING_TIME INTEGER 从开始迁移的持续的时间(秒)
8 PROGRESS_TYPE VARCHAR(128) 当前进行的操作进度类型。PROGRESS_TYPE 为字符串类型,其值包含 2 部分:[当前进度类型:进度值][当前进度序号/迁移总进度值]。 进度类型包括:字典封锁(LOCK_DICT)、表空间清理(PURG_TS)、执行检查点(CHECKPOINT)、文件拷贝(FILE_COPY)、日志重演(APPLY_ARCH)。例如:**[FILE_COPY:1442818560/2097152000(%68)][2/6]**表示处于文件拷贝阶段,已经拷贝的字节数/总字节数(完成百分比),处于 6 阶段中的第 2 阶段; **[APPLY_ARCH:1][3/6]**表示处于重演日志阶段,第 1 次重演,处于 6 阶段中的第 3 阶段

12.34 V$DPC_QC_SCHED_HISTORY

查询 DMDPC 任务调度历史信息。

序号 数据类型 说明
1 MPP_EXEC_ID BIGINT 执行号
2 STMT_ID INTEGER 句柄号
3 EID BIGINT DPC 全局会话 ID
4 STASK_NO INTEGER 子任务号
5 STATUS VARCHAR(8) 调度状态,取值:
NONE:未调度
SCHDLED:已调度
COMPLETE:调度完成
6 EXEC_ID BIGINT VM 执行号

12.35 V$GLOBAL_RAFT_INFO

查询 DMDPC 系统全局多副本信息。仅会打印可正常通信的 MP/BP/BS 库的多副本信息;若节点异常,则不会打印该实例信息;或若 RAFT 组内无有效主库,则对应 RAFT 组中所有节点信息均不会打印。

序号 数据类型 说明
1 INSTANCE_NAME VARCHAR(128) 实例名
2 RAFT_ID INTEGER RAFT 组 ID
3 IS_SHADOW VARCHAR(8) 是否是影子库
4 IS_LEARNER VARCHAR(8) 是否是学习者
5 RAFT_STAT VARCHAR(16) 多副本选举角色
6 TERM_ID INTEGER 任期号
7 LOG_TERM_ID INTEGER 日志任期号
8 SYS_MODE VARCHAR(16) 系统模式
9 SYS_STATUS VARCHAR(16) 系统状态
10 ARCH_STATUS VARCHAR(16) 归档状态。该字段结果在 DMDPC 下,连接主库或 SP 查询有效,连接备库查询无效;在 RAFT 下,连接主库查询有效,连接备库查询无效
11 C_SEQNO BIGINT 已经提交到的日志包序号
12 C_LSN BIGINT 节点已经提交到的 LSN 值
13 H_SEQNO BIGINT 主库已经提交到的日志包序号
14 H_LSN BIGINT 主库节点已经提交到的 LSN 值
15 F_SEQNO BIGINT 已经刷盘的最大日志包序号
16 F_LSN BIGINT 已经刷盘到的最大 LSN 值

12.36 V$DPC_EDCT_FAULT_DOMAIN

查询系统内存中容错域与实例的关系。

序号 数据类型 说明
1 DOMAIN_ID INTEGER 容错域 ID
2 DOMAIN_NAME VARCHAR(128) 容错域名
3 DESCRIPTION VARCHAR(256) 容错域描述

12.37 V$RAFT_SWITCH_INFO

记录多副本当前节点的历史切换信息,直连多副本节点查询。

序号 数据类型 说明
1 SWITCH_STAT VARCHAR(48) 切换目标状态
2 SWITCH_TIME VARCHAR(50) 切换时间
3 LEADER_ID INTEGER 切换完成时的 LEADER_ID

12.38 V$DPC_ESITE

获取各个节点的信息。

序号 数据类型 说明
1 SELF_RAFT_ID INTEGER 自身的 RAFT 组号,用于统合时区分
2 SELF_INST_ID INTEGER 自身的实例号,用于统合时区分
3 DEST_RAFT_ID INTEGER 目标节点的服务器的 RAFT 组号
4 DEST_INST_ID INTEGER 目标节点的实例号
5 DEST_DPC_MODE CHAR(2) 目标节点的 dpc_mode
6 SITE_ID BIGINT 节点 XSITE 的 id
7 SITE_ADDR VARBINARY(8) 节点 XSITE 的内存地址
8 SITE_TYPE VARCHAR(16) 节点 XSITE 的类型(AP、EP)
9 ASITE_CONN_IP VARCHAR(128) 节点 XSITE 连接的 IP(仅 AP)
10 ESITE_ASITE_ID BIGINT 节点 XSITE 的 asite_id(仅 EP)
11 SITE_STAT VARCHAR(16) 节点 XSITE 链路状态(CLOSE/OPEN)
12 SITE_N_LNK INTEGER 节点 XSITE 有效的链路个数
13 ROUTE_PRIORITY INTEGER 目标节点的路由优先级

12.39 V$XBOX

获取并显示系统中所有 XBOX 的槽信息。

序号 数据类型 说明
1 ID INTEGER XBOX ID
2 SLOT_NO INTEGER XBOX 内的槽号
3 LETTER_NUM INTEGER 槽内收到的邮件数
4 FILE_NAME VARCHAR(256) 创建 XBOX 的文件名
5 FILE_LINE INTEGER 创建 XBOX 的文件行号
6 EID BIGINT 使用 XBOX 的 ESESS_ID
7 SIO INTEGER 使用 XBOX 的 ERECV 操作符在计划中的行序号
8 STASK_NO INTEGER 使用 XBOX 的 ERECV 操作符在计划中的子任务号
9 NO_IN_STASK INTEGER 使用 XBOX 的 ERECV 操作符在子任务中的序号
10 DUMP_LEN_BYTES BIGINT XBOX 上使用临时文件保存的邮件总量,单位 BYTE
11 LONG_BYTES BIGINT 槽内缓存的大于 32KB 的消息空间大小
12 SHORT_NUM INTEGER 槽内缓存的 1KB 大小的消息数
13 MIDDLE_NUM INTEGER 槽内缓存的 32KB 大小的消息数
14 LONG_NUM INTEGER 槽内缓存的大于 32KB 大小的消息数
15 DUMP_NUM INTEGER 槽内缓存的需转储的消息数

12.40 GV$DM_INI

DPC 环境下查询所有正常打开实例的 INI 参数。

序号 数据类型 说明
1 INSTANCE_NAME VARCHAR (128) 实例名
2 PARA_NAME VARCHAR (128) 参数名称
3 PARA_VALUE VARCHAR(256) 系统参数值
4 MIN_VALUE VARCHAR(256) 最小值
5 MAX_VALUE VARCHAR(256) 最大值
6 DEFAULT_VALUE VARCHAR(256) 默认值
7 MPP_CHK CHAR(1) 是否检查 MPP 节点间参数一致性。Y 是,N 否
8 SESS_VALUE VARCHAR(256) 会话参数值
9 FILE_VALUE VARCHAR(256) INI 文件中参数值
10 DESCRIPTION VARCHAR(256) 参数描述
11 PARA_TYPE VARCHAR(200) 参数类型
12 SYNC_FLAG VARCHAR(16) 专用于主备环境中,在进行 INI 同步(定时自动同步或者手动执行同步)时,主库根据 SYNC_FLAG 进行判断是否将参数值同步到备库。 取值包括 NOT_SYNC、DSC_SYNC、DW_SYNC、DPC_SYNC、ALL_SYNC。 执行 INI 参数全局同步时,各字段值含义如下: NOT_SYNC:不进行参数同步; DSC_SYNC:仅 DMDSC 环境下进行参数同步; DW_SYNC:仅普通主备/普通 RAFT 主备环境下进行参数同步; DPC_SYNC:仅 DMDPC 环境下进行参数同步; ALL_SYNC:普通主备/RAFT 主备/DSC 集群/DPC 集群环境下均进行参数同步
13 SYNC_LEVEL VARCHAR(16) 专用于主备环境中,标识备库参数是否需要和主库保持同步。 同步的方式有两种:1.服务器定时自动同步,通过 INI 参数 INI_SYNC 进行设置;2.通过 SF_SYNC_INI 函数手动同步。 SYNC_LEVEL 字段值说明如下: NO_SYNC:参数在当前环境不会被同步; CAN_SYNC:参数在当前环境中,可以和主库同步。是否同步,均不影响主备环境的使用; MUST_SYNC:参数在当前环境中,必须和主库保持同步
14 PARA_MODULE VARCHAR(32) 标识参数所属模块,有如下可能取值: files location、instance name、memory pool and buffer、thread、query、select rate、cpu、checkpoint、IO、database、pre-load table、redo log、redo、transaction、security、compatibility、drop table、fast insert、request trace、system trace、ecs、monitor、data watch、for test only、for context index、rdma、configuration file、DSC、mem only、backup and restore
微信扫码
分享文档
扫一扫
联系客服