Estilos de distribución
Cuando crea una tabla, puede designar uno de los cuatro estilos de distribución: AUTO, EVEN, KEY o ALL.
Si no se especifica un estilo de distribución, Amazon Redshift usa la distribución AUTO.
Distribución AUTO
Con la distribución AUTO, Amazon Redshift asigna un estilo de distribución óptimo basado en el tamaño de los datos de la tabla. Por ejemplo, Amazon Redshift asigna inicialmente la distribución ALL a una tabla pequeña, a continuación, cambia a una distribución EVEN cuando la tabla crece más. Cuando una tabla cambia de una distribución ALL a EVEN, la utilización del almacenamiento podría cambiar ligeramente. El cambio en la distribución se produce en segundo plano y tarda pocos segundos.
Cuando se establece DISTSTYLE en AUTO, Amazon Redshift podría cambiar la distribución de los datos de la tabla para que tengan un estilo de distribución basado en KEY.
Para ver el estilo de distribución aplicado a una tabla, consulte la vista de catálogo del sistema PG_CLASS_INFO. Para obtener más información, consulte Visualización de los estilos de distribución. Si no se especifica un estilo de distribución con la instrucción CREATE TABLE, Amazon Redshift aplica la distribución AUTO.
Distribución EVEN
El nodo principal distribuye las filas entre los sectores con un método de turnos rotativos, independientemente de los valores de cualquier columna en particular. La distribución EVEN es adecuada cuando una tabla no participa de combinaciones o cuando no hay una selección clara entre la distribución KEY y la distribución ALL.
Distribución KEY
Las filas se distribuyen según los valores de una columna. El nodo principal ubica juntos los valores que coinciden en el mismo sector del nodo. Si distribuye un par de tablas en las claves de combinación, el nodo principal ubica juntas las filas en los sectores según los valores de las columnas de combinación para que los valores que coinciden en las columnas que tienen en común se almacenen juntos físicamente.
Distribución ALL
Se distribuye una copia de toda la tabla a cada nodo. Mientras que la distribución EVEN o la distribución KEY colocan solo una parte de las filas de la tabla en cada nodo, la distribución ALL garantiza que se coloque cada fila para cada combinación en la que participa la tabla.
La distribución ALL multiplica el almacenamiento requerido por la cantidad de nodos del clúster, por lo que demanda más tiempo para cargar, actualizar o insertar datos en distintas tablas. La distribución ALL es adecuada solo para tablas con movimientos relativamente lentos, es decir tablas que no se actualizan con frecuencia ni de forma generalizada. Dado que el costo de redistribuir tablas pequeñas durante una consulta es bajo, no hay un beneficio significativo para definir tablas de dimensiones pequeñas como DISTSTYLE ALL.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?