Uso de la optimización automática de tablas - Amazon Redshift

Uso de la optimización automática de tablas

La optimización automática de tablas es una capacidad de autoajuste que optimiza automáticamente el diseño de tablas mediante la aplicación de claves de ordenación y distribución sin necesidad de que intervenga el administrador. Mediante el uso de la automatización para ajustar el diseño de las tablas, puede empezar a trabajar y obtener el rendimiento más rápido sin invertir tiempo en ajustar e implementar manualmente las optimizaciones de las tablas.

La optimización automática de tablas observa continuamente la forma en que las consultas interactúan con las tablas. Utiliza métodos avanzados de inteligencia artificial que permiten elegir las claves de ordenación y distribución necesarias para optimizar el rendimiento de la carga de trabajo del clúster. Si Amazon Redshift determina que la aplicación de una clave mejora el rendimiento del clúster, las tablas se modifican de manera automática en cuestión de horas desde el momento en que se creó el clúster, con un impacto mínimo en las consultas.

Para aprovechar esta automatización, un administrador de Amazon Redshift crea una tabla nueva o modifica una ya existente para que pueda utilizar la optimización automática. Las tablas existentes con un estilo de distribución o una clave de ordenación de AUTO ya se encuentran habilitadas para la automatización. Cuando se ejecutan consultas en esas tablas, Amazon Redshift determina si una clave de ordenación o de distribución mejorará el rendimiento. En ese caso, Amazon Redshift modifica automáticamente la tabla sin necesidad de que intervenga el administrador. Si se ejecuta una cantidad mínima de consultas, las optimizaciones se aplican en cuestión de horas desde que se lanzó el clúster.

Si Amazon Redshift determina que una clave de distribución mejora el rendimiento de las consultas, las tablas en las que el estilo de distribución sea AUTO pueden cambiarlo a KEY.

Habilitación de la optimización automática de tablas

De forma predeterminada, las tablas creadas sin definir explícitamente las claves de ordenación o las claves de distribución se establecen en AUTO. Asimismo, en el momento de crear la tabla, es posible establecer explícitamente una clave de ordenación o de distribución de forma manual. Si se establece la clave de ordenación o de distribución, la tabla no se administra automáticamente.

Si desea permitir que una tabla existente se optimice automáticamente, utilice las opciones de instrucción ALTER para cambiar la tabla a AUTO. Puede elegir definir la automatización para las claves de ordenación, pero no para las claves de distribución (y viceversa). Si se ejecuta una instrucción ALTER para convertir una tabla en una tabla automatizada, se conservan las claves de ordenación y los estilos de distribución existentes.

ALTER TABLE table_name ALTER SORTKEY AUTO;
ALTER TABLE table_name ALTER DISTSTYLE AUTO;

Para obtener más información, consulte ALTER TABLE.

En principio, una tabla no dispone de una clave de distribución ni una clave de ordenación. El estilo de distribución se establece en EVEN o ALL en función del tamaño de la tabla. A medida que se incrementa el tamaño de la tabla, Amazon Redshift aplica las claves de distribución y las claves de ordenación óptimas. Las optimizaciones se aplican en cuestión de horas una vez que se ejecuta una cantidad mínima de consultas. Cuando se determinan las optimizaciones de claves de ordenación, Amazon Redshift intenta optimizar los bloques de datos leídos desde el disco durante el análisis de una tabla. Cuando se determinan las optimizaciones de estilo de distribución, Amazon Redshift intenta optimizar el número de bytes que se transfieren entre los nodos del clúster.

Eliminación de la optimización automática de tablas de una tabla

Puede eliminar una tabla de la optimización automática. La eliminación de una tabla de la automatización implica seleccionar una clave de ordenación o un estilo de distribución. Para cambiar el estilo de distribución, indique un estilo de distribución específico.

ALTER TABLE table_name ALTER DISTSTYLE EVEN;
ALTER TABLE table_name ALTER DISTSTYLE ALL;
ALTER TABLE table_name ALTER DISTSTYLE KEY DISTKEY c1;

Para cambiar una clave de ordenación, puede definir una clave de ordenación o no elegir ninguna.

ALTER TABLE table_name ALTER SORTKEY(c1, c2);
ALTER TABLE table_name ALTER SORTKEY NONE;

Supervisión de acciones de optimización automática de tablas

La vista del sistema SVV_ALTER_TABLE_RECOMMENDATIONS registra las recomendaciones actuales de Amazon Redshift Advisor para las tablas. En esta vista se muestran las recomendaciones para todas las tablas, tanto las que están definidas para la optimización automática como aquellas que no lo están.

Si desea ver si una tabla se ha definido para la optimización automática, consulte la vista del sistema SVV_TABLE_INFO. Las entradas aparecen únicamente para las tablas visibles en la base de datos de la sesión actual. Las recomendaciones se insertan en la vista dos veces al día a partir de las horas posteriores a la creación del clúster. Una vez que está disponible una recomendación, esta comienza en el plazo de una hora. Una vez aplicada una recomendación, sea por Amazon Redshift o por usted mismo, ya no aparecerá en la vista.

La vista del sistema SVL_AUTO_WORKER_ACTION muestra un registro de auditoría de todas las acciones que lleva a cabo Amazon Redshift y el estado anterior de la tabla.

La vista del sistema SVV_TABLE_INFO muestra una lista de todas las tablas del sistema, así como una columna donde se indica si la clave de ordenación y el estilo de distribución de la tabla están establecidos en AUTO.

Para obtener más información sobre cómo usar estas vistas del sistema, consulte Monitoreo del sistema (solo aprovisionado).