列式引擎标志

本页面介绍了 AlloyDB Omni 用于启用和管理其列式引擎特有的功能的数据库标志。如需查看 AlloyDB Omni 支持的所有数据库标志的列表,请参阅支持的数据库标志

标有实例重启的标志表示每当您对某个 AlloyDB Omni 实例设置、移除或修改此标志时,都必须重启该实例。除非您再次修改,否则标志值会在实例中一直保留。

如需了解如何设置数据库标志,请参阅配置 AlloyDB Omni 数据库标志

启用

google_columnar_engine.enabled

类型Boolean
默认值off
实例重启

如果为 on,则启用 AlloyDB Omni 列式引擎

自动列式处理

google_columnar_engine.enable_auto_columnarization

类型Boolean
默认值on
实例重启

如果为 on,则启用列式引擎的自动列式处理功能

google_columnar_engine.relations

类型String
默认值一个空白字符串
实例重启

除了自动列式处理进程之外,还为 AlloyDB Omni 指定要添加到集群列存储区的列的列表。这些列可以来自集群内的任何表。

此标志的值采用以英文逗号分隔的项列表格式。每个项都指定单个表中的一个或多个列,格式如下:

'DATABASE_NAME.SCHEMA_NAME.TABLE_NAME(COLUMN_LIST)'

如需了解详情,请参阅手动管理列存储区内容

google_columnar_engine.auto_columnarization_schedule

类型String
默认值一个空白字符串
实例重启
允许的最大值2147483647

指定 AlloyDB Omni 在实例上运行自动列式处理进程的频率。

该值为以下格式的字符串:

'EVERY NUMBER TIME_UNITS'

替换以下内容:

  • NUMBER:正整数。

  • TIME_UNITSDAYSHOURS

如果未定义,则 AlloyDB Omni 每小时运行一次自动列式处理进程。

大小调整和查询处理

google_columnar_engine.memory_size_in_mb

类型Integer
有效值介于 128 到代表实例内存 70% 的值之间
默认值1 GB 实例内存
实例重启

AlloyDB Omni 分配给列存储区的实例内存量(以兆比字节 [MiB] 为单位)。

如果未设置此标志,AlloyDB Omni 会将 1 GB 实例内存分配给列存储区。

google_columnar_engine.enable_columnar_scan

类型Boolean
默认值on
实例重启

如果为 on,则允许 AlloyDB Omni 在处理查询时访问列存储区中的数据。

如果此标志为 off,而 google_columnar_engine.enabledon,则列式引擎会保持启用状态并保留其列存储区,但 AlloyDB Omni 在处理查询时不会使用列式数据。

google_columnar_engine.storage_cache_size

如需启用存储缓存大小,您必须启用磁盘缓存

类型Integer
有效值10242147483647
默认值5% of the disk cache is allocated to the columnar engine
实例重启

如果为 on,则让 AlloyDB Omni 为列式引擎配置存储缓存的大小。

此标志允许的最大值是总磁盘缓存的 50% 或 1,000 * google_columnar_engine.memory_size_in_mb(以较低者为准)。

维护活动

google_job_scheduler.maintenance_cpu_percentage

类型Integer
有效值0100
默认值20
实例重启

在实例的 CPU 容量中,列式引擎可应用于后台处理的容量所占的最大百分比。

google_job_scheduler.max_parallel_workers_per_job

类型Integer
有效值0262143
默认值2
实例重启

为了完成任何单个后台处理操作,列式引擎可以创建的并行工作器数量上限。

自动刷新 - 事件驱动型

google_columnar_engine.refresh_threshold_percentage

类型Integer
有效值1100
默认值50
实例重启

指定列存储区的数据刷新阈值(以百分比表示)。

当满足以下条件时,AlloyDB Omni 会刷新列式单元(即列式表内的一组数据块)中的数据:

  • 列式单元的表已超过单独的 refresh_threshold_scan_count 标志定义的扫描阈值。

  • 列式单元的底层数据块中已变为无效的数据块所占的百分比超过 refresh_threshold_percentage 标志的值。由于列式表所依据的基于行的数据发生变化,列式数据块变得无效。

google_columnar_engine.refresh_threshold_scan_count

类型Integer
有效值02147483647
默认值5
实例重启

AlloyDB Omni 会持续统计每个列式表中自最近一次 DML 查询以来所执行的表扫描次数。refresh_threshold_scan_count 标志的值指定在 AlloyDB Omni 可以刷新其数据之前,任何列式表上此计数器的最小值。从那里,AlloyDB Omni 使用 refresh_threshold_percentage 定义的无效区块阈值来确定刷新表数据的时间。

如果此标志的值设置为 0,AlloyDB Omni 会忽略表扫描,而仅使用 refresh_threshold_percentage 来确定刷新列式数据的时间。

自动刷新 - 定期和自适应

google_columnar_engine.adaptive_auto_refresh_schedule

类型String
默认值一个空白字符串
实例重启
允许的最大值2147483647

指定 AlloyDB Omni 在实例上运行“自适应自动刷新”进程的频率。

该值为以下格式的字符串:

'EVERY NUMBER TIME_UNITS'

替换以下内容:

  • NUMBER:正整数。

  • TIME_UNITSDAYSHOURS

如果未定义,则 AlloyDB Omni 每小时运行一次“自适应自动刷新”进程。

google_columnar_engine. min_adaptive_auto_refresh_blocks

类型Integer
有效值02147483647
默认值50
实例重启

变得无效的列式单元底层数据块的数量超过 min_adaptive_auto_refresh_blocks 标志的值。由于列式表所依据的基于行的数据发生变化,列式数据块变得无效。

向量化联接

google_columnar_engine.enable_vectorized_join

类型Boolean
默认值off
重启实例No

如果为 on,AlloyDB Omni 会自动使用多线程向量化操作来提升联接多个表的查询的性能。

如需了解详情,请参阅启用向量化联接

google_columnar_engine.vectorized_join_threads

类型Integer
有效值最多为实例 vCPU 数量的一半
默认值1
重启实例No

定义向量化联接运算符可用的并行线程数量上限,由 enable_vectorized_join 标志启用。

您可以将值定义为实例 vCPU 的一半。例如,在 16 个 vCPU 实例中,此标志的最大值为 8

预览功能

google_columnar_engine.enable_json_support

类型Boolean
默认值off
重启实例No

如果此标志和 enable_raw_format 都设置为 on,则 AlloyDB Omni 允许在列存储区中使用 PostgreSQL JSON 和 JSONB 数据类型

google_columnar_engine.enable_raw_format

类型Boolean
默认值off
重启实例No

如果此标志和 enable_json_support 都设置为 on,则 AlloyDB Omni 允许在列存储区中使用 PostgreSQL JSON 和 JSONB 数据类型