À l'intérieur d'une grappe d'actifs

Introduction à Databricks Lakehouse

Gang Wang

Senior Data Scientist

Structure du projet de grappe

$$

my_project/
|-- databricks.yml
|-- src/
|   |-- etl_pipeline.py
|   |-- data_quality.py
|-- resources/
|   |-- jobs/
|   |   |-- nightly_etl.yml
|   |-- pipelines/
|       |-- sales_pipeline.yml
|-- tests/
    |-- test_etl.py

$$

  • databricks.yml - le fichier de configuration central
  • src/ - vos notebooks et votre code
  • resources/ - définitions de travaux et de filières
  • tests/ - fichiers de tests optionnels
Introduction à Databricks Lakehouse

Le fichier databricks.yml

bundle:
  name: sales_analytics

workspace:
  host: https://myworkspace.databricks.com

targets:
  dev:
    default: true
    workspace:
      root_path: /Users/me/dev
  production:
    workspace:
      root_path: /Shared/production
    permissions:
      - level: CAN_MANAGE
        group_name: data_engineers
Introduction à Databricks Lakehouse

Définir des ressources

$$

couches : databricks.yml (haut), Ressources - Travaux - Filières - Tableaux de bord, Code - Notebooks - Scripts Python, Cibles - dev - staging - production

$$

resources:
  jobs:
    nightly_etl:
      name: "Nightly ETL Pipeline"
      schedule:
        quartz_cron: "0 0 2 * * ?"
      tasks:
        - task_key: ingest
          notebook_task:
            notebook_path: src/etl.py
Introduction à Databricks Lakehouse

Commandes CLI de grappe

$$

Commande Rôle
bundle validate Vérifier la configuration
bundle deploy Déployer vers une cible
bundle run Déclencher un travail déployé
bundle destroy Supprimer les ressources déployées

$$

# Valider avant de déployer
databricks bundle validate

# Déployer en production
databricks bundle deploy \
  --target production

# Déclencher une exécution
databricks bundle run nightly_etl
Introduction à Databricks Lakehouse

Flux de déploiement

organigramme : flux de déploiement

$$

  • Dév. local - modifier le code et valider les configs
  • Contrôle de version - valider les changements dans Git
  • Automatisation CI/CD - déployer en préprod et lancer les tests
  • Passage en production - déployer en toute confiance
Introduction à Databricks Lakehouse

Résumé

$$

  • databricks.yml définit votre projet, vos cibles et vos ressources
  • Les ressources incluent des travaux, des filières et des tableaux de bord
  • Les cibles correspondent aux environnements (dev, préprod, production)
  • Commandes CLI : validate, deploy, run, destroy
Introduction à Databricks Lakehouse

Passons à la pratique !

Introduction à Databricks Lakehouse

Preparing Video For Download...