Azure Databricks pour les développeurs Scala
Cet article fournit un guide pour développer des notebooks et des travaux dans Azure Databricks à l’aide du langage Scala. La première section fournit des liens vers des tutoriels pour les workflows et travaux courants. La deuxième section fournit des liens vers des API, des bibliothèques et des outils clés.
Un workflow de base pour la prise en main est :
- Importez du code et exécutez-le à l’aide d’un notebook Databricks interactif : importez votre propre code à partir de fichiers ou de référentiels Git ou essayez un tutoriel répertorié ci-dessous.
- Exécutez votre code sur un cluster : créez vous-même un cluster ou vérifiez que vous disposez des autorisations nécessaires pour utiliser un cluster partagé. Attachez votre notebook au cluster et exécutez le notebook.
Au-delà de cela, vous pouvez vous tourner vers des rubriques plus spécifiques :
- Utiliser des jeux de données plus volumineux avec Apache Spark
- Ajouter des visualisations
- Automatiser votre charge de travail en tant que travail
- Développer dans des IDE
Tutoriels
Les tutoriels ci-dessous fournissent des exemples de code et de notebooks pour en savoir plus sur les workflows courants. Consultez Importer un notebook pour obtenir des instructions sur l’importation d’exemples de notebooks dans votre espace de travail.
- Tutoriel : charger et transformer des données en utilisant DataFrames Apache Spark
- Le Tutoriel : Delta Lake fournit des exemples Scala.
- Le démarrage rapide Java et Scala vous aide à découvrir les principes de base du suivi des exécutions de formation Machine Learning à l’aide de MLflow en Scala.
- L’utilisation de XGBoost sur Azure Databricks fournit un exemple Scala.
Informations de référence
Les sous-sections ci-dessous répertorient les principales fonctionnalités et des conseils pour vous aider à commencer à développer dans Azure Databricks avec Scala.
API Scala
Ces liens fournissent une présentation et une référence pour l’API Apache Spark Scala.
- Tutoriel : charger et transformer des données en utilisant DataFrames Apache Spark
- Interroger des chaînes JSON
- Présentation de Structured Streaming
- Référence de l’API Apache Spark Core
- Référence de l’API ML Apache Spark
Gérer du code avec des notebooks et des dossiers Git Databricks
Les notebooks Databricks prennent en charge Scala. Ces notebooks fournissent des fonctionnalités similaires à celles de Jupyter, mais avec des ajouts tels que des visualisations intégrées à l’aide du Big Data, des intégrations Apache Spark pour le débogage et la supervision des performances et des intégrations MLflow pour le suivi des expériences de Machine Learning. Commencez en important un notebook. Une fois que vous avez accès à un cluster, vous pouvez attacher un notebook au cluster et exécuter le notebook.
Conseil
Pour réinitialiser complètement l’état de votre notebook, il peut être utile de redémarrer le noyau. Pour les utilisateurs Jupyter, l’option « redémarrer le noyau » dans Jupyter correspond au détachement et au rattachement d’un notebook dans Databricks. Pour redémarrer le noyau d’une notebook, cliquez sur le sélecteur de calcul dans la barre d’outils du notebook et survolez le cluster ou l’entrepôt SQL attaché dans la liste pour afficher un menu latéral. Sélectionnez Détacher et rattacher. Cela détache le notebook de votre cluster et le réattache, ce qui redémarre le processus.
Les Dossiers Git Databricks permettent aux utilisateurs de synchroniser des notebooks et d’autres fichiers avec des référentiels Git. Les dossiers Git Databricks facilitent le contrôle de version et la collaboration sur du code. Il peut simplifier l’importation d’un référentiel complet de code dans Azure Databricks, l’affichage des versions passées de notebooks et l’intégration au développement dans les IDE. Commencez en clonant un référentiel Git distant. Vous pouvez ensuite ouvrir ou créer des notebooks avec le clone du référentiel, attacher le notebook à un cluster et exécuter le notebook.
Clusters et bibliothèques
Azure Databricks compute assure la gestion du calcul pour les clusters de toute taille : des clusters à nœud unique aux grands clusters. Vous pouvez personnaliser le matériel et les bibliothèques de cluster en fonction de vos besoins. Les scientifiques des données commencent généralement à travailler en créant un cluster ou en utilisant un cluster partagé existant. Une fois que vous avez accès à un cluster, vous pouvez attacher un notebook au cluster ou exécuter un travail sur le cluster.
- Pour les petites charges de travail qui nécessitent uniquement des nœuds uniques, les scientifiques des données peuvent utiliser lescalculs à nœud unique pour réduire les coûts.
- Pour des conseils détaillés, consultez Recommandations pour la configuration de l’ordinateur
- Les administrateurs peuvent configurer des stratégies de cluster pour simplifier et guider la création du cluster.
Les clusters Azure Databricks utilisent un Databricks Runtime, qui fournit de nombreuses bibliothèques populaires prêtes à l’emploi, notamment Apache Spark, Delta Lake, etc. Vous pouvez également installer d’autres bibliothèques tierces ou personnalisées pour les utiliser avec les notebooks et les travaux.
- Commencez par les bibliothèques par défaut dans les Notes de publication sur les versions et la compatibilité de Databricks Runtime. Pour obtenir la liste complète des bibliothèques préinstallées, consultez les Notes de versions et compatibilité de Databricks Runtime.
- Vous pouvez également installer des bibliothèques Scala dans un cluster.
- Pour plus d’informations, consultez Bibliothèques.
Visualisations
Les notebooks Scala Azure Databricks prennent en charge de nombreux types de visualisations. Vous pouvez également utiliser des visualisations héritées :
- Vue d’ensemble de la visualisation de données
- Présentation approfondie de la visualisation dans Scala
Interopérabilité
Cet article décrit les fonctionnalités qui prennent en charge l’interopérabilité entre Python et SQL.
travaux
Vous pouvez automatiser les charges de travail Scala en tant que travaux planifiés ou déclenchés dans Azure Databricks. Les travaux peuvent exécuter des notebooks et des JAR.
- Pour plus d’informations sur la création d’un travail via l’interface utilisateur, consultez Configurer et modifier des travaux Databricks.
- Les Kits de développement logiciel (SDK) Databricks vous permettent de créer, modifier et supprimer des tâches par programmation.
- L’interface CLI Databricks fournit une interface de ligne de commande pratique pour automatiser les tâches.
IDE, outils de développement et Kits de développement logiciel (SDK)
En plus de développer du code Scala dans des notebooks Azure Databricks, vous pouvez développer en externe à l’aide d’environnements de développement intégrés (IDE), tels que IntelliJ IDEA. Pour synchroniser le travail entre les environnements de développement externes et Azure Databricks, il existe plusieurs options :
- Code : vous pouvez synchroniser le code à l’aide de Git. Consultez Intégration de Git pour les dossiers Git Databricks.
- Bibliothèques et travaux : vous pouvez créer des bibliothèques en externe et les charger dans Azure Databricks. Ces bibliothèques peuvent être importées dans des notebooks Azure Databricks, ou elles peuvent être utilisées pour créer des travaux. Consultez Bibliothèques et Planifier et orchestrer des flux de travail.
- Exécution d’ordinateur distant : vous pouvez exécuter du code à partir de votre IDE local pour le développement et le test interactifs. L’IDE peut communiquer avec Azure Databricks pour exécuter des calculs volumineux sur des clusters Azure Databricks. Par exemple, vous pouvez utiliser IntelliJ IDEA avec Databricks Connect.
Databricks fournit un ensemble de Kits SDK qui prennent en charge l’automatisation et l’intégration dans des outils externes. Vous pouvez utiliser les Kits SDK Databricks pour gérer des ressources comme des clusters et des bibliothèques, du code et d’autres objets d’espace de travail, des charges de travail et des tâches, etc. Consultez les Kits de développement logiciel (SDK) Databricks.
Pour plus d’informations sur les IDEs, les outils de développement et les kits SDK, consultez Outils de développement.
Ressources supplémentaires
- Databricks Academy propose des cours auto-rythmés et dirigés par des instructeurs sur de nombreux sujets.