检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
案例:改建分区表 逻辑上的一张表根据某种策略分成多个物理块进行存储,这张逻辑上的表称之为分区表,每个物理块则称为一个分区。一般对数据和查询都有明显区间段特征的表使用分区策略可通过较小不必要的数据扫描,从而提升查询性能 在查询时,可通过分区剪枝技术尽可能减少底层数据扫描,即缩小表的
UPDATE&DELETE操作规范 建议3.5 避免并发UPDATE/DELETE行存表的同一行 违反规范的影响: 并发UPDATE/DELETE行存表可能导致行锁阻塞和分布式死锁风险,导致业务报错和性能下降。 方案建议: 按主键或分布列进行分组UPDATE/DELETE,组间并行,组内串行。
dfs space cache hash table failed" SQLSTATE: 42704 错误原因:系统内部错误。创建全局的HDFS连接缓存失败。 解决办法:请联系技术支持工程师提供技术支持。 GAUSS-04746: "The number of files exceeds
ate_series生成的语句。 手动增删计划支持存算分离集群,历史版本需要联系技术支持人员升级使用。 自动弹性增删仅支持存算分离集群和ECS规格的集群,且仅9.1.0及以上集群版本支持。 存算分离集群包年/包月集群在定时增加逻辑集群时自动扩容节点,节点按需计费。 手动添加定时增删计划
"MinWords should be less than MaxWords" SQLSTATE: 22023 错误原因:输入的min_words比max_words大。 解决办法:调整min_words和max_words。 GAUSS-03982: "MinWords should
”、“标准数仓”即通过以上规格区分。 实时数仓需要支持将insert+upsert+update等操作实时快速入库,数据来源于上游的其他数据库或者应用,同时要求入库后的数据能及时查询,并对于查询的效率要求很高。 目前GaussDB(DWS)传统数仓已有的行存表或者列存表都无法同时
HLL操作符 HLL类型支持如下操作符: 表1 HLL操作符 HLL操作符 描述 返回值类型 示例 = 比较hll或hll_hashval的值是否相等。 bool hll 1 2 3 4 5 SELECT (hll_empty() || hll_hash_integer(1)) =
GaussDB(DWS) SQL开发规范 DDL操作规范 INSERT操作规范 UPDATE&DELETE操作规范 SELECT操作规范 父主题: GaussDB(DWS)开发设计规范
聚合函数 hll_add_agg(hll_hashval) 描述:把哈希后的数据按照分组放到hll中。 返回值类型:hll 示例: 准备数据。 1 2 3 4 CREATE TABLE t_id(id int); INSERT INTO t_id VALUES(generate_series(1
慢SQL分析 查询最耗性能的SQL 分析作业是否被阻塞 父主题: 性能诊断
以在WHERE子句中使用其他查询的结果,从而更好地过滤数据。但是子查询可能会导致查询性能问题和代码难阅读和理解。 所以在GaussDB等数据库中使用SQL子查询时,请结合实际业务情况进行操作。 父主题: 查询GaussDB(DWS)数据
CN:显示所有DN上用户使用内存的累积和。 total_memory integer 资源池使用的内存大小,单位为MB。值为0表示未限制最大可用内存,其限制取决于数据库最大可用内存max_dynamic_memory。具体的计算公式为: total_memory = max_dynamic_memory *
tion是返回值为布尔型的任意表达式,任何不满足该条件的行都不会被检索。 WHERE子句中可以通过指定"(+)"操作符的方法将表的连接关系转换为外连接。但是不建议用户使用这种用法,因为这并不是SQL的标准语法,在做平台迁移的时候可能面临语法兼容性的问题。同时,使用"(+)"有很多限制:
创建普通表 定义普通表 管理列 管理约束 管理索引 父主题: 表管理
案例:调整中间表存储方式 在GaussDB(DWS)中行存表使用行执行引擎,列存表使用列执行引擎。如果一个SQL语句涉及的表既有行存表又有列存表,系统会自动选择行执行引擎。由于列执行引擎的性能(除indexscan相关的算子)比行执行引擎性能要好很多,因此一般建议使用列存表。特别
案例:调整中间表存储方式 在GaussDB(DWS)中行存表使用行执行引擎,列存表使用列执行引擎。如果一个SQL语句涉及的表既有行存表又有列存表,系统会自动选择行执行引擎。由于列执行引擎的性能(除indexscan相关的算子)比行执行引擎性能要好很多,因此一般建议使用列存表。特别
GLOBAL_WORKLOAD_SQL_COUNT GLOBAL_WORKLOAD_SQL_COUNT视图显示集群中所有Workload控制组内SQL语句执行次数的统计信息,包括SELECT、UPDATE、INSERT、DELETE语句的执行次数统计,以及DDL、DML、DCL类型语句的执行次数统计。
案例:使排序下推 在做场景性能测试时,发现某场景大部分时间是CN端在做window agg,占到总执行时间95%以上,系统资源不能充分利用。研究发现该场景的特点是:将两列分别求sum作为一个子查询,外层对两列的和再求和后做trunc,然后排序。可以尝试将语句改写为子查询,使排序下推。
INSERT操作规范 规则3.3 INSERT多VALUES批插场景使用COPY替代 违反规范的影响: 多VALUES解析耗时、耗资源,入库效率低。 方案建议: 前端使用COPY类接口(如JDBC的CopyManger等)代替INSERT VALUES。 建议3.4 禁止针对普通列存表进行实时INSERT操作
文本检索调试函数 ts_debug([ config regconfig, ] document text, OUT alias text, OUT description text, OUT token text, OUT dictionaries regdictionary[]