Descripción de los componentes clave de los flujos de trabajo de Azure Databricks
Los flujos de trabajo de Azure Databricks constan de varios componentes clave que permiten la orquestación y ejecución eficaz de tareas de procesamiento de datos en la nube. Estos son los componentes principales:
Trabajos: los trabajos son el componente principal de los flujos de trabajo de Databricks. Permiten definir y programar tareas automatizadas, como ejecutar cuadernos, scripts o ARchives de Java (JAR) compilados. Los trabajos se pueden desencadenar de forma programada, o bien ejecutarse manualmente, y se pueden configurar para controlar tanto dependencias como flujos de trabajo complejos.
Tareas: en los trabajos, las tareas representan las unidades de trabajo individuales. Cada tarea puede ser un cuaderno, un script de Python, un archivo JAR o una aplicación de Spark-submit. Las tareas de un trabajo se pueden configurar para que se ejecuten secuencialmente o en paralelo, en función de las dependencias definidas entre ellas.
Clústeres: Azure Databricks puede administrar automáticamente la creación y terminación de clústeres para ejecutar tareas. Puedes configurar trabajos para que usen clústeres tanto nuevos como existentes y para flujos de trabajo mayores, se pueden ejecutar diferentes tareas en clústeres independientes. Los clústeres se pueden ajustar para mejorar el rendimiento en función de la carga de trabajo.
Desencadenadores: los desencadenadores determinan la forma y el momento en que se ejecutan los trabajos. Los trabajos se pueden desencadenar manualmente, de forma programada (mediante expresiones Cron), o en función de que otros trabajos se realicen correctamente o tengan errores. Esto proporciona flexibilidad en la forma en que se orquestan los flujos de trabajo.
Cuadernos: los cuadernos de Databricks son documentos colaborativos que contienen código ejecutable, visualizaciones y texto narrativo. Son una unidad común de ejecución de los flujos de trabajo de Databricks y se pueden usar para orquestar transformaciones de datos complejas, visualizaciones y modelos de aprendizaje automático.
Bibliotecas: en Databricks, las bibliotecas contienen paquetes o módulos que pueden usar tanto los cuadernos como los trabajos. Los módulos pueden incluir paquetes de Python, bibliotecas de Java/Scala o paquetes de R. Las bibliotecas se pueden conectar a clústeres y se puede hacer que estén disponibles para que las tareas las usen durante la ejecución.
Planificador: en Azure Databricks, el planificador es una característica eficaz que administra el control de tiempo y la ejecución de los trabajos. Admite escenarios de programación complejos, como la ejecución de trabajos a horas concretas, en una programación periódica o en respuesta a desencadenadores determinados.
Supervisión y registro: Azure Databricks proporciona las herramientas necesarias para supervisar el rendimiento tanto de los trabajos como de los clústeres. Los registros y las métricas se recopilan automáticamente, lo que supone una ayuda a la hora de diagnosticar problemas y optimizar el rendimiento. La integración con Azure Monitor permite realizar una supervisión completa y generar alertas en todo el ecosistema de Azure.
API: Databricks ofrece API REST que permiten crear, administrar y ejecutar trabajos y flujos de trabajo mediante programación y, por ende, la integración con sistemas externos y herramientas de automatización.
Estos componentes funcionan conjuntamente para proporcionar un marco sólido para la administración de flujos de trabajo de datos, lo que permite un procesamiento y una colaboración eficaces en un entorno de nube seguro y escalable.