开发指南—变量—计算层变量

简介: PolarDB-X是存储计算分离架构,这里主要罗列了常见CN变量(其中部分变量控制台可配置)。

变量名

是否重启

默认值

范围

备注

PLAN_CACHE

TRUE

[TURE|FALSE]

计划缓存的开关

ENABLE_RECYCLEBIN

FALSE

[TURE|FALSE]

开启回收站的开关

SHOW_TABLES_CACHE

FALSE

[TURE|FALSE]

是否对show tables结果做缓存

MERGE_CONCURRENT

FALSE

[TURE|FALSE]

全并行执行开关,主要影响DDL和全下推的简单查询的并行执行度

MERGE_UNION

FALSE

[TURE|FALSE]

默认关闭,打开意味着物理SQL不做union优化,且将串行执行下推的物理SQL

MERGE_UNION_SIZE

-1

[0-10000]

通过union合并物理SQL的数量,默认结合连接池可用连接数自适应推导

TABLE_META_CACHE_EXPIRE_TIME

300

[0-180000]

元数据缓存过期时间

COLUMN_LABEL_INSENSITIVE

TRUE

[FALSE|TRUE]

返回列大小写是否敏感

RECORD_SQL

TRUE

[FALSE|TRUE]

审计日志开关

SOCKET_TIMEOUT

900000

[0~3600000]

物理SQL超时时间

TRANSACTION_POLICY

TSO

[XA|TSO|TSO_READONLY]

事务策略

SHARE_READ_VIEW

FALSE

[TRUE|FALSE]

共享ReadView开关

ENABLE_TRX_SINGLE_SHARD_OPTIMIZATION

TRUE

[TRUE|FALSE]

事务单分片优化开关

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

TRUE

[TRUE|FALSE]

非MPP模式下分库级别执行策略

SEQUENTIAL_CONCURRENT_POLICY

FALSE

[TRUE|FALSE]

非MPP模式下单并发执行策略

DML_SKIP_DUPLICATE_CHECK_FOR_PK

TRUE

[TRUE|FALSE]

DML过程中是否跳过主键的冲突检查

DML_SKIP_CRUCIAL_ERR_CHECK

FALSE

[TRUE|FALSE]

DML过程中是否允许有DML报错的事务继续提交

DML_USE_RETURNING

TRUE

[TRUE|FALSE]

是否使用 returning 优化

BROADCAST_DML

FALSE

[TRUE|FALSE]

是否允许广播表的写入不走分布式事务

SEQUENCE_STEP

10000

[1-10000000]

SEQUENCE步长,默认为10万

MERGE_DDL_TIMEOUT

0

[1-10000000]

DDL物理连接超时时间, 默认是0,不超时

MERGE_DDL_CONCURRENT

FALSE

[FALSE|TRUE]

ddl是否采用全并行模式, 默认库级并发

SLOW_SQL_TIME

1000

[1-180000]

慢SQL阈值

LOAD_DATA_BATCH_INSERT_SIZE

1024

[1-180000]

LOAD DATA 每次batch insert的记录条数

LOAD_DATA_CACHE_BUFFER_SIZE

60

[1-180000]

LOAD DATA 缓存大小, 默认60Mb,主要做流控

MAX_ALLOWED_PACKET

16777216

[4194304-33554432]

最大包大小

KILL_CLOSE_STREAM

FALSE

[FALSE|TRUE]

是否开启物理连接流式早停功能

ALLOW_SIMPLE_SEQUENCE

FALSE

[FALSE|TRUE]

是否允许使用simple sequence

MAX_PARAMETERIZED_SQL_LOG_LENGTH

5000

[1-1000000]

参与参数化SQL日志打印的最大长度

FORBID_EXECUTE_DML_ALL

TRUE

[TRUE|FALSE]

是否禁止全表删除/更新

GROUP_SEQ_CHECK_INTERVAL

60

[1-36000]

检查插入显式值的周期/间隔,单位秒

JOIN_BLOCK_SIZE

300

[1-100000]

在非动态裁剪下BKAJOIN执行时的IN Values个数

LOOKUP_JOIN_MAX_BATCH_SIZE

6400

[1-100000]

BKAJOIN执行时的最大IN Values个数

LOOKUP_JOIN_MIN_BATCH_SIZE

100

[1-100000]

BKAJOIN执行时的最大IN Values个数

PURGE_TRANS_INTERVAL

300

[1-180000]

事务日志清理间隔

PURGE_TRANS_BEFORE

1800

[1-180000]

清理多久之前的事务日志

ENABLE_BACKGROUND_STATISTIC_COLLECTION

TRUE

[TRUE|FALSE]

是否允许统计数据采集

GENERAL_DYNAMIC_SPEED_LIMITATION

-1

[-1-10000000]

数据回填、校验动态限速调整,-1为默认限制

PARALLELISM

-1

[1-1024]

单机并行的并行度,默认是由规格推导出来

LOGICAL_DB_TIME_ZONE

SYSTEM

[SYSTEM|±HH:mm]

数据库时区

MPP_PARALLELISM

-1

[1-1024]

MPP执行模式的并发度,默认是由规格推导出来

DATABASE_PARALLELISM

0

[0-1024]

单个查询在一个DN上允许同时下发SQL的数量,用户计算Scan的并发度

POLARDBX_PARALLELISM

0

[0-1024]

单个查询在一个CN允许的最大并发度, 默认是CPU核数

MPP_METRIC_LEVEL

3

[0|1|2|3]

计算过程中统计信息收集程度,级别越高说明收集粒度越细

ENABLE_COMPLEX_DML_CROSS_DB

TRUE

[TRUE|FALSE]

是否支持跨库复杂DML

PER_QUERY_MEMORY_LIMIT

-1

[-1-9223372036854775807]

查询级内存池大小限制,默认是全局连接池的三分之一

ENABLE_SPILL

FALSE

[FALSE|TRUE]

临时表落盘的开关

CONN_POOL_MIN_POOL_SIZE

20

[0-10]

物理分库链接数最小值

CONN_POOL_MAX_POOL_SIZE

60

[1-1600]

物理分库链接数最大值

CONN_POOL_MAX_WAIT_THREAD_COUNT

0

[-1-8192]

单分库最大等待建连数(DRUID)

CONN_POOL_IDLE_TIMEOUT

30

[1-60]

物理空闲链接超时时间

CONN_POOL_BLOCK_TIMEOUT

5000

[1000-60000]

物理连接池获取连接的最大等待时间

CONN_POOL_XPROTO_MAX_POOLED_SESSION_PER_INST

512

[1-8192]

单个存储节点最大缓存会话数(私有协议)

XPROTO_MAX_DN_CONCURRENT

500

[1-8192]

单个存储节点最大并发请求数(私有协议)

XPROTO_MAX_DN_WAIT_CONNECTION

32

[1-8192]

单个存储节点最大请求等待数(私有协议)

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

FALSE

[TRUE|FALSE]

是否在主实例上开启MPP能力

LOOKUP_JOIN_BLOCK_SIZE_PER_SHARD

50

[1-100000]

在裁剪下BKAJOIN执行时的单分片约定的IN Values个数

ENABLE_RUNTIME_FILTER

TRUE

[TRUE|FALSE]

Runtime Filter的开关

FEEDBACK_WORKLOAD_AP_THRESHOLD

FALSE

[TRUE|FALSE]

针对AP查询的HTAP FEEDBACK开关

FEEDBACK_WORKLOAD_TP_THRESHOLD

FALSE

[TRUE|FALSE]

针对TP查询的HTAP FEEDBACK开关

MASTER_READ_WEIGHT

-1

[0-100]

基于规则的读写分离权重

SHOW_ALL_PARAMS

FALSE

[TRUE|FALSE]

是否显示SHOW 全部变量

ENABLE_SET_GLOBAL

FALSE

[TRUE|FALSE]

启动SET GLOBAL语句开关

FORCE_READ_OUTSIDE_TX

FALSE

[TRUE|FALSE]

事务内是否在一个分库上强制开启多个连接

ENABLE_COROUTINE

FALSE

[TRUE|FALSE]

是否开启wisp协程

TRUNCATE_TABLE_WITH_GSI

FALSE

[TRUE|FALSE]

是否允许truncate包含gsi的表

DDL_ON_GSI

FALSE

[TRUE|FALSE]

是否允许直接在GSI表做DDL

DML_ON_GSI

FALSE

[TRUE|FALSE]

是否允许直接在GSI表做DML

ENABLE_HASH_JOIN

TRUE

[TRUE|FALSE]

优化查询计划过程中是否与允许HashJoin节点的生成

ENABLE_BKA_JOIN

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许BKAJoin节点生成

ENABLE_NL_JOIN

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许NLJoin节点生成

ENABLE_SEMI_NL_JOIN

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许将SemiJoin转成NLJoin来实现

ENABLE_SEMI_HASH_JOIN

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许将SemiJoin转成HashJoin来实现

ENABLE_SEMI_BKA_JOIN

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许将SemiJoin转成BKAJoin来实现

ENABLE_SEMI_SORT_MERGE_JOIN

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许将SemiJoin转成MergeJoin来实现

ENABLE_MATERIALIZED_SEMI_JOIN

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许将SemiJoin转成MaterializedJoin来实现

ENABLE_SEMI_JOIN_REORDER

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许将SemiJoin参与CBO Reorder优化

ENABLE_HASH_AGG

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许生成HashAgg节点生成

ENABLE_PARTIAL_AGG

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许将Agg拆分成二阶段来实现

ENABLE_SORT_AGG

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许生成SortAgg节点生成

ENABLE_PUSH_PROJECT

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许Project PushDown

ENABLE_PUSH_JOIN

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许Join PushDown

ENABLE_PUSH_AGG

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许Agg PushDown

ENABLE_CBO_PUSH_AGG

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许Agg 透传Join

ENABLE_PUSH_SORT

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许Sort PushDown

ENABLE_STATISTIC_FEEDBACK

TRUE

[TRUE|FALSE]

是否支持统计信息修正的Feedback

ENABLE_CBO_PUSH_JOIN

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许Join 透传优化

ENABLE_SORT_JOIN_TRANSPOSE

TRUE

[TRUE|FALSE]

优化查询计划过程中是否允许Sort 透传Join

CHUNK_SIZE

1024

[1-10240]

设置执行器每次计算的批次大小

ENABLE_SORT_MERGE_JOIN

TRUE

[TRUE|FALSE]

优化查询计划过程中是否禁止MergeJoin节点生成

ENABLE_BKA_PRUNING

TRUE

[TRUE|FALSE]

是否开启BKAJoin的裁剪功能

ENABLE_SPM

TRUE

[TRUE|FALSE]

是否开启执行计划管理

ENABLE_EXPRESSION_VECTORIZATION

TRUE

[TRUE|FALSE]

是否开启表达式的向量化计算

FORCE_DDL_ON_LEGACY_ENGINE

TRUE

[TRUE|FALSE]

是否启用新DDL引擎

PURE_ASYNC_DDL_MODE

FALSE

[TRUE|FALSE]

是否以非阻塞的形式执行ddl任务,开启意味着客户端执行ddl后立即返回,通过show [full] ddl查看执行的情况

DDL_JOB_REQUEST_TIMEOUT

90000

[1-9223372036854775807]

设置DDL执行的最大超时时间,默认是25天

LOGICAL_DDL_PARALLELISM

1

[1-10240]

配置逻辑DDL执行的并发度,设置为1意味着是串行执行DDL任务

ENABLE_BROADCAST_RANDOM_READ

TRUE

[TRUE|FALSE]

是否开启广播表随机读优化

相关实践学习
使用CLup和iSCSI共享盘快速体验PolarDB for PostgtreSQL
在Clup云管控平台中快速体验创建与管理在iSCSI共享盘上的PolarDB for PostgtreSQL。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
相关文章
|
1月前
|
存储 C++ 容器
学会在 C++ 中使用变量:从定义到实践
C++中的变量是数据容器,包括`int`、`double`、`char`、`string`和`bool`等类型。声明变量时指定类型和名称,如`int myNum = 15;`。`cout`与`<<`用于显示变量值。常量用`const`声明,值不可变。变量名应唯一,遵循特定命名规则,常量声明时需立即赋值。
113 1
|
6月前
|
监控 Java Serverless
函数计算的基本概念
函数计算的基本概念
47 0
|
6月前
|
监控 Serverless 测试技术
函数计算的开发
函数计算的开发
37 0
|
7月前
|
SQL 负载均衡 数据可视化
第六章:参数和变量
第六章:参数和变量
442 1
|
2月前
|
弹性计算 人工智能 Serverless
函数计算基本概念
函数计算基本概念
30 8
|
8月前
|
缓存 运维 监控
【运维知识进阶篇】Ansible变量详解(变量定义+变量优先级+变量注册+层级定义变量+facts缓存变量)
【运维知识进阶篇】Ansible变量详解(变量定义+变量优先级+变量注册+层级定义变量+facts缓存变量)
116 0
|
9月前
|
监控 数据可视化 Serverless
函数计算常用的简化配置的方式
函数计算常用的简化配置的方式
735 2
|
10月前
|
机器学习/深度学习 存储 算法
MXNet定义计算步骤的方式以及数据流编程和 Symbol
MXNet定义计算步骤的方式以及数据流编程和 Symbol
665 0
西门子S7-1200PLC变量表如何使用?如何声明、选用、显示、定义、更改变量?变量保持性如何设置?
在S7-1200 CPU的编程理念中,特别强调符号寻址的使用,在开始编写程序之前,用户应当为输入、输出、中间变量定义相应的符号名,也就是标签。具体步骤如下:
西门子S7-1200PLC变量表如何使用?如何声明、选用、显示、定义、更改变量?变量保持性如何设置?
|
C++
变量基础
变量基础
70 0