Recomendaciones de optimización en Azure Databricks

Azure Databricks ofrece muchas optimizaciones que admiten una variedad de cargas de trabajo en el almacén de lago, que van desde el procesamiento de extracción, transformación y carga de datos a gran escala hasta consultas ad hoc interactivas. Muchas de estas optimizaciones tienen lugar automáticamente. Sus ventajas se obtienen simplemente al usar Azure Databricks. Además, la mayoría de las características de Databricks Runtime requieren Delta Lake, la capa de almacenamiento predeterminada que se usa para crear tablas en Azure Databricks.

Azure Databricks configura los valores predeterminados que optimizan la mayoría de las cargas de trabajo. Pero, en algunos casos, cambiar las opciones de configuración mejora el rendimiento.

Mejoras de rendimiento de Databricks Runtime

Nota:

Use la versión más reciente de Databricks Runtime para aprovechar las mejoras de rendimiento más recientes. Todos los comportamientos documentados aquí están habilitados de manera predeterminada en Databricks Runtime 10.4 LTS y versiones posteriores.

Recomendaciones de Databricks para mejorar el rendimiento

  • Puede clonar tablas en Azure Databricks para hacer copias profundas o superficiales de los conjuntos de datos de origen.
  • El optimizador basado en costos acelera el rendimiento de las consultas al aprovechar las estadísticas de las tablas.
  • Puede usar Spark SQL para interactuar con datos JSON semiestructurados sin analizar cadenas.
  • Las funciones de orden superior ofrecen un rendimiento integrado y optimizado para muchas operaciones que no tienen operadores comunes de Spark. Las funciones de orden superior brindan una ventaja de rendimiento frente a las funciones definidas por el usuario.
  • Azure Databricks proporciona una serie de operadores integrados y sintaxis especial para trabajar con tipos de datos complejos, incluidas matrices, estructuras y cadenas JSON.
  • Puede ajustar manualmente la configuración de las combinaciones que incluyen rangos o contienen datos con sesgos sustanciales.

Comportamientos opcionales

  • Azure Databricks ofrece una garantía de aislamiento serializable de escritura de manera predeterminada; cambiar el nivel de aislamiento a serializable puede reducir el rendimiento de las operaciones simultáneas, pero puede ser necesario cuando se requiera la serialización de lectura.
  • Puede usar índices de filtro de Bloom para reducir la probabilidad de examinar archivos de datos que no contengan registros que coincidan con una condición determinada.