Compartir a través de


Configuración de SQL Warehouse para cargas de trabajo de BI

Las cargas de trabajo de Business Intelligence tienen características distintas que requieren consideraciones de configuración específicas de SQL Warehouse. En esta página se proporcionan instrucciones sobre cómo analizar los requisitos de la carga de trabajo de BI y configurar almacenes de SQL para ofrecer un rendimiento óptimo, una rentabilidad y una confiabilidad.

Análisis de cargas de trabajo y requisitos del Acuerdo de Nivel de Servicio

Cada carga de trabajo de BI es única y requiere un análisis cuidadoso antes de la configuración. Tenga en cuenta las siguientes preguntas al evaluar sus requisitos:

  • Migración o nueva implementación: ¿Se va a migrar esta carga de trabajo desde otra plataforma o es una nueva implementación? Es posible que las cargas de trabajo migradas hayan establecido acuerdos de nivel de servicio y líneas base de rendimiento.
  • Contratos de nivel de servicio (SLA): ¿Cuáles son los requisitos de latencia, rendimiento y disponibilidad? Documente los Acuerdos de Nivel de Servicio técnicos y empresariales.
  • Patrones de acceso: ¿Cómo interactúan los usuarios con los datos? Comprender los patrones de consulta típicos ayuda a ajustar el tamaño adecuado a la configuración del almacenamiento y a optimizar la capa de datos para la carga de trabajo específica.

Patrones de acceso de BI típicos

Las cargas de trabajo de BI normalmente se dividen en dos categorías de patrones de acceso diferentes, cada una de las cuales requiere configuraciones de SQL Warehouse diferentes.

Patrón DirectQuery/LiveQuery

Los patrones de DirectQuery consultan datos en tiempo real, lo que requiere respuestas de baja latencia para el análisis interactivo:

Características:

  • Número elevado de consultas
  • Las consultas suelen devolver conjuntos de resultados pequeños (menos de 1000 registros)
  • Normalmente se ejecuta durante el horario comercial
  • Requisitos estrictos del Acuerdo de Nivel de Servicio con expectativas de baja latencia
  • Patrones de consulta imprevisibles (tableros, informes)
  • Los datos a los que se accede por consulta suelen ser inferiores a 5 GB.
  • Requiere una capacidad de cómputo altamente escalable para dar cabida a patrones fluctuantes.

Expectativas de rendimiento:

  • Tiempo de respuesta de la consulta: segundos (normalmente menos de 5 segundos para paneles interactivos)
  • Actualización de datos: actualizada, que refleja los datos más recientes

Perfil de carga de trabajo:

  • Picos frecuentes durante el horario comercial
  • Variaciones de carga impredecibles (controladas por el usuario)
  • Puede ampliarse a 24 x 7 para organizaciones globales

Importar o extraer patrón

Los patrones de importación extraen datos para los sistemas de bajada y priorizan el rendimiento sobre la latencia:

Características:

  • Número bajo de consultas (actualizaciones programadas)
  • Normalmente, conjuntos de resultados grandes (más de 1000 000 registros)
  • Normalmente programado durante las horas de poca actividad
  • Patrones de consulta predecibles (a menudo impulsados por la exploración detallada)
  • Datos a los que se accede por consulta: hasta decenas de GB

Expectativas de rendimiento:

  • Tiempo de respuesta de la consulta: minutos a horas (orientado a lotes)
  • Actualización de datos: instantánea del día o el día anterior

Perfil de carga de trabajo:

  • Ventanas de ejecución programadas y predecibles
  • Características de carga de trabajo conocidas y requisitos de recursos
  • Procesamiento orientado a lotes

Combinación de consultas en cargas de trabajo de DirectQuery

Al usar patrones de DirectQuery con un modelo de datos de esquema de estrella, espere la siguiente distribución de consultas:

  • Consultas de dimensión: Muchas consultas pequeñas que examinan tablas de dimensiones (cliente, producto, tiempo)
  • Consultas de hechos: Muchas consultas grandes que examinan tablas de hechos con combinaciones y agregaciones
  • Consultas de extracción: Algunas consultas sencillas pero de larga duración para extracción de grandes volúmenes de datos

Esta combinación de consultas variada requiere almacenes de SQL que puedan controlar eficazmente consultas pequeñas y frecuentes y consultas analíticas grandes simultáneamente.

Estrategia de almacenamiento múltiple para el aislamiento de cargas de trabajo

Databricks recomienda aprovisionar varios almacenes de SQL para lograr:

Dimensionamiento adecuado y costos óptimos

  • Ajustar el tamaño de cada almacén de forma adecuada para su patrón de carga de trabajo específico
  • Evite el aprovisionamiento excesivo separando las cargas de trabajo con distintos requisitos de recursos.
  • Uso de almacenes más pequeños para desarrollo y pruebas, más grande para producción
  • Uso de la escalabilidad del almacenamiento para encontrar el equilibrio ideal entre el rendimiento y el costo

Mejor rendimiento general

  • Impedir la contención de recursos entre los métodos DirectQuery e Importar/Extraer
  • Aislar paneles interactivos de las operaciones de actualización por lotes
  • Habilitación del escalado independiente en función de las demandas de carga de trabajo

Carga cruzada y asignación de costos

  • Seguimiento del uso y los costos por unidad de negocio, proyecto o equipo
  • Habilitar modelos de contracargo precisos
  • Mejora de la visibilidad y la responsabilidad de los costos

Administración y gestión más eficientes

  • Asignar responsabilidades de propiedad y administración por equipo o proyecto
  • Aplicación de diferentes directivas de detención automática en función de los patrones de uso
  • Configuración de controles de acceso independientes y supervisión

Para cargas de trabajo de DirectQuery o LiveQuery

  • Uso de almacenes sql sin servidor para la administración automática de recursos
  • Configuración de una detención automática agresiva (15-30 minutos) para la optimización de costos
  • Establecer el tamaño del clúster en función de la complejidad de las consultas y el volumen de datos (comience con Medio, escale verticalmente si es necesario)
  • Establecimiento del número mínimo y máximo de clústeres en función de la carga de trabajo prevista
  • Supervisión de la métrica De consultas en cola máxima y ajuste el número máximo de clústeres en consecuencia

Para importar o extraer cargas de trabajo

  • Uso de almacenes de SQL pro o clásico para trabajos predecibles y programados
  • Configurar tiempos de detención automática más largos (de 1 a 2 horas) si se ejecutan varios trabajos en secuencia
  • Uso de tamaños de clúster más grandes (grande, X-Large) para agregaciones complejas
  • Considere la posibilidad de una programación fija para coincidir con las ventanas por lotes
  • Supervisión de la duración de la consulta y ajuste del tamaño en función de los requisitos del Acuerdo de Nivel de Servicio

Para obtener más información sobre el comportamiento de redimensionamiento y escalado de SQL Warehouse, consulte Comportamiento de redimensionamiento, escalado y puesta en cola de SQL Warehouse.

Para obtener una referencia rápida de los procedimientos recomendados de servicio de BI, consulte la hoja de referencia rápida de servicios de BI.