Columnar engine uses up to 20% of CPU cores for background maintenance jobs, such as population, refresh, and recommendation. To adjust the CPU resources to allow for maintenance tasks, set thegoogle_job_scheduler.maintenance_cpu_percentageflag to a value from 20 to 100. The default value is 20. The lowest CPU utilization for background maintenance tasks is 1 vCPU.
The columnar engine uses up to two worker processes for population and refresh background jobs. To increase the speed of these operations, set the following flag to increase the number of worker processes for background jobs. The default setting is 2 worker processes. These processes run on limited CPU resources as specified in thegoogle_job_scheduler.maintenance_cpu_percentageflag. This flag does not require the database to be restarted.
Change the auto-columnarization schedule
This example sets the auto-columnarization schedule to six hours.
The auto-columnarization schedule can be set in thegoogle_columnar_engine.auto_columnarization_scheduleflag based upon anticipated scan-heavy workloads. Specify one or more hours for this flag. Changing the value of this flag does not require a database restart.
Manually populate the columnar engine
This example lets you only manually populate the columnar engine.
google_columnar_engine.enable_auto_columnarization = OFF
If you prefer to only manually populate the columnar engine, set thegoogle_columnar_engine.enable_auto_columnarizationflag toOFF. By default, the flag is set toON. Changing the value of this flag does not require a database restart.
SeeManage Content Manuallysection for more details.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eThe \u003ccode\u003egoogle_job_scheduler.maintenance_cpu_percentage\u003c/code\u003e flag can be adjusted to allocate between 20% and 100% of CPU cores for columnar engine maintenance tasks, with the default set at 20%.\u003c/p\u003e\n"],["\u003cp\u003eTo increase the speed of population and refresh operations, the \u003ccode\u003egoogle_job_scheduler.max_parallel_workers_per_job\u003c/code\u003e flag can be set to increase the number of worker processes, with a default of two.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003egoogle_columnar_engine.auto_columnarization_schedule\u003c/code\u003e flag allows users to customize the schedule for auto-columnarization based on their workload, specifying the frequency in hours.\u003c/p\u003e\n"],["\u003cp\u003eUsers can opt to manually manage columnar engine population by setting the \u003ccode\u003egoogle_columnar_engine.enable_auto_columnarization\u003c/code\u003e flag to \u003ccode\u003eOFF\u003c/code\u003e, disabling the default automatic process.\u003c/p\u003e\n"]]],[],null,["# Tune the columnar engine for AlloyDB Omni on a VM\n\nSelect a documentation version: 16.3.0keyboard_arrow_down\n\n- [Current (16.8.0)](/alloydb/omni/current/docs/columnar-engine/tune-columnar-engine)\n- [16.8.0](/alloydb/omni/16.8.0/docs/columnar-engine/tune-columnar-engine)\n- [16.3.0](/alloydb/omni/16.3.0/docs/columnar-engine/tune-columnar-engine)\n- [15.12.0](/alloydb/omni/15.12.0/docs/columnar-engine/tune-columnar-engine)\n- [15.7.1](/alloydb/omni/15.7.1/docs/columnar-engine/tune-columnar-engine)\n- [15.7.0](/alloydb/omni/15.7.0/docs/columnar-engine/tune-columnar-engine)\n\n\u003cbr /\u003e\n\nThis document describes how to tune the columnar engine for an AlloyDB Omni on a VM. This document assumes that you are familiar with PostgreSQL.\n\n\u003cbr /\u003e\n\n### Adjust the CPU resources for maintenance tasks\n\nThis example configures the columnar engine to use 50% of the CPU cores. \n\n google_job_scheduler.maintenance_cpu_percentage = 50\n\nColumnar engine uses up to 20% of CPU cores for background maintenance jobs, such as population, refresh, and recommendation. To adjust the CPU resources to allow for maintenance tasks, set the `google_job_scheduler.maintenance_cpu_percentage` flag to a value from 20 to 100. The default value is 20. The lowest CPU utilization for background maintenance tasks is 1 vCPU.\n\n### Increase the speed of worker processes\n\nThis example sets four worker processes. \n\n google_job_scheduler.max_parallel_workers_per_job = 4\n\nThe columnar engine uses up to two worker processes for population and refresh background jobs. To increase the speed of these operations, set the following flag to increase the number of worker processes for background jobs. The default setting is 2 worker processes. These processes run on limited CPU resources as specified in the `google_job_scheduler.maintenance_cpu_percentage` flag. This flag does not require the database to be restarted.\n\n### Change the auto-columnarization schedule\n\nThis example sets the auto-columnarization schedule to six hours. \n\n google_columnar_engine.auto_columnarization_schedule = 'EVERY 6 HOURS'\n\nThe auto-columnarization schedule can be set in the `google_columnar_engine.auto_columnarization_schedule` flag based upon anticipated scan-heavy workloads. Specify one or more hours for this flag. Changing the value of this flag does not require a database restart.\n\n### Manually populate the columnar engine\n\nThis example lets you only manually populate the columnar engine. \n\n google_columnar_engine.enable_auto_columnarization = OFF\n\nIf you prefer to only manually populate the columnar engine, set the `google_columnar_engine.enable_auto_columnarization` flag to `OFF`. By default, the flag is set to `ON`. Changing the value of this flag does not require a database restart.\nSee [Manage Content Manually](/alloydb/omni/16.3.0/docs/columnar-engine/manage-content-manually) section for more details."]]