更新时间:2025-07-08 GMT+08:00
分享

语句行为

介绍SQL语句执行过程的相关默认参数。

search_path

参数说明:当一个被引用对象没有指定模式时,此参数设置模式搜索顺序。它的值由一个或多个模式名构成,不同的模式名用逗号隔开。

  • 当前会话存放临时表的模式时,可以使用别名pg_temp将它列在搜索路径中,如'pg_temp,public' 。 存放临时表的模式始终会作为第一个被搜索的对象,排在pg_catalog和search_path中所有模式的前面,即具有第一搜索优先级。建议用户不要在search_path中显式设置pg_temp。如果在search_path中指定了pg_temp,但不是在最前面,系统会提示设置无效,pg_temp仍被优先搜索。通过使用别名pg_temp,系统只会在存放临时表的模式中搜索表、视图和数据类型这样的数据库对象,不会在里面搜索函数或运算符这样的数据库对象。
  • 系统表所在的模式pg_catalog,总是排在search_path中指定的所有模式前面被搜索,即具有第二搜索优先级(pg_temp具有第一搜索优先级)。建议用户不要在search_path中显式设置pg_catalog。如果在search_path中指定了pg_catalog,但不是在最前面,系统会提示设置无效,pg_catalog仍被第二优先搜索。
  • 当没有指定一个特定模式而创建一个对象时,它们被放置到以search_path为命名的第一个模式中。当搜索路径为空时,会报错误。
  • 通过SQL函数current_schema可以检测当前搜索路径的有效值。这和检测search_path的值不尽相同,因为current_schema显示search_path中首位有效的模式名称。

取值范围:字符串

  • 设置为空串('')的时候,系统会自动转换成一对双引号。
  • 设置的内容中包含双引号,系统会认为是不安全字符,会将每个双引号转换成一对双引号。

默认值:default_db

current_schema

参数说明:设置当前的模式。

取值范围:字符串

默认值:default_db

statement_timeout

参数说明:当语句执行时间超过该参数设置的时间(从服务器收到命令时开始计时)时,该语句将会报错并退出执行。

取值范围:整型,0~2147483647,单位为毫秒(ms)。

默认值:0

bytea_output

参数说明:设置bytea类型值的输出格式。

取值范围:枚举型

  • hex:将二进制数据编码为每字节2位十六进制数字。
  • escape:传统化的PostgreSQL格式。采用以ASCII字符序列表示二进制串的方法,同时将那些无法表示成ASCII字符的二进制串转换成特殊的转义序列。

默认值:hex

xmlbinary

参数说明:设置二进制值是如何在XML中进行编码的。

取值范围:枚举型

  • base64
  • hex

默认值:base64

xmloption

参数说明:当XML和字符串值之间进行转换时,设置document或content是否是隐含的。

取值范围:枚举型

  • document:表示HTML格式的文档。
  • content:普通的字符串。

默认值:content

enable_disk_cache

参数说明:设置是否打开磁盘缓存和数据预读,当前数据预取仅对PARQUET/ORC格式文件有效,磁盘缓存对所有格式文件均有效。

取值范围:布尔型

  • on:打开磁盘缓存和数据预取。
  • off:关闭磁盘缓存和数据预取。

默认值:on

disk_cache_max_size

参数说明:用于设置磁盘缓存的总大小。

取值范围:整型,512MB~1PB

默认值:5GB

enable_aio_scheduler

参数说明:控制是否开启异步IO调度,该IO调度是异步读写的基础。

取值范围:布尔型

  • on/true表示开启此IO调度开关。
  • off/false表示关闭此IO调度开关。

默认值:on

runtime_filter_type

参数说明:标识使用的runtime filter类型。

取值范围:字符串

  • all,表示应用除global_filter外的runtime filter。
  • min_max,表示仅应用join场景下的runtime filter,且join场景仅会生成min_max过滤器。
  • bloom_filter,表示仅应用join场景下的runtime filter,且满足条件后join会生成bloom filter进行过滤。
  • topn_filter,表示应用join场景以及带有limit的order by场景下的runtime filter,外表不生效。
  • global_filter:表示应用join场景下,跨dn节点的runtime filter,开启后支持runtime filter对不同dn上的数据生成min_max/bloom_filter过滤器。
  • none,表示不使用runtime filter,此时仅对原版bloom filter生效场景具有过滤效果。

默认值:none

enable_meta_scan

参数说明:Iceberg查询时是否打开metaScan。

取值范围:bool

  • on/true,打开metaScan,即在查询时由dn分布式获取待扫描文件列表。
  • off/false,关闭metaScan,即在查询时在cn获取待扫描文件列表。

默认值:true

enable_spill_to_remote_storage

参数说明:控制是否打开spill-to-obs特性开关,为true时表示开启特性,下盘数据会被disk cache管控,并在空间不足时使用OBS作为逃生通道;为false时表示使用旧的下盘方式,直接写到本地EVS中。该参数存在参数依赖,当打开spill-to-obs特性开关enable_spill_to_remote_storage时,use_yr_as_block_cache_backend开关必须为false。

取值范围: bool

  • on/true表示开启。
  • off/false表示关闭。

默认值true

  • 由于spill-to-obs特性依赖的元戎相关能力(如append buf)在25.3.0版本暂时无法提供,当前存在特性使用限制,当打开enable_spill_to_remote_storage时,diskcache的存储后端当前无法使用元戎数据系统,请设置use_yr_as_block_cache_backend开关为false后再启用spill-to-obs特性。
  • use_yr_as_block_cache_backend为false时,意味着近计算缓存会直接使用DN实例下的目录来缓存数据,此时注意系统盘的空间问题, 此时建议将function-agent中存放DN实例的路径映射在大容量的物理EVS盘中,避免系统盘空间不足导致的pod被驱逐的问题。

staging_folder_expire_time

参数说明:控制ORC、PARQUET表临时文件目录残留后的自动清理周期,默认七天后自动清理。

取值范围: int64,取值范围12h~1year

默认值:604800

obs_result_format

参数说明:控制向OBS写入结果集文件时的格式,以及是否启动结果集文件压缩功能。

参数类型:USERSET

取值范围:int,取值范围0~3。

  • 0:结果集文件格式为JSON,并且不对结果集文件进行压缩。
  • 1:结果集文件格式为JSON,并且使用zstd算法对结果集文件进行压缩。
  • 2:结果集文件格式为ARROW,并且不对结果集文件进行压缩。
  • 3:结果集文件格式为ARROW,并且使用zstd算法对结果集文件进行压缩。

默认值:0

resource_track_level

参数说明:控制SQL监控数据中query_plan字段上报的信息类型,当前只对select、insert、delete、update、create table as语句生效。

参数类型:USERSET

取值范围:枚举型

  • query:SQL监控数据的query_plan字段上报explain信息。
  • perf:SQL监控数据的query_plan字段上报explain performance信息。

默认值:perf

相关文档