子查询语句块在优化器进行优化重写时发生提升,则该block_name会与leading中block_name不同。 index表示使用indexscan或indexonlyscan的hint时,指定的索引名称,当前只能指定一个。
PGXC_GET_TABLE_SKEWNESS PGXC_GET_TABLE_SKEWNESS视图展示当前库中表的数据分布倾斜情况。需要有系统管理员权限或预置角色gs_role_read_all_stats权限才可以访问此视图。 表1 PGXC_GET_TABLE_SKEWNESS
execution_time bigint 查询执行器内的SQL执行时间,DDL语句、以及某些不经过执行器执行的语句(例如Copy语句)不计数(单位:微秒)。 parse_time bigint SQL解析时间(单位:微秒)。
PGXC_LOCK_CONFLICTS PGXC_LOCK_CONFLICTS视图提供集群中有冲突的锁的信息。 当某一个锁正在等待另一个锁,或正在被另一个锁等待,即该锁是有冲突的。 目前,PGXC_LOCK_CONFLICTS视图只收集locktype为relation、partition
PGXC_OS_RUN_INFO PGXC_OS_RUN_INFO视图显示集群中各节点上操作系统运行的状态信息,除新增node_name(节点名称)字段外,其余字段内容和PV_OS_RUN_INFO视图相同。需要有系统管理员权限或预置角色gs_role_read_all_stats
PGXC_RUNNING_XACTS PGXC_RUNNING_XACTS视图主要功能是显示集群中各个节点运行事务的信息,字段内容和PG_RUNNING_XACTS相同。 表1 PGXC_RUNNING_XACTS字段 名称 类型 描述 handle integer 事务在GTM对应的句柄
GLOBAL_TABLE_CHANGE_STAT GLOBAL_TABLE_CHANGE_STAT视图显示当前数据库中所有表格(不包括外表)变更情况。表示次数的各字段为实例启动以来的累计值。 表1 GLOBAL_TABLE_CHANGE_STAT字段 名称 类型 描述 schemaname
在弹出的“下载确认”提示框中,单击“确定”后,密钥会直接保存到浏览器默认的下载文件夹中。 为防止访问密钥泄露,建议您将其保存到安全的位置。 如果用户在此提示框中单击“取消”,则不会下载密钥,后续也将无法重新下载。如果需要使用访问密钥,可以重新创建新的访问密钥。
cidr和inet操作符 操作符<<,<<=,>>,>>=对子网包含进行测试。它们只考虑两个地址的网络部分(忽略任何主机部分),然后判断其中一个网络是等于另外一个网络,还是另外一个网络的子网。 < 描述:小于 示例: 1 2 3 4 5 SELECT inet '192.168.1.5
文本检索操作符 @@ 描述:tsvector类型的词汇与tsquery类型的词汇是否匹配 示例: 1 2 3 4 5 SELECT to_tsvector('fat cats ate rats') @@ to_tsquery('cat & rat') AS RESULT; result
Roaring Bitmap操作符 DWS自8.1.3集群版本开始,支持高效的位图处理操作符,可用于用户画像,精准营销等场景,极大的提高了查询性能。 = 描述:比较两个roaringbitmap是否相等。 返回值类型:bool 示例: 1 2 3 4 5 6 7 8
创建和管理DWS定时任务 DWS支持用户创建定时任务,当设置的任务时间点到达后可以自动触发任务的执行,从而可以减少用户运维的工作量。 数据库兼容Oracle定时任务功能主要通过DBMS.JOB高级包提供的接口,可以实现定时任务的创建、任务到期自动执行、任务删除、修改任务属性(包括:
DWS数据脱敏 DWS提供列级别的数据脱敏(Dynamic Data Masking)功能。针对某些敏感信息(如身份证号、手机号、银行卡号等),通过应用脱敏函数进行原始数据的变形改写,实现敏感隐私数据的可靠保护,从而增强产品在数据安全和隐私保护方面的能力。 创建表的数据脱敏策略 DWS
可以使用SELECT * FROM pg_get_keywords()查询DWS的关键字,或者在《数据仓库服务SQL语法参考》中“关键字”章节中查看。 【建议】避免使用双引号括起来的字符串来定义数据库对象名称,DWS中使用双引号将数据库对象名称括起来时表示对大小写敏感。
加载驱动 在创建数据库连接之前,需要先加载数据库驱动程序。 加载驱动有两种方法: 在代码中创建连接之前任意位置隐含装载:Class.forName("org.postgresql.Driver"); 在JVM启动时参数传递:java -Djdbc.drivers=org.postgresql.Driver
Join方式的Hint 功能描述 指明Join使用的方法,可以为Nested Loop,Hash Join和Merge Join。 语法格式 1 [no] nestloop|hashjoin|mergejoin([@block_name] table_list) 参数说明 no表示
指定了分布列,如果优化器估算后发现不需要重分布,则指定的分布列无效。 建议 通常优化器会根据统计信息选择一组不倾斜的分布键进行数据重分布。当默认选择的分布键有倾斜时,可以手动指定重分布的列,避免数据倾斜。
配置参数的hint 功能描述 指明计划生成时配置参数的值,又称作guc hint。 注意事项 如果hint设置的配置参数在语句级别生效,则该hint必须写在顶层查询中,而不能写在子查询中。对于UNION、INTERSECT、EXCEPT和MINUS语句,可以将在语句级别的guc hint
Plan Hint实际调优案例 本节以TPC-DS标准测试的Q24的部分语句为例,在1000X,24DN环境上,说明使用plan hint进行实际调优的过程。示例如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
执行动态非查询语句 语法 语法请参见图1。 图1 noselect::= using_clause子句的语法参见图2。 图2 using_clause-2 对以上语法格式的解释如下: USING IN bind_argument用于指定存放传递给动态SQL值的变量,在dynamic_noselect_string