天天看點

開發指南—變量—計算層變量

變量名 是否重新開機 預設值 範圍 備注
PLAN_CACHE TRUE [TURE|FALSE] 計劃緩存的開關
ENABLE_RECYCLEBIN FALSE 開啟資源回收筒的開關
SHOW_TABLES_CACHE 是否對show tables結果做緩存
MERGE_CONCURRENT 全并行執行開關,主要影響DDL和全下推的簡單查詢的并行執行度
MERGE_UNION 預設關閉,打開意味着實體SQL不做union優化,且将串行執行下推的實體SQL
MERGE_UNION_SIZE -1 [0-10000] 通過union合并實體SQL的數量,預設結合連接配接池可用連接配接數自适應推導
TABLE_META_CACHE_EXPIRE_TIME 300 [0-180000] 中繼資料緩存過期時間
COLUMN_LABEL_INSENSITIVE [FALSE|TRUE] 傳回列大小寫是否敏感
RECORD_SQL 審計日志開關
SOCKET_TIMEOUT 900000 [0~3600000] 實體SQL逾時時間
TRANSACTION_POLICY TSO [XA|TSO|TSO_READONLY] 事務政策
SHARE_READ_VIEW [TRUE|FALSE] 共享ReadView開關
ENABLE_TRX_SINGLE_SHARD_OPTIMIZATION 事務單分片優化開關
GET_TSO_TIMEOUT 10 [1-1800] 擷取TSO時間戳逾時時間
MAX_TRX_DURATION 28800 [1-180000] 事務實體逾時時間
TRANSACTION_ISOLATION REPEATABLE_READ [READ_UNCOMMITTED|READ_COMMITTED|REPEATABLE_READ|SERIALIZABLE] 事務隔離級别
GROUP_CONCURRENT_BLOCK 非MPP模式下分庫級别執行政策
SEQUENTIAL_CONCURRENT_POLICY 非MPP模式下單并發執行政策
DML_SKIP_DUPLICATE_CHECK_FOR_PK DML過程中是否跳過主鍵的沖突檢查
DML_SKIP_CRUCIAL_ERR_CHECK DML過程中是否允許有DML報錯的事務繼續送出
DML_USE_RETURNING 是否使用 returning 優化
BROADCAST_DML 是否允許廣播表的寫入不走分布式事務
SEQUENCE_STEP 10000 [1-10000000] SEQUENCE步長,預設為10萬
MERGE_DDL_TIMEOUT DDL實體連接配接逾時時間, 預設是0,不逾時
MERGE_DDL_CONCURRENT ddl是否采用全并行模式, 預設庫級并發
SLOW_SQL_TIME 1000 慢SQL門檻值
LOAD_DATA_BATCH_INSERT_SIZE 1024 LOAD DATA 每次batch insert的記錄條數
LOAD_DATA_CACHE_BUFFER_SIZE 60 LOAD DATA 緩存大小, 預設60Mb,主要做流控
MAX_ALLOWED_PACKET 16777216 [4194304-33554432] 最大包大小
KILL_CLOSE_STREAM 是否開啟實體連接配接流式早停功能
ALLOW_SIMPLE_SEQUENCE 是否允許使用simple sequence
MAX_PARAMETERIZED_SQL_LOG_LENGTH 5000 [1-1000000] 參與參數化SQL日志列印的最大長度
FORBID_EXECUTE_DML_ALL 是否禁止全表删除/更新
GROUP_SEQ_CHECK_INTERVAL [1-36000] 檢查插入顯式值的周期/間隔,機關秒
JOIN_BLOCK_SIZE [1-100000] 在非動态裁剪下BKAJOIN執行時的IN Values個數
LOOKUP_JOIN_MAX_BATCH_SIZE 6400 BKAJOIN執行時的最大IN Values個數
LOOKUP_JOIN_MIN_BATCH_SIZE 100
PURGE_TRANS_INTERVAL 事務日志清理間隔
PURGE_TRANS_BEFORE 1800 清理多久之前的事務日志
ENABLE_BACKGROUND_STATISTIC_COLLECTION 是否允許統計資料采集
GENERAL_DYNAMIC_SPEED_LIMITATION [-1-10000000] 資料回填、校驗動态限速調整,-1為預設限制
PARALLELISM [1-1024] 單機并行的并行度,預設是由規格推導出來
LOGICAL_DB_TIME_ZONE SYSTEM [SYSTEM|±HH:mm] 資料庫時區
MPP_PARALLELISM MPP執行模式的并發度,預設是由規格推導出來
DATABASE_PARALLELISM [0-1024] 單個查詢在一個DN上允許同時下發SQL的數量,使用者計算Scan的并發度
POLARDBX_PARALLELISM 單個查詢在一個CN允許的最大并發度, 預設是CPU核數
MPP_METRIC_LEVEL 3 [0|1|2|3] 計算過程中統計資訊收集程度,級别越高說明收集粒度越細
ENABLE_COMPLEX_DML_CROSS_DB 是否支援跨庫複雜DML
PER_QUERY_MEMORY_LIMIT [-1-9223372036854775807] 查詢級記憶體池大小限制,預設是全局連接配接池的三分之一
ENABLE_SPILL 臨時表落盤的開關
CONN_POOL_MIN_POOL_SIZE 20 [0-10] 實體分庫連結數最小值
CONN_POOL_MAX_POOL_SIZE [1-1600] 實體分庫連結數最大值
CONN_POOL_MAX_WAIT_THREAD_COUNT [-1-8192] 單分庫最大等待建連數(DRUID)
CONN_POOL_IDLE_TIMEOUT 30 [1-60] 實體空閑連結逾時時間
CONN_POOL_BLOCK_TIMEOUT [1000-60000] 實體連接配接池擷取連接配接的最大等待時間
CONN_POOL_XPROTO_MAX_POOLED_SESSION_PER_INST 512 [1-8192] 單個存儲節點最大緩存會話數(私有協定)
XPROTO_MAX_DN_CONCURRENT 500 單個存儲節點最大并發請求數(私有協定)
XPROTO_MAX_DN_WAIT_CONNECTION 32 單個存儲節點最大請求等待數(私有協定)
MERGE_SORT_BUFFER_SIZE 2048 [1024-81920] TableScan層做歸并排序使用的緩存大小,預設2Mb
WORKLOAD_TYPE [AP|TP] 是否指定查詢的workload,預設基于代價智能識别負載
EXECUTOR_MODE [MPP|TP_LOCAL|AP_LOCAL] 是否指定查詢的執行模式,預設基于workload選擇執行模式
ENABLE_MASTER_MPP 是否在主執行個體上開啟MPP能力
LOOKUP_JOIN_BLOCK_SIZE_PER_SHARD 50 在裁剪下BKAJOIN執行時的單分片約定的IN Values個數
ENABLE_RUNTIME_FILTER Runtime Filter的開關
FEEDBACK_WORKLOAD_AP_THRESHOLD 針對AP查詢的HTAP FEEDBACK開關
FEEDBACK_WORKLOAD_TP_THRESHOLD 針對TP查詢的HTAP FEEDBACK開關
MASTER_READ_WEIGHT [0-100] 基于規則的讀寫分離權重
SHOW_ALL_PARAMS 是否顯示SHOW 全部變量
ENABLE_SET_GLOBAL 啟動SET GLOBAL語句開關
FORCE_READ_OUTSIDE_TX 事務内是否在一個分庫上強制開啟多個連接配接
ENABLE_COROUTINE 是否開啟wisp協程
TRUNCATE_TABLE_WITH_GSI 是否允許truncate包含gsi的表
DDL_ON_GSI 是否允許直接在GSI表做DDL
DML_ON_GSI 是否允許直接在GSI表做DML
ENABLE_HASH_JOIN 優化查詢計劃過程中是否與允許HashJoin節點的生成
ENABLE_BKA_JOIN 優化查詢計劃過程中是否允許BKAJoin節點生成
ENABLE_NL_JOIN 優化查詢計劃過程中是否允許NLJoin節點生成
ENABLE_SEMI_NL_JOIN 優化查詢計劃過程中是否允許将SemiJoin轉成NLJoin來實作
ENABLE_SEMI_HASH_JOIN 優化查詢計劃過程中是否允許将SemiJoin轉成HashJoin來實作
ENABLE_SEMI_BKA_JOIN 優化查詢計劃過程中是否允許将SemiJoin轉成BKAJoin來實作
ENABLE_SEMI_SORT_MERGE_JOIN 優化查詢計劃過程中是否允許将SemiJoin轉成MergeJoin來實作
ENABLE_MATERIALIZED_SEMI_JOIN 優化查詢計劃過程中是否允許将SemiJoin轉成MaterializedJoin來實作
ENABLE_SEMI_JOIN_REORDER 優化查詢計劃過程中是否允許将SemiJoin參與CBO Reorder優化
ENABLE_HASH_AGG 優化查詢計劃過程中是否允許生成HashAgg節點生成
ENABLE_PARTIAL_AGG 優化查詢計劃過程中是否允許将Agg拆分成二階段來實作
ENABLE_SORT_AGG 優化查詢計劃過程中是否允許生成SortAgg節點生成
ENABLE_PUSH_PROJECT 優化查詢計劃過程中是否允許Project PushDown
ENABLE_PUSH_JOIN 優化查詢計劃過程中是否允許Join PushDown
ENABLE_PUSH_AGG 優化查詢計劃過程中是否允許Agg PushDown
ENABLE_CBO_PUSH_AGG 優化查詢計劃過程中是否允許Agg 透傳Join
ENABLE_PUSH_SORT 優化查詢計劃過程中是否允許Sort PushDown
ENABLE_STATISTIC_FEEDBACK 是否支援統計資訊修正的Feedback
ENABLE_CBO_PUSH_JOIN 優化查詢計劃過程中是否允許Join 透傳優化
ENABLE_SORT_JOIN_TRANSPOSE 優化查詢計劃過程中是否允許Sort 透傳Join
CHUNK_SIZE [1-10240] 設定執行器每次計算的批次大小
ENABLE_SORT_MERGE_JOIN 優化查詢計劃過程中是否禁止MergeJoin節點生成
ENABLE_BKA_PRUNING 是否開啟BKAJoin的裁剪功能
ENABLE_SPM 是否開啟執行計劃管理
ENABLE_EXPRESSION_VECTORIZATION 是否開啟表達式的向量化計算
FORCE_DDL_ON_LEGACY_ENGINE 是否啟用新DDL引擎
PURE_ASYNC_DDL_MODE 是否以非阻塞的形式執行ddl任務,開啟意味着用戶端執行ddl後立即傳回,通過show [full] ddl檢視執行的情況
DDL_JOB_REQUEST_TIMEOUT 90000 [1-9223372036854775807] 設定DDL執行的最大逾時時間,預設是25天
LOGICAL_DDL_PARALLELISM 1 配置邏輯DDL執行的并發度,設定為1意味着是串行執行DDL任務
ENABLE_BROADCAST_RANDOM_READ 是否開啟廣播表随機讀優化