检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
调整策略如下: 调大CN的max_connections会造成并发连接到DN的查询变多,所以需要同步调大DN的max_connections和comm_max_stream。 CN/DN的max_connections一般按照原来的2倍调大,原值比较小的集群可以调节到4倍。 为避
transaction>, hold lockmode (null). 这是由于分布式锁导致的,两个DN节点都锁住了自己的数据块,然后又在等待对方的数据块,所以导致锁超时。 这种行为是两阶段锁的特性,分布式情况下都会面临这样的问题。 处理方法 建议对单表执行MERGE,将并发操作改为串行。 父主题:
bigint 语句执行使用的内部查询ID。 query text 执行的语句。 query_plan text 语句的执行计划。 node_group text 语句所属用户对应的逻辑集群。 pid bigint 语句的后端线程的PID。 lane text 语句执行时所在的快慢车道。 unique_sql_id
bigint 语句执行使用的内部查询ID。 query text 执行的语句。 query_plan text 语句的执行计划。 node_group text 语句所属用户对应的逻辑集群。 pid bigint 语句的后端线程的PID。 lane text 语句执行时所在的快慢车道。 unique_sql_id
gsql:command not found… 原因分析 没有在gsql的bin目录下执行。 未执行环境变量。 处理方法 在客户端目录下执行环境变量,例如客户端在/opt目录下。 1 2 cd /opt source gsql_env.sh 进入gsql的bin目录下,执行gsql命令进行数据库连接。
节点管理看到的磁盘空间是DWS集群内所有的磁盘即系统盘、数据盘加到一起的容量,而在存算一体集群概览里看到的磁盘空间只是集群内能做表数据存储的可用空间,另外DWS集群中表是有备份的副本数的,表的备份数据也是需要占用磁盘存储的。存算分离集群概览中的磁盘空间,为缓存大小,是实际申请的磁盘空间。
it. 原因分析 在实际操作中,索引会由于软件问题或者硬件问题引起崩溃。例如,当索引分裂完而磁盘空间不足、出现页面损坏等问题时,会导致索引损坏。 解决办法 若此表是以pg_cudesc_xxxxx_index进行命名则为列存表,则说明desc表的索引表损坏,通过desc表的索引表表名
压。 原因分析 如果通过单条INSERT INTO语句的方式单并发写数据入库,客户端很可能会出现瓶颈。INSERT是最简单的一种数据写入方式,适合数据写入量不大,并发度不高的场景。 处理方法 如果遇到写数据慢的问题,建议通过以下两种方式进行处理: 建议选择其他更加高效的数据导入方式,例如使用COPY方式导入数据。
of memory”。 原因分析 使用copy命令或者导入数据时,源数据单行数据的大小超过1GB。 由于源文件中的格式符不成对出现,比如引号,文件格式异常导致系统识别的单行数据过大超过1GB。 处理方法 确保源文件中的引号是成对的。 检查创建外表时命令中参数的取值、格式设置是否合理。
解析内存调用栈信息,需要依靠GaussDB源码进行分析,需要将trace文件返回给研发工程师,进行分析。 分析trace文件,需要使用jeprof工具,该工具由Jemalloc生成。在常规使用中,需要依赖perl环境,如果需要生成pdf调用图,需要安装与操作系统匹配的GraphViz工具。 示例 1
Studio服务创建GaussDB(DWS)的OBS外表,并且在创建外表语句中指定OBS文件编码格式是UTF-8,但是导入数据时报错,如何处理? 原因分析 存储在OBS中的源文件含有非UTF-8的数据。 处理方法 排查报错的源文件,检查是否含有非UTF-8的数据,例如中文字符。如果源文件中含有非UTF-8的数据,请
is not enough.”。 原因分析 用户数据库的comm_max_datanode参数为默认值1024,在正常批量业务运行时查到DN之间stream数量大约为600~700,当批量任务运行时如果有临时查询,就会超过上限,导致上述报错。 分析过程 GUC参数comm_max_s
some tables or columns(%s) are not collected. 解决方案:对表执行ANALYZE,以便生成优化的计划。 evel: level GS_225120024 错误码: Statistics in some obs foreign tables(%s)
bigint 语句执行使用的内部查询ID。 query text 执行的语句。 query_plan text 语句的执行计划。 node_group text 语句所属用户对应的逻辑集群。 pid bigint 语句的后端线程的PID。 lane text 语句执行时所在的快慢车道。 unique_sql_id
conf文件中的pgxc_node_name的值,不建议外部使用该参数。 取值范围:0~INT_MAX,单位为毫秒(ms)。 当设置为0时,当前会话不再输出性能日志数据。 当设置为非0时,当前会话按照指定的时间周期进行输出性能日志数据。该参数设置的越小,输出的日志数据越多,对性能的负面影响越大。
查找问题根因并进行调优:通过分析执行计划,找到可能存在的原因,进行针对性的调优,通常为调整数据库级SQL调优参数。 编写更优的SQL:介绍一些复杂查询中的中间临时数据缓存、结果集缓存、结果集合并等场景中的更优SQL语法。 父主题: GaussDB(DWS)性能调优
denied for xxx 原因分析 该用户无对应的权限,无法对表或schema进行操作或访问。 处理方法 使用GRANT语法对表/schema进行赋权,示例: 假设当前有两个用户tom和jerry,如果想要用户jerry能够对当前tom创建的所有表以及将来创建的表都有查询权限,如何处理:
conf文件中的pgxc_node_name的值,不建议外部使用该参数。 取值范围:0~INT_MAX,单位为毫秒(ms)。 当设置为0时,当前会话不再输出性能日志数据。 当设置为非0时,当前会话按照指定的时间周期进行输出性能日志数据。该参数设置的越小,输出的日志数据越多,对性能的负面影响越大。
e语句执行结果的随机性,而这个实际业务中是无法接受的。 解决方案 建议根据业务实际情况调整update语句。比如分析public.t2的字段含义,确定更新的目标字段。针对上述案例,如果期望在a值相等的情况下,把public.t1中字段b更新为public.t2中的最大值,那么可以修改为如下逻辑:
一步操作。 原因分析 在提交扩容前会对必须检查项进行检查,包括资源配额、IAM权限等,如果不通过会禁止提交扩容操作,从而避免扩容失败。 解决办法 配额检查不通过,根据检查项检查对应资源配额是否充足,如果可使用的节点配额不足,用户可以单击“申请扩大配额”,以提工单的形式申请更多节点配额。