Ajustar el motor en columnas de AlloyDB para PostgreSQL

En este documento se describe cómo optimizar el motor en columnas de una instancia de AlloyDB. En este documento se da por supuesto que conoces PostgreSQL.

Ajustar los recursos de CPU para las tareas de mantenimiento

En el siguiente ejemplo se muestra cómo configurar el motor de columnas para que use el 50% de los núcleos de CPU:

google_job_scheduler.maintenance_cpu_percentage = 50

El motor de columnas usa hasta el 20% de los núcleos de la CPU para tareas de mantenimiento en segundo plano, como la población, la actualización y la recomendación. Para ajustar los recursos de CPU y permitir que se realicen tareas de mantenimiento, asigna a la marca google_job_scheduler.maintenance_cpu_percentage un valor entre 20 y 100. El valor predeterminado es 20. El uso de CPU más bajo para las tareas de mantenimiento en segundo plano es de 1 vCPU.

Añadir trabajadores para acelerar el mantenimiento de columnas

En el siguiente ejemplo se muestra cómo definir cuatro procesos de trabajador:

google_job_scheduler.max_parallel_workers_per_job = 4

El motor de columnas usa hasta dos procesos de trabajador para las tareas en segundo plano de población y actualización. Para aumentar la velocidad de estas operaciones, define la siguiente marca para aumentar el número de procesos de trabajo de las tareas en segundo plano. El valor predeterminado es de 2 procesos de trabajo. Estos procesos se ejecutan con recursos de CPU limitados, tal como se especifica en la marca google_job_scheduler.maintenance_cpu_percentage. Esta marca no requiere que se reinicie la base de datos.

Cambiar la programación de la columnarización automática

En el siguiente ejemplo se muestra cómo definir la programación de la columnarización automática en seis horas:

google_columnar_engine.auto_columnarization_schedule = 'EVERY 6 HOURS'

La programación de la columnarización automática se puede definir en la marca google_columnar_engine.auto_columnarization_schedule en función de las cargas de trabajo que se prevean con muchas lecturas. Especifica una o varias horas para esta marca. Si cambia el valor de esta marca, no es necesario reiniciar la base de datos.

Rellenar manualmente el motor en columnas

En el siguiente ejemplo se muestra cómo rellenar manualmente el motor columnar:

google_columnar_engine.enable_auto_columnarization = OFF

Si prefiere rellenar manualmente el buscador columnar, defina el indicador google_columnar_engine.enable_auto_columnarization en OFF. El valor predeterminado de esta marca es ON. Si cambia el valor de esta marca, no es necesario reiniciar la base de datos. Consulta más información en el artículo Gestionar contenido manualmente.

Ajustar el tamaño del montículo de población del motor de columnas

En el siguiente ejemplo se muestra cómo configurar la marca google_columnar_engine.population_heap_size_in_mb:

population_heap_size_in_mb = 250

Para convertir datos al formato de columna, el motor de columnas asigna la cantidad de memoria en megabytes especificada por la marca google_columnar_engine.population_heap_size_in_mb. Una vez que se completa la conversión, esta memoria se desasigna inmediatamente, normalmente en cuestión de segundos.

Los valores permitidos para el ajuste population_heap_size_in_mb van de un mínimo de 200 MB a un máximo de 1000 MB.

El valor predeterminado de 250 MB de la marca population_heap_size_in_mb funciona bien en la mayoría de los usos típicos de las bases de datos. Sin embargo, puede que te encuentres en situaciones en las que necesites aumentar este valor.