检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
现基表快速扫描的索引技术。Partial Cluster Key可以指定多列,但是一般不建议超过2列。PCK适用于列存大表点查询加速。 优化前 创建一个无局部聚簇(以下称为PCK)的列存表orders_no_pck,表定义如下: 执行以下SQL语句,查询某个点查询的执行计划: 1
新增TRY_CAST关键字 新增CONV函数,将给定的数值或者字符串转换成目标进制,并按照字符串的形式输出结果。 新增HEX函数,返回给定的数值或者字符串的十六进制字符串。 新增UNHEX函数,执行HEX(n)的反向操作。 新增SPACE函数,返回指定个数空格组成的字符串。 新增STRCMP函数,比较两个字符串大小。
PRIMARY KEY(`dataType1`) ) comment='表的注释'; ALTER TABLE `public`.`runoob_alter_test` COMMENT '修改后的表的注释'; ALTER TABLE `public`.`runoob_alter_test`
规则3.7 禁止执行不下推的SQL GaussDB(DWS)为分布式架构,SQL语句必须下推才能分利用分布式的计算资源,达到性能最优。 违反规范的影响: 不下推的SQL执行性能差,严重情况会导致CN资源瓶颈,影响整体业务。 方案建议: 不使用不下推的语法和不下推的函数,具体参考语句下推调优。
PG_USER视图提供了访问数据库用户的信息。 表1 PG_USER字段 名称 类型 描述 usename name 用户名。 usesysid oid 此用户的ID。 usecreatedb boolean 用户是否可以创建数据库。 usesuper boolean 用户是否是拥有最高权限的初始系统管理员。
2 输出malloc等调用栈的trace日志。 输出路径为:/proc/pid/cwd指向的目录,pid为gaussdb进程ID。 输出日志命名规则为:jeprof.<pid>.*.heap,其中pid表示GaussDB进程ID,*表示trace日志输出的序号,序号唯一。如:jeprof
足的情况下,能够起到较好的性能提升效果;但是如果在不合适的场景下,或者资源不足的情况下,反而可能引起性能的劣化。同时,生成SMP需要考虑更多的候选计划,将会导致生成时间较长,相比串行场景也会引起性能的劣化。 GaussDB(DWS)的SMP特性由GUC参数query_dop控制,该参数可设置用户自定义的查询并行度。
解决类型选择的问题。根据首选类型和可用的隐含转换,就可能保证有歧义的表达式(那些有多个候选解析方案的)得到有效的方式解决。 所有类型转换规则需遵循以下基本原则: 隐含转换不能有奇怪的或不可预见的输出。 如果一个查询不需要隐含的类型转换,分析器和执行器不应该进行更多的额外操作。即任
name)或者EXCLUDED.colname引用插入的数据。EXCLUDED表示因冲突原本该排除的数据行。 WHERE子句 用于在数据冲突时,判断是否满足指定条件。如果满足,则更新冲突数据。否则忽略。 只有第二种语法形式的冲突更新语法可以指定WHERE子句。即 INSERT INTO
name)或者EXCLUDED.colname引用插入的数据。EXCLUDED表示因冲突原本该排除的数据行。 WHERE子句 用于在数据冲突时,判断是否满足指定条件。如果满足,则更新冲突数据。否则忽略。 只有第二种语法形式的冲突更新语法可以指定WHERE子句。即 INSERT INTO
图2 using_clause-1 对以上语法格式的解释如下: define_variable,用于指定存放单行查询结果的变量。 USING IN bind_argument,用于指定存放传递给动态SQL值的变量,即在dynamic_select_string中存在占位符时使用。
在做场景性能测试时,发现某场景大部分时间是CN端在做window agg,占到总执行时间95%以上,系统资源不能充分利用。研究发现该场景的特点是:将两列分别求sum作为一个子查询,外层对两列的和再求和后做trunc,然后排序。可以尝试将语句改写为子查询,使排序下推。 优化前 表结构如下所示: 1 2 CREATE
ROUNDROBIN表 GaussDB(DWS)支持建立roundrobin表,根据实际需要设置表1中的参数table.type进行配置。设置table.type=ROUND-ROBIN。 输入示例 1 2 3 4 5 CREATE TABLE charge_snapshot (
IN。只有OUT模式的参数后面能跟VARIADIC。并且OUT和INOUT模式的参数不能用在RETURNS TABLE的过程定义中。 argname 参数的名字。 取值范围:字符串,要符合标识符的命名规范。 argtype 参数的数据类型。 取值范围:可用的数据类型。 argna
现基表快速扫描的索引技术。Partial Cluster Key可以指定多列,但是一般不建议超过2列。PCK适用于列存大表点查询加速。 优化前 创建一个无局部聚簇(以下称为PCK)的列存表orders_no_pck,表定义如下: 执行以下SQL语句,查询某个点查询的执行计划: 1
则保留旧缓存值。 OWNED BY 将序列和一个表的指定字段进行关联。这样,在删除指定字段或其所在表的时候会自动删除已关联的序列。 如果序列已经和表有关联后,使用OWNED BY参数后新的关联关系会覆盖旧的关联。 关联的表和序列的所有者必须是同一个用户,并且在同一个模式中。 使用OWNED
ts_lexize(dict regdictionary, token text) returns text[]如果输入的token可以被词典识别,那么ts_lexize返回词素的数组;如果token可以被词典识别但它是一个停用词,则返回空数组;如果是一个不可识别的词则返回NULL。 比如:
当语句执行时间超过statement_timeout参数设置的时间时,该语句将会报错并退出执行。 处理方法 方式一:通过控制台修改statement_timeout参数。 登录GaussDB(DWS)管理控制台。 在左侧导航栏中,单击“集群管理”。 在集群列表中找到所需要的集群,单击集群名称,进入集群“基本信息”页面。
config_parameter 可设置的运行时参数的名称。可用的运行时参数可以使用SHOW ALL命令查看。 部分通过SHOW ALL查看的参数不能通过SET设置。如max_datanodes。 value config_parameter的新值。可以声明为字符串常量、标识符、数字,或者逗号分隔的列表。DE
bigint 顺序扫描抓取的有live数据行的数目。 idx_scan bigint 索引扫描的次数。 idx_tup_fetch bigint 索引扫描抓取的有live数据行的数目。 n_tup_ins bigint 插入的行数。 n_tup_upd bigint 更新的行数。 n_tup_del