更新时间:2022-01-17 GMT+08:00
分享

其它函数

  • pgxc_pool_check()

    描述:检查连接池中缓存的连接数据是否与pgxc_node一致。

    返回值类型:boolean

  • pgxc_pool_reload()

    描述:更新连接池中缓存的连接信息。

    返回值类型:boolean

  • pgxc_lock_for_backup()

    描述:备份前给集群加锁,备份是为了在新增节点上执行恢复操作。

    返回值类型:boolean

    pgxc_lock_for_backup是在使用gs_dump或gs_dumpall工具备份集群前,用来给集群加锁的。当给集群加锁后,不允许有改变系统结构的操作。该函数不影响DML语句。

  • pg_pool_validate(clear boolean, co_node_name cstring)

    描述:清理CN上无效的后台线程(这些后台线程持有无效的pooler连接,这里无效的pooler连接指的是连接到当前DN备实例的连接)。

    返回值类型:record

  • pg_nodes_memory()

    描述:查看所有节点的内存占用。

    返回值类型:record

  • table_skewness(text)

    描述:查看表数据在所有节点的占比。

    参数:表示待查询表的表名,为text类型。

    返回值类型:record

  • table_distribution(schemaname text, tablename text)

    描述:查看指定表在各个节点上占用的存储空间。

    参数:表示待查询表的模式名和表名,均为text类型。

    返回值类型:record

    • 使用本函数查询指定表存储分布信息,需要具备指定表的SELECT权限。
    • table_distribution性能比table_skewness更优,尤其是在大集群大数据量场景下,请优先考虑使用table_distribution函数。
    • 当使用table_distribution并希望直观的看到空间占比时,可使用dnsize/(sum(dnsize) over ())的方式查看出具体的占比情况。
  • table_distribution(regclass)

    描述:查看指定表在各个节点上占用的存储空间。

    参数:表示待查询表的表名或OID,表名可以有模式名限定。为regclass类型。

    返回值类型:record

    • 使用本函数查询指定表存储分布信息,需要具备指定表的SELECT权限。
    • table_distribution性能比table_skewness更优,尤其是在大集群大数据量场景下,请优先考虑使用table_distribution函数。
    • 当使用table_distribution并希望直观的看到空间占比时,可使用dnsize/(sum(dnsize) over ())的方式查看出具体的占比情况。
  • table_distribution()

    描述:查看当前库中所有表在各节点的存储空间分布情况。

    返回值类型:record

    • 使用本函数涉及全库表信息查询,需要具备管理员权限。
    • 当前基于table_distribution()函数,GaussDB(DWS)提供视图PGXC_GET_TABLE_SKEWNESS进行数据倾斜查询,建议在数据库中表数量(小于10000)较少的场景直接使用。
  • plan_seed

    描述:获取前一次查询语句的seed值(内部使用)。

    返回值类型:int

  • pg_stat_get_env

    描述:提供获取当前节点的环境变量信息。

    返回值类型:record

  • pg_stat_get_thread

    描述:提供当前节点下所有线程的状态信息。

    返回值类型:record

  • pgxc_get_os_threads

    描述:提供当前集群中所有正常节点下的线程状态信息。

    返回值类型:record

  • pg_stat_get_sql_count

    描述:提供当前节点中所有用户执行的SELECT/UPDATE/INSERT/DELETE/MERGE INTO语句的计数和响应时间的统计结果以及DDL、DML、DCL语句的计数结果。

    返回值类型:record

  • pgxc_get_sql_count

    描述:提供当前集群所有节点中所有用户执行的SELECT/UPDATE/INSERT/DELETE/MERGE INTO语句的计数和响应时间的统计结果以及DDL、DML、DCL语句的计数结果。

    返回值类型:record

  • pgxc_get_workload_sql_count

    描述:提供当前集群所有CN上所有Workload控制组内执行的SELECT/UPDATE/INSERT/DELETE语句的计数统计结果以及DDL、DML、DCL类型语句的计数统计结果。

    返回值类型:record

  • pgxc_get_workload_sql_elapse_time

    描述:提供当前集群所有CN上所有Workload控制组内执行的SELECT/UPDATE/INSERT/DELETE语句的响应时间统计结果。

    返回值类型:record

  • get_instr_unique_sql

    描述:提供当前节点中收集的Unique SQL的信息。如果是CN节点,将返回该CN上收集的Unique SQL的完整信息,即会收集其他CN和DN上对应Unique SQL的信息并进行汇总展示;如果是DN节点,将返回本DN节点上的Unique SQL信息。详见GS_INSTR_UNIQUE_SQL。

    返回值类型:record

  • reset_instr_unique_sql(cstring, cstring, INT8)

    描述:清理已收集的Unique SQL信息。输入参数含义如下:

    • GLOBAL/LOCAL:清理范围为所有节点或当前节点。
    • ALL/BY_USERID/BY_CNID/BY_GUC:ALL表示清理所有,BY_USERID/BY_CNID表示按照USERID或CNID进行清理,BY_GUC表示清理操作是由GUC参数instr_unique_sql_count设置值变小引起的。
    • 第三个参数值对应第二个参数设置,ALL/BY_GUC的情况下该值无意义。

    返回值类型:bool

  • pgxc_get_instr_unique_sql

    描述:提供集群中所有CN上收集的Unique SQL的完整信息。该函数只能在CN上执行。

    返回值类型:record

  • get_instr_unique_sql_remote_cns

    描述:提供集群中除正在执行此函数的CN之外的所有CN上收集的Unique SQL的完整信息。该函数只能在CN上执行。

    返回值类型:record

  • pgxc_get_node_env

    描述:提供获取集群中所有节点的环境变量信息。

    返回值类型:record

  • gs_switch_relfilenode

    描述:交换两个表或分区的元信息(重分布工具内部使用,用户直接使用会有错误信息提示)。

    返回值类型:int

  • copy_error_log_create()

    描述:创建COPY FROM容错机制所需要的错误表(public.pgxc_copy_error_log)。

    返回值类型:boolean

    • 此函数会尝试创建public.pgxc_copy_error_log表,表的详细信息请参见表1
    • 在relname列上创建B-tree索引,并REVOKE ALL on public.pgxc_copy_error_log FROM public对错误表进行权限控制(与COPY语句权限一致)。
    • 由于尝试创建的public.pgxc_copy_error_log定义是一张行存表,因此集群上必须支持行存表的创建才能够正常运行此函数,并使用后续的COPY容错功能。需要特别注意的是,enable_hadoop_env这个GUC参数开启后会禁止在集群内创建行存表()。
    • 此函数自身权限为Sysadmin及以上(与错误表、COPY权限一致)。
    • 若创建前public.pgxc_copy_error_log表已存在或者copy_error_log_relname_idx索引已存在,则此函数会报错回滚。
    表1 错误表public.pgxc_copy_error_log信息

    列名称

    类型

    描述

    relname

    varchar

    表名称。以模式名.表名形式显示。

    begintime

    timestamp with time zone

    出现数据格式错误的时间。

    filename

    character varying

    出现数据格式错误的数据源文件名。

    rownum

    bigint

    在数据源文件中,出现数据格式错误的行号。

    rawrecord

    text

    在数据源文件中,出现数据格式错误的原始记录。为了防止字段长度过大,限制字段的长度不超过1024 byte。

    detail

    text

    详细错误信息。

  • pv_compute_pool_workload()

    描述:提供云上加速集群当前负载信息。

    返回值类型:record

  • pg_stat_get_status(tid, num_node_display)

    描述:查询当前实例中工作线程(backend thread)以及辅助线程(auxiliary thread)的阻塞等待情况,其返回结果的详细含义参见PG_THREAD_WAIT_STATUS视图。输入参数含义如下:

    • tid:表示线程ID,bigint类型。如果为NULL,则返回所有工作线程和辅助线程的等待情况;否则只返回指定ID线程的等待情况。
    • num_node_display:integer类型。对于等待状态为“wait node”的记录,指定其wait_status列中显示的被等待节点的最大数量。
      • 如果为空或者小于等于0,则只显示一个被等待节点。
      • 如果大于20,则最多只显示20个节点。
      • 如果大于0且小于等于20,则显示数量为num_node_display和实际被等待节点数量的最小者。例如查询“SELECT * from pg_stat_get_status(NULL, 10)”,如果实际被等待节点数量大于10,则只随机显示其中10个节点名称,如果实际被等待节点数量小于等于10,则显示全部被等待节点名称。当实际被等待节点数量大于显示数量时,被显示的节点名称为随机挑选。

    返回值类型:record

  • pgxc_get_thread_wait_status(num_node_display)

    描述:查询集群各个节点上所有SQL语句产生的线程之间的调用层次关系,以及各个线程的阻塞等待状态。其返回结果的详细含义参见PGXC_THREAD_WAIT_STATUS视图。输入参数num_node_display的类型和含义与上述函数pg_stat_get_status相同。

    返回值类型:record

分享:

    相关文档

    相关产品

close