YMatrix 文档
关于 YMatrix
标准集群部署
数据写入
数据迁移
数据查询
运维监控
参考指南
- MPP 架构
- 镜像分布策略
- 持续聚集
- 滑动窗口
- 全文搜索
- Grafana 监控指标解读
- Prometheus 监控指标解读
- 术语表
-
工具指南
- mxaddmirrors
- mxbackup
- mxbench
- mxdeletesystem
- mxgate
- mxinitstandby
- mxmoveseg
- mxpacklogs
- mxrecover
- mxrestore
- mxshift
- mxstart
- mxstate
- mxstop
- gpconfig
- pgvector
-
数据类型
-
存储引擎
-
执行引擎
-
系统配置参数
- 使用说明(必读)
- 参数目录
- 文件位置参数
- 连接与认证参数
- 客户端连接默认值参数
- 错误报告和日志参数
- 资源消耗参数
- 查询调优参数
- 运行中的统计信息参数
- 自动清理参数
- 数据表参数
- 锁管理参数
- 资源管理参数
- YMatrix 数据库集群参数
- 预写式日志参数
- 复制参数
- PL/JAVA 参数
- 版本和平台兼容性参数
-
索引
-
扩展
SQL 参考
- ABORT
- ALTER_DATABASE
- ALTER_EXTENSION
- ALTER_EXTERNAL_TABLE
- ALTER_FOREIGN_DATA_WRAPPER
- ALTER_FOREIGN_TABLE
- ALTER_FUNCTION
- ALTER_INDEX
- ALTER_RESOURCE_GROUP
- ALTER_RESOURCE_QUEUE
- ALTER_ROLE
- ALTER_RULE
- ALTER_SCHEMA
- ALTER_SEQUENCE
- ALTER_SERVER
- ALTER_TABLE
- ALTER_TABLESPACE
- ALTER_TYPE
- ALTER_USER_MAPPING
- ALTER_VIEW
- ANALYZE
- BEGIN
- CHECKPOINT
- COMMIT
- COPY
- CREATE_DATABASE
- CREATE_EXTENSION
- CREATE_EXTERNAL_TABLE
- CREATE_FOREIGN_DATA_WRAPPER
- CREATE_FOREIGN_TABLE
- CREATE_FUNCTION
- CREATE_INDEX
- CREATE_RESOURCE_GROUP
- CREATE_RESOURCE_QUEUE
- CREATE_ROLE
- CREATE_RULE
- CREATE_SCHEMA
- CREATE_SEGMENT_SET
- CREATE_SEQUENCE
- CREATE_SERVER
- CREATE_TABLE
- CREATE_TABLE_AS
- CREATE_TABLESPACE
- CREATE_TYPE
- CREATE_USER_MAPPING
- CREATE_VIEW
- DELETE
- DROP_DATABASE
- DROP_EXTENSION
- DROP_EXTERNAL_TABLE
- DROP_FOREIGN_DATA_WRAPPER
- DROP_FOREIGN_TABLE
- DROP_FUNCTION
- DROP_INDEX
- DROP_RESOURCE_GROUP
- DROP_RESOURCE_QUEUE
- DROP_ROLE
- DROP_RULE
- DROP_SCHEMA
- DROP_SEGMENT_SET
- DROP_SEQUENCE
- DROP_SERVER
- DROP_TABLE
- DROP_TABLESPACE
- DROP_TYPE
- DROP_USER_MAPPING
- DROP_VIEW
- END
- EXPLAIN
- GRANT
- INSERT
- LOAD
- LOCK
- REINDEX
- RELEASE_SAVEPOINT
- RESET
- REVOKE
- ROLLBACK_TO_SAVEPOINT
- ROLLBACK
- SAVEPOINT
- SELECT INTO
- SET ROLE
- SET TRANSACTION
- SET
- SHOW
- START TRANSACTION
- TRUNCATE
- UPDATE
- VACUUM
常见问题(FAQ)
matrixmgr 扩展
本文档介绍了 matrixmgr
扩展的主要组成及功能。
matrixmgr
扩展主要用于 YMatrix 的查询统计功能。YMatrix 集群初始化后会默认创建 matrixmgr
数据库和 matrixmgr
扩展。部署成功后,在 matrixmgr
数据库的 matrixmgr_internal
模式下会出现如下表和视图:
视图 | 描述 |
---|---|
mxstat_execute | 这张视图提供了 SQL 语句的执行情况,比如 SQL 语句执行的节点实例,用户,查询文本,执行的最长最短时间,以及最慢语句的各阶段时间戳。你可以通过这张表看来不同 SQL 语句执行时间,以及分析最慢语句的情况 |
mxstat_usage | 这张视图提供了SQL语句执行时计算资源的消耗情况 |
mx_query_execute_history | 这张视图是 mxstat_execute 视图的历史信息 |
mx_query_usage_history | 这张视图是 mxstat_usage 视图的历史信息 |
mx_querytext | 这张视图存储了 queryid 与 querytext 的映射,你可以通过这个映射获取 SQL 文本 |
mx_query_execute_history_with_text | 将 mx_query_execute_history 与 mx_querytext 通过 queryid 进行关联后的视图 |
进入 matrixmgr
数据库可查看以下视图:
mxstat_execute
该视图展示了 5 分钟内的查询统计信息。
字段名 | 类型 | 描述 |
---|---|---|
seg | integer | 查询生成并下发计划节点编号 |
userid | oid | 用户 OID |
dbid | oid | 数据库 OID |
queryid | bigint | 查询 ID,由扩展生成,用来将相同类型的查询进行归类 |
nestlevel | integer | 嵌套深度 |
query | text | 查询文本 |
calls_begin | bigint | 查询启动次数 |
calls_alive | bigint | 上次收集历史信息时,处于执行状态的查询数 |
calls_end | bigint | 查询正常结束次数 |
total_time | double precision | 该类查询总执行时间,单位毫秒 |
min_time | double precision | 该类型查询最短执行时间,单位毫秒 |
max_time | double precision | 该类查询最长执行时间,单位毫秒 |
mean_time | double precision | 该类查询平均执行时间,单位毫秒 |
stddev_time | double precision | 该类查询执行时间标准差,单位毫秒 |
sample_planid | bigint | 执行计划 ID |
sample_start | timestamp with time zone | 最慢查询启动时间戳 |
sample_parse_done | timestamp with time zone | 最慢查询完成解析时间戳 |
sample_plan_done | timestamp with time zone | 最慢查询生成计划时间戳 |
sample_exec_start | timestamp with time zone | 最慢查询开始执行时间戳 |
sample_exec_end | timestamp with time zone | 最慢查询执行完毕时间戳 |
mxstat_usage
该视图展示了 5 分钟内的查询资源消耗信息。
字段名 | 类型 | 描述 |
---|---|---|
seg | integer | 查询执行节点编号 |
userid | oid | 用户 OID |
dbid | oid | 数据库 OID |
queryid | bigint | 查询 ID,由扩展生成,用来将相同类型的查询进行归类 |
nestlevel | integer | 嵌套深度 |
rows | bigint | 该语句检索或影响的行总数 |
shared_blks_hit | bigint | 该语句造成的共享块缓冲命中总数 |
shared_blks_read | bigint | 该语句读取的共享块的总数 |
shared_blks_dirtied | bigint | 该语句弄脏的共享块的总数 |
shared_blks_written | bigint | 该语句写入的共享块的总数 |
local_blks_hit | bigint | 该语句造成的本地块缓冲命中总数 |
local_blks_read | bigint | 该语句读取的本地块的总数 |
local_blks_dirtied | bigint | 该语句弄脏的本地块的总数 |
local_blks_written | bigint | 该语句写入的本地块的总数 |
temp_blks_read | bigint | 该语句读取的临时块的总数 |
temp_blks_written | bigint | 该语句写入的临时块的总数 |
blk_read_time | double precision | 该语句花在读取块上的总时间,以毫秒计 |
blk_write_time | double precision | 该语句花在写入块上的总时间,以毫秒计 |
ru_utime | double precision | 用户态 CPU 时间 |
ru_stime | double precision | 系统态 CPU 时间 |
ru_maxrss | bigint | 实际使用物理内存,包含共享库占用的内存,单位 KB |
ru_ixrss | bigint | 集成共享内存大小 |
ru_idrss | bigint | 集成非共享数据大小 |
ru_isrss | bigint | 集成非共享堆栈大小 |
ru_minflt | bigint | 缺页中断的次数,且处理这些中断不需要进行 I/O |
ru_majflt | bigint | 缺页中断的次数,且处理这些中断需要进行 I/O |
ru_nswap | bigint | 交换空间 |
ru_inblock | bigint | 文件系统需要进行输入操作的次数 |
ru_oublock | bigint | 文件系统需要进行输出操作的次数 |
ru_msgsnd | bigint | 消息发送数量 |
ru_msgrcv | bigint | 消息接收数量 |
ru_nsignals | bigint | 接收信号数量 |
ru_nvcsw | bigint | 因进程自愿放弃处理器时间片而导致的上下文切换的次数 |
ru_nivcsw | bigint | 因进程时间片使用完毕或被高优先级进程抢断导致的上下文切换的次数 |
其他视图
- mx_query_execute_history:该视图为分区视图,是
mxstat_execute
视图的历史信息收集,默认5
分钟一次。其结构和mxstat_execute
视图一致,只是多了一个ts_bucket
字段,记录收集的时间点。 - mx_query_usage_history:该视图为分区视图,是
mxstat_usage
视图的历史信息收集,默认5
分钟一次。其结构和mxstat_usage
视图一致,只是多了一个ts_bucket
字段,记录收集的时间点。 - mx_querytext:存储
queryid
与querytext
的映射,和其他历史信息收集表一样,周期存储,目的是使历史查询可以获取 SQL 文本。 - mx_query_execute_history_with_text:将
mx_query_execute_history
与mx_querytext
通过queryid
进行关联后的视图。同时读取历史查询统计信息和 SQL 文本。