Azure Databricks para desarrolladores de Scala
En este artículo se ofrece una guía para el desarrollo de cuadernos y trabajos en Azure Databricks mediante el lenguaje Scala. La primera sección proporciona vínculos a tutoriales para flujos de trabajo y tareas comunes. La segunda sección proporciona vínculos a API, bibliotecas y herramientas clave.
Un flujo de trabajo básico para empezar es:
- Importar código y ejecutarlo mediante un cuaderno interactivo de Databricks: importe su propio código de archivos o repositorios de Git o pruebe uno de los tutoriales que se muestran a continuación.
- Ejecutar el código en un clúster: cree un clúster propio, o bien asegúrese de que tiene permisos para usar un clúster compartido. Asocie el cuaderno al clúster y ejecute el cuaderno.
Más allá de esto, puede expandir horizontes hacia temas más específicos:
- Trabajar con conjuntos de datos más grandes usando Apache Spark
- Añadir visualizaciones
- Automatizar la carga de trabajo como un trabajo
- Desarrollo en IDE (entornos de desarrollo integrados)
Tutoriales
En los tutoriales siguientes se proporcionan código y cuadernos de ejemplo para obtener información sobre los flujos de trabajo comunes. Consulte Importar un cuaderno para obtener instrucciones sobre cómo importar ejemplos de cuadernos en el área de trabajo.
- Tutorial: Carga y transformación de datos mediante DataFrames de Apache Spark
- Tutorial: Delta Lake proporciona ejemplos de Scala.
- El inicio rápido de Java y Scala le ayuda a conocer los conceptos básicos del seguimiento de las ejecuciones de entrenamiento de aprendizaje automático mediante MLflow en Scala.
- En Uso de XGBoost en Azure Databricks encontrará un ejemplo de Scala.
Referencia
En las subsecciones siguientes se enumeran las características y sugerencias clave que le ayudarán a empezar a desarrollar en Azure Databricks con Scala.
API de Scala
Estos vínculos proporcionan una introducción y una referencia para la API de Apache Spark Scala.
- Tutorial: Carga y transformación de datos mediante DataFrames de Apache Spark
- Consulta de cadenas JSON
- Introducción a Structured Streaming
- Referencia de la API de Apache Spark Core
- Referencia de la API de Apache Spark ML
Administración de código con cuadernos y carpetas de Git de Databricks
Los cuadernos de Databricks admiten Scala. Estos cuadernos ofrecen una funcionalidad similar a la de Jupyter, pero con añadidos como visualizaciones integradas mediante macrodatos, integraciones de Apache Spark para la depuración y supervisión del rendimiento, e integraciones de MLflow para el seguimiento de experimentos de aprendizaje automático. Comenzar importando un cuaderno. Una vez que tenga acceso a un clúster, puede asociar un cuaderno al clúster y ejecutar el cuaderno.
Sugerencia
Para restablecer completamente el estado del cuaderno, puede ser útil reiniciar el kernel. Para los usuarios de Jupyter, la opción "reiniciar kernel" en Jupyter corresponde a desasociar y volver a asociar un cuaderno en Databricks. Para reiniciar el kernel en un cuaderno, haga clic en el selector de proceso de la barra de herramientas del cuaderno y mantenga el puntero sobre el clúster o almacenamiento SQL asociados en la lista para mostrar un menú lateral. Seleccione Desasociar y volver a adjuntar. Esto desasocia el cuaderno del clúster y lo vuelve a asociar, lo que reinicia el proceso.
Carpetas de Git de Databricks permiten a los usuarios sincronizar cuadernos y otros archivos con repositorios de Git. Las carpetas de Git de Databricks ayudan con el control de versiones de código y la colaboración, y puede simplificar la importación de un repositorio completo de código en Azure Databricks, la visualización de versiones anteriores del cuaderno y la integración con el desarrollo del IDE. Comenzar clonando un repositorio de Git remoto. Después, puedes abrir o crear cuadernos con el clon del repositorio, adjuntar el cuaderno a un clúster y ejecutar el cuaderno.
Clústeres y bibliotecas
Azure Databricks Compute proporciona administración informática para clústeres de cualquier tamaño: desde clústeres de un solo nodo hasta grandes clústeres. Puede personalizar el hardware y las bibliotecas del clúster según sus necesidades. Por lo general, para empezar a trabajar, los científicos de datos crean un clúster o usan un clúster compartido existente. Una vez que tenga acceso a un clúster, puede asociar un cuaderno al clúster o ejecutar un trabajo en el clúster.
- Para cargas de trabajo pequeñas que solo requieren nodos únicos, los científicos de datos pueden usar el proceso de nodo único para reducir costes.
- Para obtener consejos detallados, vea Recomendaciones de configuración de proceso.
- Los administradores pueden configurar directivas de clúster para simplificar y guiar la creación del clúster.
Los clústeres de Azure Databricks usan Databricks Runtime, que proporciona muchas bibliotecas populares listas para usar, como Apache Spark, Delta Lake y otras. También puede instalar otras bibliotecas de terceros o personalizadas para usarlas con cuadernos y trabajos.
- Comience con las bibliotecas predeterminadas en las versiones de las notas de la versión y compatibilidad de Databricks Runtime. Para obtener listas completas de bibliotecas preinstaladas, consulte Notas de las versiones y compatibilidad de Databricks Runtime.
- También puede instalar bibliotecas de Scala en un clúster.
- Para más información, consulte Bibliotecas.
Visualizaciones
Los cuadernos de Scala de Azure Databricks disponen de compatibilidad integrada con muchos tipos de visualizaciones. También es posible usar las visualizaciones heredadas, como se indica en los siguientes recursos:
Interoperabilidad
En esta sección se describen las características que admiten la interoperabilidad entre Scala y SQL.
Trabajos
Puede automatizar las cargas de trabajo de Scala como trabajos programados o desencadenados en Azure Databricks. Los trabajos pueden ejecutar cuadernos y JAR.
- Para obtener más información sobre cómo crear un trabajo a través de la interfaz de usuario, consulte Configuración y edición de trabajos de Databricks.
- Los SDK de Databricks permiten crear, editar y eliminar trabajos mediante programación.
- La CLI de Databricks proporciona una cómoda interfaz de línea de comandos para automatizar los trabajos.
IDE, herramientas para desarrolladores y SDK
Además de desarrollar código de Scala en cuadernos de Azure Databricks, puede desarrollar externamente mediante entornos de desarrollo integrados (IDE), como IntelliJ IDEA. Para sincronizar el trabajo entre entornos de desarrollo externos y Azure Databricks, hay varias opciones:
- Código: puede sincronizar el código mediante Git. Consulte integración de Git para carpetas de Git de Databricks.
- Bibliotecas y trabajos: puede crear bibliotecas externamente y cargarlas en Azure Databricks. Esas bibliotecas se pueden importar en cuadernos de Azure Databricks o se pueden usar para crear trabajos. Consulte Bibliotecas y Programación y orquestación de flujos de trabajo.
- Ejecución de máquina remota: puede ejecutar código desde el IDE local para desarrollo y pruebas interactivos. El IDE puede comunicarse con Azure Databricks para ejecutar cálculos grandes en clústeres de Azure Databricks. Por ejemplo, puede usar IntelliJ IDEA con Databricks Connect.
Databricks proporciona un conjunto de SDK que permiten la automatización y la integración con herramientas externas. Puede utilizar los SDK de Databricks para administrar recursos como clústeres y bibliotecas, código y otros objetos del área de trabajo, cargas de trabajo y tareas, etc. Consulte los SDK de Databricks.
Para obtener más información sobre los IDE, las herramientas de desarrollo y los SDK, consulte Herramientas de desarrollo.
Recursos adicionales
- La Databricks Academy ofrece cursos autodirigidos y dirigidos por instructores en muchos temas.