大数据
-
GaussDB(DWS)性能调优:关联计算倾斜优化-对端非倾斜小表做广播
1. 背景信息 原始SQL文本 insert into dwlar.dwl_fmd_ar_bal_calc_f (adj_category_id, agent_distribution_cust_key, aging_day_count, ar_invoice_pay_plan_id, ar_uccid, biz_scr_code, bu_key, coa_bu_key, coa…
-
GaussDB(DWS)性能调优:agg计算倾斜优化-单层agg相关的redistribute倾斜
1. 背景信息 原始SQL文本 insert into DWLFCA.DWL_FCA_CONSOL_F(bu_code, businesscode, businessdesc, buy_from_ic, company_code, data_category_code, data_produce_type_flag, data_source_flag, del_flag, dep…
-
GaussDB(DWS)性能调优:宽表加工优化方案
1. 业务背景 宽表加工性能慢,在Gauss(DWS)中可以使用DWS的轻量化更新的黑科技实现性能成倍提升 2. 原始逻辑 事实表和维表关联之后插入目标表 dm_cbg_ci_inv_dtl_w_f INSERT INTO dm_cbg_ci_inv_dtl_w_f SELECT F.P…
-
GaussDB(DWS)性能调优:倾斜优化-表达式计算倾斜的hint优化
1. 原始SQL SELECT TMP4.TAX_AMT, CATE.L1_PUR_ITEM_CATG_CN_NAME || '-' || CATE.L2_PUR_ITEM_CATG_CN_NAME || '-' || CATE.L3_PUR_ITEM_CATG_CN_NAME AS PRODUCT_CATEGORY, MATE.ITEM_CODE AS PRODUCT_CODE, INVE…
-
GaussDB(DWS)运维 -- sequence常见运维操作
【DWS的序列概述】 GaussDB(DWS)是一个share nothing架构的产品,seqeunce编号需要通过GTM统一分配。集群规模越大、节点数越多、sequence调用越频繁,sequnce对GTM的压力就越大。对于seqeunce的使用一般有如下建议 …
-
GassDB(DWS)功能 -- 中文排序
中文字段按照拼音排序 postgres=# CREATE TABLE public.dim_stu_pinyin_info (id bigint, name text) DISTRIBUTE BY REPLICATION; CREATE TABLE postgres=# INSERT INTO public.dim_stu_pinyin_info VALUES (1, '雷…
-
GaussDB(DWS)性能调优:generate_series导致的执行不下推问题优化方案
部分业务场景下存在记录或者维度扩展,这时候会使用函数generate_series生成序列号,作为维度扩展编号,但是在DWS里面类似generate_series这种多结果集函数会导致部分执行下推,导致性能劣化。本文主要是针对这种场…
-
GaussDB(DWS)性能调优:Oracle关联更新SQL语句优化
Oracle中习惯使用如下的关联查询实现表的更新动作 UPDATE boss_t_glbalance t1 SET(t1.aviamt, t1.lasttime) = ( SELECT t1.aviamt + t2.amt, '2020-03-25 11:15:17' FROM ( SELECT a.toctrlid,sum(a.amt) amt, a.p…
-
GaussDB(DWS)性能调优:常见不等值关联转等值关联
预置条件 CREATE TABLE st( zjhm text, -- 证件号码 rzsj timestamptz, -- 入住时间 ldsj timestamptz -- 离店时间 ); 场景1 ABS < interval 原始SQL SELECT * FROM st a, st b WHERE abs(a.rzsj-b.rzsj) < …
-
GaussDB(DWS)性能调优:row_number()场景性能优化
很多业务场景里面有类似如下SQL实现获取每组的最大或者最小值的目的 SELECT s.reconcile_method, s.trans_entity_bank_acc_id FROM ( SELECT tms.trans_entity_bank_acc_id, tms.source AS reconcile_method FROM (…