Cuadros repartidos

Crear tabla con distribución de hash

Por defecto, el pool de SQL dedicado crea un índice columnstore agrupado cuando no se especifican opciones de índice en una tabla. Las tablas de almacén de columnas agrupadas ofrecen el mayor nivel de compresión de datos y el mejor rendimiento general de las consultas. Las tablas columnstore agrupadas generalmente superan a las tablas de índice agrupado o de montón y suelen ser la mejor opción para las tablas grandes. Por estas razones, el almacén de columnas agrupadas es el mejor lugar para empezar cuando no se está seguro de cómo indexar la tabla.

Cuando está aterrizando temporalmente los datos en el pool de SQL dedicado, puede encontrar que el uso de una tabla heap hace que el proceso general sea más rápido. Esto se debe a que las cargas a los heaps son más rápidas que a las tablas de índices y, en algunos casos, la lectura posterior puede realizarse desde la caché. Si está cargando datos sólo para ponerlos en escena antes de ejecutar más transformaciones, cargar la tabla en una tabla de montón es mucho más rápido que cargar los datos en una tabla de almacén de columnas agrupada. Además, cargar los datos en una tabla temporal es más rápido que cargar una tabla en un almacenamiento permanente. Después de cargar los datos, se pueden crear índices en la tabla para acelerar el rendimiento de las consultas.

Leer más  Definicion de pseudo

Tabla distribuida por hash

La distribución Hash mejora el rendimiento de las consultas en tablas de hechos de gran tamaño, y es el tema central de este artículo. La distribución round-robin es útil para mejorar la velocidad de carga. Estas opciones de diseño tienen un impacto significativo en la mejora del rendimiento de las consultas y de la carga.

Otra opción de almacenamiento de tablas es replicar una tabla pequeña en todos los nodos de computación. Para obtener más información, consulte Guía de diseño para tablas replicadas. Para elegir rápidamente entre las tres opciones, consulte Tablas distribuidas en el resumen de tablas.

Dado que los valores idénticos siempre tienen un hash en la misma distribución, SQL Analytics tiene un conocimiento integrado de las ubicaciones de las filas. En el grupo de SQL dedicado, este conocimiento se utiliza para minimizar el movimiento de datos durante las consultas, lo que mejora el rendimiento de las mismas.

Las tablas distribuidas por hash funcionan bien para las tablas de hechos grandes en un esquema de estrella. Pueden tener un gran número de filas y aún así lograr un alto rendimiento. Hay algunas consideraciones de diseño que ayudan a obtener el rendimiento para el que está diseñado el sistema distribuido. La elección de una buena columna de distribución es una de esas consideraciones que se describen en este artículo.

Distribución de tablas en synapse

Azure Synapse (Azure SQL Data Warehouse) es un sistema de base de datos de procesamiento paralelo masivo (MPP). Los datos de cada instancia de Synapse se distribuyen en 60 bases de datos subyacentes. Estas 60 bases de datos se denominan “distribuciones”. Como los datos están distribuidos, es necesario organizarlos de forma que la consulta sea más rápida y eficaz.

Leer más  Critica sobre politica

Aunque la distribución de los datos ayuda a repartir la carga, también provoca ineficiencias en la red, un aumento de la E/S y, en consecuencia, un bajo rendimiento. Por ejemplo, si se realiza regularmente una consulta que une datos de dos tablas, pero los datos que se van a unir están almacenados en diferentes bases de datos, el almacén de datos tendrá que obtener los datos a través de la red. Por lo tanto, hay que diseñar el almacén de datos con cuidado para minimizar los “movimientos de datos”. Para ello, hay que entender bien cómo están estructurados los datos y cómo se van a utilizar antes de idear un enfoque adecuado de distribución de datos. Analicemos algunos escenarios:

Tabla distribuida hash azure

Un esquema en estrella organiza los datos en tablas de hechos y dimensiones. Algunas tablas se utilizan para integrar o poner en escena los datos antes de que pasen a una tabla de hechos o dimensiones. Al diseñar una tabla, decida si los datos de la tabla pertenecen a una tabla de hechos, de dimensiones o de integración. Esta decisión informa de la estructura y distribución de la tabla adecuada.

Los esquemas son una buena forma de agrupar las tablas que se utilizan de forma similar. Si está migrando varias bases de datos desde una solución on-prem a un pool SQL dedicado, lo mejor es migrar todas las tablas de hechos, dimensiones e integración a un esquema en un pool SQL dedicado.

Para mostrar la organización de las tablas en el pool de SQL dedicado, puede utilizar fact, dim e int como prefijos de los nombres de las tablas. La siguiente tabla muestra algunos de los nombres de esquemas y tablas de WideWorldImportersDW.

Leer más  Ejemplos de paises democraticos

Una tabla normal almacena los datos en Azure Storage como parte de un pool SQL dedicado. La tabla y los datos persisten independientemente de que haya una sesión abierta. El siguiente ejemplo crea una tabla regular con dos columnas.