文档中心MogDBMogDB StackUqbar
v3.1

文档:v3.1

支持的版本:

其他版本:

统计信息函数(三)

  • DBE_PERF.get_summary_statio_user_tables()

    描述:MogDB内汇聚命名空间中所有用户关系表的IO状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_stat_db_cu()

    描述:视图查询MogDB各个节点,每个数据库的CU命中情况,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_stat_all_indexes()

    描述:汇聚所有节点数据库中每个索引的统计信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_summary_stat_all_indexes()

    描述:统计所有节点数据库中每个索引的统计信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_stat_sys_tables()

    描述:汇聚各节点pg_catalog、information_schema模式的所有命名空间中系统表的统计信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_summary_stat_sys_tables()

    描述:统计各节点pg_catalog、information_schema模式的所有命名空间中系统表的统计信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_stat_sys_indexes()

    描述:汇聚各节点pg_catalog、information_schema模式中所有系统表的索引状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_summary_stat_sys_indexes()

    描述:统计各节点pg_catalog、information_schema模式中所有系统表的索引状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_stat_user_tables()

    描述:汇聚所有命名空间中用户自定义普通表的状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_summary_stat_user_tables()

    描述:统计所有命名空间中用户自定义普通表的状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_stat_user_indexes()

    描述:汇聚所有数据库中用户自定义普通表的索引状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_summary_stat_user_indexes()

    描述:统计所有数据库中用户自定义普通表的索引状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_stat_database()

    描述:汇聚所有节点数据库统计信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_stat_database_conflicts()

    描述:统计所有节点数据库统计信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_stat_xact_all_tables()

    描述:汇聚命名空间中所有普通表和toast表的事务状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_summary_stat_xact_all_tables()

    描述:统计命名空间中所有普通表和toast表的事务状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_stat_xact_sys_tables()

    描述:汇聚所有节点命名空间中系统表的事务状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_summary_stat_xact_sys_tables()

    描述:统计所有节点命名空间中系统表的事务状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_stat_xact_user_tables()

    描述:汇聚所有节点命名空间中用户表的事务状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_summary_stat_xact_user_tables()

    描述:统计所有节点命名空间中用户表的事务状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_stat_user_functions()

    描述:汇聚所有节点命名空间中用户定义函数的事务状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_stat_xact_user_functions()

    描述:统计所有节点命名空间中用户定义函数的事务状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_stat_bad_block()

    描述:汇聚所有节点表、索引等文件的读取失败信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_file_redo_iostat()

    描述:统计所有节点表、索引等文件的读取失败信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_file_iostat()

    描述:汇聚所有节点数据文件IO的统计,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_locks()

    描述:汇聚所有节点的锁信息,查询该函数必须具有sysadmin和monadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_replication_slots()

    描述:汇聚所有节点上逻辑复制信息,查询该函数必须具有sysadmin和monadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_bgwriter_stat()

    描述:汇聚所有节点后端写进程活动的统计信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_replication_stat()

    描述:汇聚各节点日志同步状态信息,如发起端发送日志位置、收端接收日志位置等,查询该函数必须具有sysadmin和monadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_transactions_running_xacts()

    描述:汇聚各节点运行事务的信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_summary_transactions_running_xacts()

    描述:统计各节点运行事务的信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_transactions_prepared_xacts()

    描述:汇聚各节点当前准备好进行两阶段提交的事务的信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_summary_transactions_prepared_xacts()

    描述:统计各节点当前准备好进行两阶段提交的事务的信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_summary_statement()

    描述:汇聚各节点历史执行语句状态信息,查询该函数必须具有monitor admin和sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_statement_count()

    描述:汇聚各节点SELECT、UPDATE、INSERT、DELETE,响应时间信息(TOTAL、AVG、MIN、 MAX),查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_config_settings()

    描述:汇聚各节点GUC参数配置信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_wait_events()

    描述:汇聚各节点wait events状态信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_statement_responsetime_percentile()

    描述:获取MogDB SQL响应时间P80、P95分布信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_summary_user_login()

    描述:统计MogDB各节点用户登入登出次数信息,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.get_global_record_reset_time()

    描述:汇聚MogDB统计信息重置(重启、主备倒换、数据库删除)时间,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.track_memory_context(context_list text)

    描述:设置需要统计内存申请详细信息的内存上下文。入参为内存上下文的名称,使用“,”分隔,如“ThreadTopMemoryContext, SessionCacheMemoryContext”,注意该内存上下文名称是上下文敏感的。此外,单个内存上下文的长度为63,超过的部分会被截断。而且一次能够统计的内存上下文上限为16个,设置超过16个内存上下文会设置失败。每一次调用该函数都会将上次统计的结果清空,当入参指定为“”时,表示取消该统计功能。只有初始用户(super user)或者具有monadmin权限的用户可以执行该函数。

    返回值类型:boolean

  • DBE_PERF.track_memory_context_detail()

    描述:获取DBE_PERF.track_memory_context函数指定的内存上下文的内存申请详细信息。返回值的定义见视图DBE_PERF.track_memory_context_detail。只有初始用户(super user)或者具有monadmin权限的用户可以执行该函数。

    返回值类型:record

  • pg_stat_get_mem_mbytes_reserved(tid)

    描述:统计资源管理相关变量值,仅用于定位问题使用。

    参数:线程id。

    返回值类型:text

  • gs_wlm_user_resource_info(name text)

    描述:查询具体某个用户的资源限额和资源使用情况。

    返回值类型:record

  • pg_stat_get_file_stat()

    描述:通过对数据文件IO的统计,反映数据的IO性能,用以发现IO操作异常等性能问题。

    返回值类型: record

  • pg_stat_get_redo_stat()

    描述:用于统计会话线程日志回放情况。

    返回值类型: record

  • pg_stat_get_status(int8)

    描述:可以检测当前实例中工作线程(backend thread)以及辅助线程(auxiliary thread)的阻塞等待情况。

    返回值类型:record

  • get_local_rel_iostat()

    描述:查询当前节点的数据文件IO状态累计值。

    返回值类型:record

  • DBE_PERF.get_global_rel_iostat()

    描述:汇聚所有节点数据文件IO的统计,查询该函数必须具有sysadmin权限。

    返回值类型:record

  • DBE_PERF.global_threadpool_status()

    描述:显示在所有节点上的线程池中工作线程及会话的状态信息。函数返回信息具体字段GLOBAL_THREADPOOL_STATUS字段。

    返回值类型:record

  • remote_bgwriter_stat()

    描述:显示数据库所有实例的bgwriter线程刷页信息,候选buffer链中页面个数,buffer淘汰信息(本节点除外、DN上不可使用)。

    返回值类型:record

  • pv_os_run_info

    描述:显示当前操作系统运行的状态信息,具体字段信息参考GS_OS_RUN_INFO。

    参数:nan

    返回值类型:setof record

  • pv_session_stat

    描述:以会话线程或AutoVacuum线程为单位,统计会话状态信息,具体字段信息参考GS_SESSION_STAT。

    参数:nan

    返回值类型:setof record

  • pv_session_time

    描述:用于统计会话线程的运行时间信息,及各执行阶段所消耗时间,具体字段信息参考GS_SESSION_TIME。

    参数:nan

    返回值类型:setof record

  • pg_stat_get_db_temp_bytes

    描述:用于统计通过数据库查询写入临时文件的数据总量。计算所有临时文件,不论为什么创建临时文件,而且不管log_temp_files设置。

    参数:oid

    返回值类型:bigint

  • pg_stat_get_db_temp_files

    描述:通过数据库查询创建的临时文件数量。计算所有临时文件,不论为什么创建临时文件(比如排序或者哈希),而且不管log_temp_files设置。

    参数:oid

    返回值类型:bigint

  • remote_candidate_stat()

    描述:用于显示数据库所有实例的检查点信息和各类日志刷页情况(本节点除外),集中式不支持。

    返回值类型:record

  • dbe_perf.gs_stat_activity_timeout(int)

    描述:获取当前节点上执行时间超过超时阈值的查询作业信息。需要GUC参数track_activities设置为on才能正确返回结果。超时阈值的取值范围是0~2147483。

    返回值类型:setof record

    名称 类型 描述
    database name 用户会话连接的数据库名称。
    pid bigint 后台线程ID。
    sessionid bigint 会话ID。
    usesysid oid 登录该后台的用户OID。
    application_name text 连接到该后台的应用名。
    query text 该后台正在执行的查询。
    xact_start timestamptz 启动当前事务的时间。
    query_start timestamptz 开始当前查询的时间。
    query_id bigint 查询语句ID。
  • gs_wlm_user_resource_info(name text)

    描述:查询具体某个用户的资源限额和资源使用情况。普通用户只能查询到自己相关的信息,管理员权限的用户可以查看全部用户的信息。

    返回值类型:record

  • create_wlm_instance_statistics_info

    描述:将当前实例的历史监控数据进行持久化保存。

    参数:nan

    返回值类型:integer

  • gs_session_memory

描述:统计Session级别的内存使用情况,包含执行作业在数据节点上Postgres线程和Stream线程分配的所有内存。

img 说明:

若GUC参数enable_memory_limit=off,该函数不能使用。

返回值类型:record

表 8 返回值说明

名称 类型 描述
sessid text 线程启动时间+线程标识。
init_mem integer 当前正在执行作业进入执行器前已分配的内存,单位MB。
used_mem integer 当前正在执行作业已分配的内存,单位MB。
peak_mem integer 当前正在执行作业已分配的内存峰值,单位MB。
  • gs_wlm_persistent_user_resource_info()

    描述:将当前所有的用户资源使用统计信息归档到gs_wlm_user_resource_history系统表中,只有sysadmin有权限查询。

    返回值类型:record

  • create_wlm_operator_info(int flag)

    描述:将当前内存中记录的TopSQL算子级别相关统计信息清理,当传入的参数大于0时,会将这部分信息归档到gs_wlm_operator_info和gs_wlm_ec_operator_info中,否则不会归档。该函数只有sysadmin权限的用户可以执行。

    返回值类型:int

  • GS_ALL_NODEGROUP_CONTROL_GROUP_INFO(text)

描述:提供了所有逻辑数据库实例的控制组信息。该函数在调用的时候需要指定要查询逻辑数据库实例的名称。例如要查询'installation'逻辑数据库实例的控制组信息:

SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('installation')

返回值类型:record

函数返回字段如下:

名称 类型 描述
name text 控制组的名称。
type text 控制组的类型。
gid bigint 控制组ID。
classgid bigint Workload所属Class的控制组ID。
class text Class控制组。
workload text Workload控制组。
shares bigint 控制组分配的CPU资源配额。
limits bigint 控制组分配的CPU资源限额。
wdlevel bigint Workload控制组层级。
cpucores text 控制组使用的CPU核的信息。
  • gs_total_nodegroup_memory_detail

    描述:返回当前数据库逻辑数据库使用内存的信息,单位为MB得到一个逻辑数据库。

    返回值类型:setof record

  • local_redo_time_count()

    描述:返回本节点各个回放线程的各个流程的耗时统计(仅在备机上有有效数据)。

    返回值如下:

    local_redo_time_count返回参数说明。

    字段名 描述
    thread_name 线程名字
    step1_total step1的总时间,每个线程对应的流程如下:
    极致RTO:
    - batch redo:从队列中获取一条日志
    - redo manager:从队列中获取一条日志
    - redo worker:从队列中获取一条日志
    - trxn manager:从队列中读取一条日志
    - trxn worker:从队列中读取一条日志
    - read worker:从文件中读取一次xlog page(整体)
    - read page worker:从队列中获取一个日志
    - startup:从队列中获取一个日志
    并行回放:
    - page redo:从队列中获取一条日志
    - startup:读取一条日志
    step1_count step1的统计次数
    step2_total step2的总时间,每个线程对应的流程如下:
    极致RTO:
    - batch redo:处理日志(整体)
    - redo manager:处理日志(整体)
    - redo worker:处理日志(整体)
    - trxn manager:处理日志(整体)
    - trxn worker:处理日志(整体)
    - redo worker:读取xlog page耗时
    - read page worker:生成和发送lsn forwarder
    - startup:check stop(是否回放到指定位置)
    并行回放:
    - page redo:处理日志(整体)
    - startup:check stop(是否回放到指定位置)
    step2_count step2的统计次数
    step3_total step3的总时间,每个线程对应的流程如下:
    极致RTO:
    - batch redo:更新standbystate
    - redo manager:数据日志处理
    - redo worker:回放page也日志(整体)
    - trxn manager:更新flush lsn
    - trxn worker:回放日志处理
    - redo worker:推进xlog segment
    - read page worker:获取一个新的item
    - startup:redo delay(延迟回放特性等待时间)
    并行回放:
    - page redo:更新standbystate
    - startup:redo delay(延迟回放特性等待时间)
    step3_count step3的统计次数
    step4_total step4的总时间,每个线程对应的流程如下:
    极致RTO:
    - batch redo:解析xlog
    - redo manager:DDL处理
    - redo worker:读取数据page页
    - trxn manager:同步等待时间
    - trxn worker:更新本线程lsn
    - read page worker:将日志放入分发线程
    - startup:分发(整体)
    并行回放:
    - page redo:undo 日志回放
    - startup:分发(整体)
    step4_count step4的统计次数
    step5_total step5的总时间,每个线程对应的流程如下:
    极致RTO:
    - batch redo:分发给redo manager
    - redo manager:分发给redo worker
    - redo worker:回放数据page页的日志
    - trxn manager:分发给trxn worker
    - trxn worker:强同步wait时间
    - read page worker:更新本线程lsn
    - startup:日志decode
    并行回放:
    - page redo:sharetrxn 日志回放
    - startup:日志回放
    step5_count step5的统计次数
    step6_total step6的总时间,每个线程对应的流程如下:
    极致RTO:
    - redo worker:回放非数据页page日志
    - trxn manager:全局lsn更新
    - read page worker:日志crc校验
    并行回放:
    - page redo:synctrxn 日志回放
    - startup:强同步等待
    step6_count step6的统计次数
    step7_total step7的总时间,每个线程对应的流程如下:
    极致RTO:
    redo worker:fsm更新
    并行回放:
    page redo:single 日志回放
    step7_count step7的统计次数
    step8_total step8的总时间,每个线程对应的流程如下:
    极致RTO:
    redo worker:强同步等待
    并行回放:
    page redo:all workers do 日志回放
    step8_count step8的统计次数
    step9_total step9的总时间,每个线程对应的流程如下:
    极致RTO:

    并行回放:
    page redo:muliti workers do 日志回放
    step9_count step9的统计次数
  • local_xlog_redo_statics()

    描述:返回本节点已经回放的各个类型类型的日志统计信息(仅在备机上有有效数据)。

    返回值如下:

    表 9 local_xlog_redo_statics返回参数说明

    字段名 描述
    xlog_type 日志类型
    rmid resource manager id
    info xlog operation
    num 日志个数
    extra 针对page回放日志和xact日志有有效值。page页回放日志标识从磁盘读取page的个数。xact日志表示删除文件的个数。
  • gs_get_shared_memctx_detail(text)

    描述:返回指定内存上下文上的内存申请的详细信息,包含每一处内存申请所在的文件、行号和大小(同一文件同一行大小会做累加)。只支持查询通过pg_shared_memory_detail视图查询出来的内存上下文,入参为内存上下文名称(即pg_shared_memory_detail返回结果的contextname列)。查询该函数必须具有sysadmin权限或者monitor admin权限。

    返回值类型:setof record

    名称 类型 描述
    file text 申请内存所在文件的文件名。
    line int8 申请内存所在文件的代码行号。
    size int8 申请的内存大小,同一文件同一行多次申请会做累加。

    说明:该视图不支持release版本小型化场景。

  • gs_get_session_memctx_detail(text)

    描述:返回指定内存上下文上的内存申请的详细信息,包含每一处内存申请所在的文件、行号和大小(同一文件同一行大小会做累加)。仅在线程池模式下生效。只支持查询通过gs_session_memory_context视图查询出来的内存上下文,入参为内存上下文名称(即gs_session_memory_context返回结果的contextname列)。查询该函数必须具有sysadmin权限或者monitor admin权限。

    返回值类型:setof record

    名称 类型 描述
    file text 申请内存所在文件的文件名。
    line int8 申请内存所在文件的代码行号。
    size int8 申请的内存大小,同一文件同一行多次申请会做累加。

    说明:该视图仅在线程池模式下生效,且该视图不支持release版本小型化场景。

  • gs_get_thread_memctx_detail(tid,text)

    描述:返回指定内存上下文上的内存申请的详细信息,包含每一处内存申请所在的文件,行号和大小(同一文件同一行大小会做累加)。只支持查询通过gs_thread_memory_context视图查询出来的内存上下文,第一个入参为线程id(即gs_thread_memory_context返回数据的tid列),第二个参数为内存上下文名称(即gs_thread_memory_context返回数据的contextname列)。查询该函数必须具有sysadmin权限或者monitor admin权限。

    返回值类型:setof record

    名称 类型 描述
    file text 申请内存所在文件的文件名。
    line int8 申请内存所在文件的代码行号。
    size int8 申请的内存大小,单位为byte,同一文件同一行多次申请会做累加。

    说明:该视图不支持release版本小型化场景。

  • DBE_PERF.standby_statement_history(bool [, time1, time2])

    参数:

    • bool only_slow:是否仅查询慢SQL,true为是,false或NULL为查询全部SQL。

    • VARIADIC timestamptz finish_time: 可选输入,最多输入两个时间time1, time2,表示查询的SQL的finish_time所属时间段。

    描述:备机中用来查询FULL SQL记录的函数,主机通过表statement_history进行查询,备机通过此函数进行查询。只有初始用户或者具有monadmin权限的用户可以执行该函数。

    返回值类型:record,同表statement_history。

    说明

    • 第一个bool参数的说明: true表示仅查询慢sql,相当于 select .. where is_slow_sql = true; false或NULL表示查询全部SQL,相当于不对is_slow_sql进行过滤。

    • 两个时间参数time1 time2的说明:表示查询的SQL的finish_time所属时间段, 分别表示起始与终止时间, 输入NULL或者不输入表示没有限制, 功能等同与 select .. where finish_time between time1 and time2。

    • 备机上数据并非存在表里,不存在start_time列的索引,推荐使用参数对finish_time进行条件查找,内部有对这进行一些性能的优化。但注意修改了系统时间可能会导致此功能不准确。

    • 查询结果基本会是按照finish_time自动进行降序(新到旧)排序的。

    • 除了FunctionScan算子计算过程本身之外,对于数据的扫描会额外占用16或32M内存来做一个临时buffer。

    • 此函数的稳定性等级为'v'。

    • 由于备机Full SQL采用异步下盘方式,所以用户SQL信息存储时刻可能有所滞后,建议客户查询此接口适当扩大时间查询范围。

Copyright © 2011-2024 www.enmotech.com All rights reserved.