检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
通常优化器总会选择最优的执行计划,但是众所周知代价估算,尤其是中间结果集的代价估算一般会有比较大的偏差,这种比较大的偏差就可能会导致agg的计算方式出现比较大的偏差,这时候就需要通过best_agg_plan进行agg计算模型的干预。 一般来说,当agg汇聚的收敛度很小时,即结果集的个数在agg之后并
server: No route to host 此问题一般是指定了不可达的地址或者端口导致的。请检查-h参数与-p参数是否添加正确。 gsql: FATAL: Invalid username/password,login denied. 此问题一般是输入了错误的用户名和密码导致的,请联系数据库管理员,确认用户名和密码的正确性。
通常优化器总会选择最优的执行计划,但是众所周知代价估算,尤其是中间结果集的代价估算一般会有比较大的偏差,这种比较大的偏差就可能会导致agg的计算方式出现比较大的偏差,这时候就需要通过best_agg_plan进行agg计算模型的干预。 一般来说,当agg汇聚的收敛度很小时,即结果集的个数在agg之后并
n-condition或者group by列为分布列可以最大程度的实现这点。 从上述描述来看表定义中最重要的一点是分布列的选择。创建表定义一般遵循图1所示流程。表定义在数据库设计阶段创建,在SQL调优过程中进行审视和修改。 图1 表定义流程 审视和修改表定义的具体操作方法,请参见
ryid一般通过•查看当前业务整体运行情况。获取的query_id字段信息。 1 select * from pgxc_wlm_session_statistics where queryid = 实际queryid ; 查看历史SQL的运行信息,实际queryid一般通过•查
DEPENDENCY_NORMAL (n):独立创建的对象之间的一般关系。依赖对象可以在不影响被引用对象的情况下删除。被引用对象只能通过指定CASCADE被删除,这种情况下依赖对象也会被删除。例如:一个表字段对其数据类型有一般依赖关系。 DEPENDENCY_AUTO (a):依赖对象
DEPENDENCY_NORMAL (n):独立创建的对象之间的一般关系。依赖对象可以在不影响被引用对象的情况下删除。被引用对象只能通过指定CASCADE被删除,这种情况下依赖对象也会被删除。例如:一个表字段对其数据类型有一般依赖关系。 DEPENDENCY_AUTO (a):依赖对象
Key(局部聚簇,简称PCK)通过min/max稀疏索引实现事实表快速过滤扫描。PCK的选取遵循以下原则: 【关注】一张表上只能建立一个PCK,一个PCK可以包含多列,但是一般不建议超过2列。 【建议】针对表达式过滤条件列创建PCK(形如col op const,op为操作符 =、>、>=、<=、<,const为常量值)。
n-condition或者group by列为分布列可以最大程度的实现这点。 从上述描述来看表定义中最重要的一点是分布列的选择。创建表定义一般遵循图1所示流程。表定义在数据库设计阶段创建,在SQL调优过程中进行审视和修改。 图1 表定义流程 审视和修改表定义的具体操作方法,请参见
执行方式进行执行。这些特征值就是统计信息。从上面描述可以看出统计信息是查询优化的核心输入,准确的统计信息将帮助优化器选择最合适的查询规划,一般来说通过ANALYZE语法收集整个表或者表的若干个字段的统计信息,周期性地运行ANALYZE,或者在对表的大部分内容做了更改之后马上运行它是个好习惯。
执行方式进行执行。这些特征值就是统计信息。从上面描述可以看出统计信息是查询优化的核心输入,准确的统计信息将帮助优化器选择最合适的查询规划,一般来说通过ANALYZE语法收集整个表或者表的若干个字段的统计信息,周期性地运行ANALYZE,或者在对表的大部分内容做了更改之后马上运行它是个好习惯。
Key(局部聚簇,简称PCK)通过min/max稀疏索引实现事实表快速过滤扫描。PCK的选取遵循以下原则: 【关注】一张表上只能建立一个PCK,一个PCK可以包含多列,但是一般不建议超过2列。 【建议】针对表达式过滤条件列创建PCK(形如col op const,op为操作符 =、>、>=、<=、<,const为常量值)。
meout,在闲置会话超过所设定的时间后服务端将主动关闭连接。 session_timeout默认值为600秒,设置为0表示关闭超时限制,一般不建议设置为0。 session_timeout设置方法如下: 登录GaussDB(DWS)管理控制台。 在左侧导航栏中,单击“专属集群 >
查询pg_session_wlmstat视图,查看状态为running的语句是否个数很少,而且statement_mem字段数值是否较大(单位为MB,一般认为大于max_dynamic_memory 1/3即为大内存语句)。如果都符合就可以判断是此类语句占据内存导致整体运行缓慢。 1 SELECT
请根据业务需求合理选择节点规格。在节点规格列表中展示了每一种节点规格单个节点的vCPU、内存和建议使用场景。 GaussDB(DWS)节点规格价格详情,请参见GaussDB(DWS)价格详情。 GaussDB(DWS)支持的节点规格详情,请参见数据仓库规格。 - 热存储(含缓存) 每节点可用存储容量。 说明:
对按照时间特征存储和访问的大表设计成分区表。 分区键一般选离散度高、常用于查询过滤条件中的时间类型的字段。 分区间隔一般参考高频的查询所使用的间隔,需要注意的是针对列存表,分区间隔过小(例如按小时)可能会导致小文件过多的问题,一般建议最小间隔为按天。 场景6:行存表求count值
索引列宽度(widthOfIndexKey) 过长字段一般都是字符串,这些字段基本不会执行比较操作,且会造成索引体积过大。建议在64字节内。 复制表大小(sizeOfCopyTable) 识别单DN的存储空间大于指定阈值(100MB)的表,建议修改为常用关联字段作为分布列(一般都有一个主键)。 集群支持复
解决办法:请联系技术支持工程师提供技术支持。 GAUSS-04080: "deadlock detected" SQLSTATE: 40P01 错误原因:检测到死锁,这种情况一般是因为业务调度不合理,大量的操作集中到某一段时间导致的。 解决办法:请使用pg_stat_activity 视图来查看、确定引起死锁的进程号,然后执行SELECT
ROW:表示表的数据将以行方式存储。 默认值:ROW COMPRESSION 指定表数据的压缩级别,它决定了表数据的压缩比以及压缩时间。一般来讲,压缩级别越高,压缩比也越大,压缩时间也越长;反之亦然。实际压缩比取决于加载的表数据的分布特征。 取值范围: HStore表列存表的有
成分区表,需要新建分区表,然后把普通表中的数据导入到新建的分区表中。因此在初始设计表时,请根据业务提前规划是否使用分区表。 对表进行分区,一般需要遵循以下原则: 使用具有明显区间性的字段进行分区,比如日期、区域等字段。 分区名称应当体现分区的数据特征。比如关键字+区间特征。 将分