检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
42804 错误原因:数组元素的类型不一致。 解决办法:检查输入参数。 GAUSS-03098: "insufficient data left in message" SQLSTATE: 22P03 错误原因:message中剩余的长度小于message首获取的长度值。 解决办法:检查当前字符串。
检查语句中是否存在聚集函数的嵌套调用;2.修改聚集函数的嵌套结构"。 GAUSS-00237: "aggregate function calls cannot contain window function calls" SQLSTATE: 42803 错误原因:不支持的语法。 解决办法:修改SQL
分析执行计划图1可知,在顺序扫描阶段耗时较多。 多表JOIN中,由于表PS.SDR_WEB_BSCRNC_1DAY的JOIN列“BSCRNC_ID”存在大量空值,JOIN性能差。 建议在语句中手动添加JOIN列的非空判断,修改后的语句如下所示。 1 2 3 4 5 6 7 8 9 10 11 12
分析作业是否被阻塞 数据库系统运行时,在某些业务场景下查询语句会被阻塞,导致语句运行时间过长,可以强制结束有问题的会话。 操作步骤 查看阻塞的查询语句及阻塞查询的表、模式信息。 1 2 3 4 5 6 7 8 9 10 11 SELECT w.query as waiting_query
a、Oracle和MySQL等多种兼容模式。 建议2.4 存在关联计算的对象创建在同一个DATABASE中 违反规则的影响: 跨库访问无论使用哪种方案,性能均劣于同一DATABASE内的关联操作。 方案建议: 创建多个DATABASE的场景,将需要执行关联计算的对象,创建在同一DATABASE中。
TABLESPACE对象设计规范 规则2.8 禁止自定义TABLESPACE表空间 违反规则的影响: 分布式场景建表使用自定义表空间,导致表数据无法按照各DN分布式存储,出现存储倾斜。 方案建议: 创建表对象使用内置默认表空间。 父主题: GaussDB(DWS)对象设计规范
有的方案,根据数据的hash值进行重分布;而对于倾斜数据(即等于0的数据),则通过轮询发送的方式,均衡地发送到所有节点。通过这样的方式,解决了倾斜数据分布不均衡的问题。 同时,为了保证结果的正确性,需要对t表做相应的处理。对于t表中等于0(s.x表中的倾斜值)的数据做广播,对于其
磁盘时延高会导致集群性能下降,影响数据的读写速度,可能对业务产生影响。 可能原因 数据库处于业务高峰,存在大量的读写请求,导致磁盘响应慢,时延较高。 处理步骤 进入集群 > 专属集群页面,单击指定集群所在行操作列的“监控面板”按钮进入触发告警的集群的监控面板。 在左侧导航栏选择“监控>节点监控”,进入
对复杂SQL语句进行拆分。 对于过于复杂并且不易通过以上方法调整性能的SQL可以考虑拆分的方法,把SQL中某一部分拆分成独立的SQL并把执行结果存入临时表,拆分常见的场景包括但不限于: 作业中多个SQL有同样的子查询,并且子查询数据量较大。 Plan cost计算不准,导致子查询hash
bind_argument,用于指定存放传递给存储过程参数值的变量。bind_argument前的修饰符与对应参数的修饰符一致。 示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
通常优化器总会选择最优的执行计划,但是众所周知代价估算,尤其是中间结果集的代价估算一般会有比较大的偏差,这种比较大的偏差就可能会导致agg的计算方式出现比较大的偏差,这时候就需要通过best_agg_plan进行agg计算模型的干预。 一般来说,当agg汇聚的收敛度很小时,即结果集的个数在ag
TABLESPACE对象设计规范 规则2.8 禁止自定义TABLESPACE表空间 违反规则的影响: 分布式场景建表使用自定义表空间,导致表数据无法按照各DN分布式存储,出现存储倾斜。 方案建议: 创建表对象使用内置默认表空间。 父主题: GaussDB(DWS)对象设计规范
curosorid 执行的游标ID DBMS_SQL.DEFINE_COLUMN 该函数用来定义从给定游标返回的列,该接口只能应用于SELECT定义的游标中。定义的列通过查询列表的相对位置来标识,传入变量的数据类型决定了该列被定义的类型。 DBMS_SQL.DEFINE_COLUMN函数的原型为:
可单击最右的监控按钮,查看最近1/3/12/24小时的磁盘性能指标。 如果数据盘使用率出现短时间内上升然后恢复正常的情况,则说明是业务执行过程中的临时冲高,可通过2调整告警阈值的方式减少告警的上报。 如果存在数据盘的使用率超过90%的情况,通常会触发只读,同时写类型业务报错“cannot
通常优化器总会选择最优的执行计划,但是众所周知代价估算,尤其是中间结果集的代价估算一般会有比较大的偏差,这种比较大的偏差就可能会导致agg的计算方式出现比较大的偏差,这时候就需要通过best_agg_plan进行agg计算模型的干预。 一般来说,当agg汇聚的收敛度很小时,即结果集的个数在ag
请使用数据库管理员用户给普通用户或角色赋予使用外表的权限,示例如下: 1 ALTER USER user_name USEFT; 修改用户或角色权限等信息的详细内容请参见ALTER USER或者ALTER ROLE。 对普通用户或角色赋予使用外表的权限后即可创建外表。 父主题: 账号/权限/密码
磁盘I/O利用率高会影响数据的读取和写入性能,从而影响集群性能。 大量的磁盘写入会占用磁盘容量,当磁盘容量高于90%会造成集群只读等。 可能原因 用户业务高峰,存在大量的读取或写入。 复杂语句执行造成大量下盘。 Scan算子扫描等。 处理步骤 进入专属集群 > 集群列表页面,单击指定集群所在行操作
只创建必要的索引,创建索引必须选择合适的列和顺序 违反规范的影响: 冗余索引浪费空间,索引多影响入库效率。 组合索引中列顺序错误,影响查询效率。 最佳实践: 索引的使用需兼顾以下条件: 索引列必须是常用于过滤条件或JOIN关联条件的列。 索引列必须是DISTINCT值多的列。 创建
curosorid 执行的游标ID DBMS_SQL.DEFINE_COLUMN 该函数用来定义从给定游标返回的列,该接口只能应用于SELECT定义的游标中。定义的列通过查询列表的相对位置来标识,传入变量的数据类型决定了该列被定义的类型。 DBMS_SQL.DEFINE_COLUMN函数的原型为:
整个队列大小的0.25倍),会淘汰到A1out(实际并不存储数据到缓存,只是A1in队列淘汰的延长记忆),等A1out队列中的block被命中时,才会插入到Am队列。在Am队列中的数据,是最热的数据。 上述LRU2Q的淘汰策略对普通查询来说已经足够了,但是可能会存在的场景是:用户