调整 AlloyDB for PostgreSQL 的列式引擎

本文档介绍了如何为 AlloyDB 实例调整列式引擎。本文档假定您熟悉 PostgreSQL。

调整维护任务的 CPU 资源

以下示例展示了如何配置列式引擎以使用 50% 的 CPU 核心:

google_job_scheduler.maintenance_cpu_percentage = 50

列式引擎最多会使用 20% 的 CPU 核心来执行后台维护作业,例如填充、刷新和建议。如需调整 CPU 资源以允许执行维护任务,请将 google_job_scheduler.maintenance_cpu_percentage 标志设置为介于 20100 之间的值。默认值为 20。后台维护任务的最低 CPU 利用率为 1 vCPU。

添加工作器以加快列式维护

以下示例展示了如何设置四个工作进程:

google_job_scheduler.max_parallel_workers_per_job = 4

列式引擎最多使用两个工作进程来执行填充和刷新后台作业。如需加快这些操作的速度,请设置以下标志以增加后台作业的 worker 进程数量。默认设置为 2 个工作器进程。这些进程在 google_job_scheduler.maintenance_cpu_percentage 标志中指定的有限 CPU 资源上运行。此标志不需要重启数据库。

更改自动列化时间表

以下示例展示了如何将自动列化时间表设置为 6 小时:

google_columnar_engine.auto_columnarization_schedule = 'EVERY 6 HOURS'

您可以根据预期的大量扫描工作负载,在 google_columnar_engine.auto_columnarization_schedule 标志中设置自动列化时间表。为此标志指定一个或多个小时。更改此标志的值不需要重启数据库。

手动填充列式引擎

以下示例展示了如何手动填充列式引擎:

google_columnar_engine.enable_auto_columnarization = OFF

如果您只想手动填充列式引擎,请将 google_columnar_engine.enable_auto_columnarization 标志设置为 OFF。此标志的默认值为 ON。更改此标志的值不需要重启数据库。如需了解详情,请参阅手动管理内容

调整列式引擎的总体堆大小

以下示例展示了如何配置 google_columnar_engine.population_heap_size_in_mb 标志:

population_heap_size_in_mb = 250

为了将数据转换为列式格式,列式引擎会分配 google_columnar_engine.population_heap_size_in_mb 标志指定的内存用量(以兆字节为单位)。转换完成后,系统会立即取消分配此内存(通常在几秒钟内)。

population_heap_size_in_mb 设置的允许值范围为 200 MB 到 1000 MB。

population_heap_size_in_mb 标志的默认值为 250 MB,适用于大多数典型的数据库用例。不过,在某些情况下,您可能需要增加此值。