Diseñar una solución de integración y análisis de datos con Azure Databricks

Completado

Azure Databricks es una plataforma de macrodatos y aprendizaje automático totalmente administrada y basada en la nube, que permite a los desarrolladores acelerar la inteligencia artificial y la innovación. Azure Databricks proporciona a los equipos de ingeniería y ciencia de datos una sola plataforma para el procesamiento de macrodatos y el aprendizaje automático. La plataforma Apache Spark administrada de Azure Databricks facilita la ejecución de cargas de trabajo de Spark a gran escala.

Aspectos que debe saber sobre Azure Databricks

Azure Databricks se basa completamente en Apache Spark y es una excelente herramienta para los usuarios que ya están familiarizados con el marco de informática de clúster de código abierto. Como motor de análisis unificado, está diseñado específicamente para el procesamiento de macrodatos. Los científicos de datos pueden aprovechar la API central integrada para lenguajes centrales como SQL, Java, Python, R y Scala.

Azure Databricks tiene un plano de control y un plano de datos:

  • Plano de control: hospeda trabajos de Databricks, cuadernos con resultados de consulta y el administrador de clústeres. El plano de control también tiene la aplicación web, el repositorio metastore de Hive y listas de control de acceso de seguridad (ACL) y sesiones de usuario. Microsoft administra estos componentes en colaboración con Azure Databricks, y estos no residen en la suscripción de Azure.
  • Plano de datos: contiene todos los clústeres de tiempo de ejecución de Azure Databricks hospedados en el área de trabajo. Todo el procesamiento y el almacenamiento de datos existen en la suscripción local. No se produce ningún procesamiento de datos en la suscripción administrada por Microsoft o Databricks.

Azure Databricks ofrece tres entornos para desarrollar aplicaciones que consumen muchos datos.

  • Databricks SQL: Azure Databricks SQL proporciona una plataforma fácil de usar para los analistas que quieren ejecutar consultas SQL en su lago de datos. Permite crear varios tipos de visualización para explorar los resultados de las consultas desde diferentes perspectivas, así como crear y compartir paneles.
  • Ingeniería y ciencia de datos de Databricks: Ingeniería y ciencia de datos de Databricks es un área de trabajo interactiva que permite la colaboración entre ingenieros de datos, científicos de datos e ingenieros de aprendizaje automático. Para una canalización de macrodatos, los datos (estructurados o sin formato) se ingieren en Azure mediante Azure Data Factory en lotes o transmitidos casi en tiempo real con Apache Kafka, Azure Event Hubs o Azure IoT Hub. Los datos llegan a un lago de datos para un almacenamiento persistente a largo plazo en Azure Blob Storage o Azure Data Lake Storage. Como parte del flujo de trabajo de análisis, use Azure Databricks para leer datos de varios orígenes de datos y convertirlos en información importante mediante Spark.
  • Databricks Machine Learning: Azure Databricks Machine Learning es un entorno integrado de aprendizaje automático de un extremo a otro. Incorpora servicios administrados para el seguimiento de experimentos, el entrenamiento de modelos, el desarrollo y la administración de características, y el servicio de características y modelos.

Escenario empresarial

Vamos a analizar un escenario para Tailwind Traders en la división de fabricación de maquinaria pesada. Tailwind Traders usa los servicios en la nube de Azure para sus necesidades de macrodatos. Están trabajando con datos por lotes y datos de streaming. La división emplea a ingenieros, científicos y analistas de datos que colaboran para elaborar informes rápidos y completos para muchas partes interesadas. Para cumplir los requisitos de macrodatos, tiene previsto recomendar Azure Databricks e implementar el entorno de ciencia de datos e ingeniería.

Vamos a revisar por qué Azure Databricks puede ser la opción adecuada para cumplir estos requisitos.

  • Azure Databricks proporciona un área de trabajo de Analytics integrada basada en Apache Spark que permite la colaboración entre distintos usuarios.
  • Mediante el uso de componentes de Spark como Spark SQL y Dataframes, Azure Databricks puede controlar datos estructurados. Se integra con herramientas de ingesta de datos en tiempo real como Kafka y Flume para procesar datos de streaming.
  • Funcionalidades seguras de integración de datos basadas en Spark que permiten unificar los datos sin centralización. Los científicos de datos pueden visualizar los datos en pocos pasos y usar herramientas conocidas como Matplotlib, ggplot o d3.
  • El entorno de ejecución de Azure Databricks abstrae la complejidad de la infraestructura y la necesidad de experiencia especializada para instalar y configurar la infraestructura de datos. Los usuarios pueden usar aptitudes de lenguajes existentes para Python, Scala y R, y explorar los datos.
  • Azure Databricks se integra profundamente con bases de datos de Azure y almacenes como Azure Synapse Analytics, Azure Cosmos DB, Azure Data Lake Storage y Azure Blob Storage. Admite diversas plataformas de almacén de datos, para satisfacer las necesidades de almacenamiento de macrodatos de Tailwind Traders.
  • La integración con Power BI permite obtener información rápida y significativa, que es un requisito de Tailwind Traders.
  • Azure Databricks SQL no es la opción adecuada porque no puede controlar los datos no estructurados.
  • Azure Databricks Machine Learning tampoco es la opción de entorno adecuada porque el aprendizaje automático no es un requisito en este escenario.

Aspectos que se deben tener en cuenta al usar Azure Databricks

Puede usar Azure Databricks como solución para los escenarios diversos. Tenga en cuenta cómo el servicio puede beneficiar a la solución de integración de datos para Tailwind Traders.

  • Considere la posibilidad de preparar los datos para la ciencia de datos. Cree, clone y edite clústeres de datos complejos y no estructurados. Convierta los clústeres de datos en trabajos específicos. Ofrezca los resultados a los científicos de datos y analistas de datos para su revisión.
  • Considere la posibilidad de obtener información sobre los datos. Implemente Azure Databricks para crear motores de recomendación, análisis de abandono y detección de intrusiones.
  • Considere la productividad entre los equipos de datos y análisis. Cree un entorno de colaboración y áreas de trabajo compartidas para ingenieros de datos, analistas y científicos. Los equipos pueden trabajar juntos en todo el ciclo de vida de la ciencia de datos con áreas de trabajo compartidas, y esto ayuda a ahorrar tiempo y recursos valiosos.
  • Considere la posibilidad de cargas de trabajo de macrodatos. Practique con Azure Data Lake y el motor para obtener el mejor rendimiento y confiabilidad para las cargas de trabajo de macrodatos. Cree canalizaciones de datos de varios pasos sin problemas.
  • Considere la posibilidad de usar programas de aprendizaje automático. Aproveche las ventajas del entorno de aprendizaje automático integrado de un extremo a otro. Incorpora servicios administrados para el seguimiento de experimentos, el entrenamiento de modelos, el desarrollo y la administración de características, y el servicio de características y modelos.