Partager via


Informations de référence sur les propriétés du pipeline

Cet article fournit une référence pour la spécification du paramètre JSON de pipeline et les propriétés de table dans les pipelines déclaratifs Spark Lakeflow. Pour plus d’informations sur l’utilisation de ces différentes propriétés et configurations, consultez les articles suivants :

Configurations de pipeline

  • id

    Entrez : string

    Identificateur global unique (GUID) pour ce pipeline. L’identificateur est attribué par le système et ne peut pas être modifié.

  • name

    Entrez : string

    Nom convivial pour ce pipeline. Le nom peut servir à identifier les travaux du pipeline dans l’interface utilisateur.

  • configuration

    Entrez : object

    Liste facultative de paramètres à ajouter à la configuration Spark du cluster qui exécutera le pipeline. Le runtime des pipelines déclaratifs Lakeflow Spark lit ces paramètres, et ceux-ci sont disponibles pour les requêtes de pipeline via la configuration Spark.

    Les éléments doivent être spécifiés sous la forme de paires key:value.

  • libraries

    Entrez : array of objects

    Tableau de fichiers de code contenant le code de pipeline et artefacts requis.

  • clusters

    Entrez : array of objects

    Tableau de spécifications pour les clusters qui exécuteront le pipeline.

    Si ce paramètre n’est pas spécifié, les pipelines sélectionnent automatiquement une configuration de cluster par défaut pour le pipeline.

  • development

    Entrez : boolean

    Indicateur indiquant s’il faut exécuter le pipeline en mode development ou en mode production.

    La valeur par défaut est true.

  • notifications

    Entrez : array of objects

    Tableau facultatif de spécifications pour Notifications par e-mail lorsqu’une mise à jour de pipeline se termine, échoue avec une erreur pouvant faire de nouvelles tentatives, échoue avec une erreur non nouvelle tentative ou qu’un flux échoue.

  • continuous

    Entrez : boolean

    Indicateur précisant s’il faut exécuter le pipeline en continu.

    La valeur par défaut est false.

  • catalog

    Entrez : string

    Nom du catalogue par défaut du pipeline, où tous les jeux de données et métadonnées du pipeline sont publiés. La définition de cette valeur active le catalogue Unity pour le pipeline.

    Si ce paramètre n’est pas défini, le pipeline publie dans le metastore Hive hérité à l’aide de l’emplacement spécifié dans storage.

    En mode de publication hérité, spécifie le catalogue contenant le schéma cible où tous les jeux de données du pipeline actuel sont publiés. Consultez le schéma en direct (hérité).

  • schema

    Entrez : string

    Nom du schéma par défaut du pipeline, où tous les jeux de données et métadonnées du pipeline sont publiés par défaut. Voir Définir le catalogue cible et le schéma.

  • target (hérité)

    Entrez : string

    Nom du schéma cible dans lequel tous les jeux de données définis dans le pipeline actuel sont publiés.

    Définir target au lieu de schema configure le pipeline pour utiliser le mode de publication hérité. Consultez le schéma en direct (hérité).

  • storage (hérité)

    Entrez : string

    Emplacement dans DBFS ou le stockage cloud où sont stockées les données de sortie et les métadonnées requises pour l’exécution du pipeline. Les tables et les métadonnées sont stockées dans des sous-répertoires de cet emplacement.

    Si le paramètre storage n’est pas spécifié, le système utilise par défaut un emplacement dans dbfs:/pipelines/.

    Le paramètre storage ne peut pas être modifié une fois le pipeline créé.

  • channel

    Entrez : string

    Version du runtime Lakeflow Spark Pipelines Déclaratives à utiliser. Les valeurs prises en charge sont les suivantes :

    • preview pour tester votre pipeline avec les modifications à venir de la version du runtime.
    • current pour utiliser la version actuelle du runtime.

    Le champ channel est facultatif. La valeur par défaut est current. Databricks recommande d’utiliser la version actuelle du runtime pour les charges de travail de production.

  • edition

    Tapez string

    L'édition de produit Lakeflow Spark Declarative Pipelines pour exécuter le pipeline. Ce paramètre vous permet de choisir la meilleure édition du produit en fonction des exigences de votre pipeline :

    • CORE pour exécuter des charges de travail d’ingestion de diffusion en continu.
    • PRO pour exécuter des charges de travail d'ingestion de flux et de capture des changements de données (CDC).
    • ADVANCED pour exécuter des charges de travail d’ingestion de streaming, des charges de travail CDC et des charges de travail qui nécessitent des exigences pour appliquer des contraintes de qualité des données.

    Le champ edition est facultatif. La valeur par défaut est ADVANCED.

  • photon

    Entrez : boolean

    Indicateur précisant s’il faut utiliser Qu’est-ce que Photon ? pour exécuter le pipeline. Photon est le moteur Spark haute performance d’Azure Databricks. Les pipelines Photon sont facturés à un prix différent des pipelines non-Photon.

    Le champ photon est facultatif. La valeur par défaut est false.

  • pipelines.maxFlowRetryAttempts

    Entrez : int

    Si un échec réessayable se produit lors d'une mise à jour du pipeline, il s'agit du nombre maximal de fois pour réessayer un flux avant que la mise à jour ne soit considérée comme échouée.

    Valeur par défaut : deux tentatives de nouvelle tentative. Lorsqu'une défaillance réessayable se produit, le runtime des pipelines déclaratifs Spark de Lakeflow tente d'exécuter le flux trois fois, y compris la tentative d'origine.

  • pipelines.numUpdateRetryAttempts

    Entrez : int

    Si une défaillance retentable se produit pendant une mise à jour, il s’agit du nombre maximal de tentatives de nouvelle tentative de la mise à jour avant l’échec permanent de la mise à jour. La nouvelle tentative est exécutée en tant que mise à jour complète.

    Ce paramètre s’applique uniquement aux pipelines s’exécutant en mode de production. Les nouvelles tentatives ne sont pas tentées si votre pipeline s’exécute en mode de développement ou lorsque vous exécutez une mise à jour Validate.

    Par défaut:

    • Cinq pour les pipelines déclenchés.
    • Illimité pour les pipelines continus.

Propriétés de la table de pipeline

Outre les propriétés des tables prises en charge par Delta Lake, vous pouvez définir les propriétés des tables suivantes.

  • pipelines.autoOptimize.zOrderCols

    Valeur par défaut : aucune

    Une chaîne facultative contenant des noms de colonnes séparés par des virgules qui détermine l’ordre de plan de cette table. Par exemple, pipelines.autoOptimize.zOrderCols = "year,month"

  • pipelines.reset.allowed

    Valeur par défaut : true

    Détermine si une actualisation complète de cette table est autorisée.

  • pipelines.autoOptimize.managed

    Valeur par défaut : true

    Active ou désactive automatiquement l’optimisation planifiée de cette table.

    Pour les pipelines gérés par l’optimisation prédictive, cette propriété n’est pas utilisée.

Intervalle de déclenchement des pipelines

Vous pouvez spécifier un intervalle de déclencheur de pipeline pour l’ensemble du pipeline ou dans le cadre d’une déclaration de jeu de données. Consultez Définir l’intervalle de déclencheur pour les pipelines continus.

  • pipelines.trigger.interval

    La valeur par défaut est basée sur le type de flux :

    • Cinq secondes pour les requêtes de streaming.
    • Une minute pour les requêtes complètes lorsque toutes les données d’entrée proviennent de sources Delta.
    • Dix minutes pour les requêtes complètes lorsque certaines sources de données peuvent être non delta.

    La valeur est un nombre exprimé dans l’unité de temps choisie. Les unités de temps valides sont les suivantes :

    • second, seconds
    • minute, minutes
    • hour, hours
    • day, days

    Vous pouvez utiliser l’unité au singulier ou au pluriel lorsque vous définissez la valeur. Par exemple :

    • {"pipelines.trigger.interval" : "1 hour"}
    • {"pipelines.trigger.interval" : "10 seconds"}
    • {"pipelines.trigger.interval" : "30 second"}
    • {"pipelines.trigger.interval" : "1 minute"}
    • {"pipelines.trigger.interval" : "10 minutes"}
    • {"pipelines.trigger.interval" : "10 minute"}

Attributs de cluster qui ne sont pas définissables par l’utilisateur

Étant donné que Lakeflow Spark Declarative Pipelines (SDP) gère les cycles de vie des clusters, de nombreux paramètres de cluster sont définis par le système et ne peuvent pas être configurés manuellement par les utilisateurs, soit dans une configuration de pipeline, soit dans une stratégie de cluster utilisée par un pipeline. Le tableau suivant répertorie ces paramètres et explique pourquoi ils ne peuvent pas être définis manuellement.

  • cluster_name

    SDP définit les noms des clusters utilisés pour exécuter les mises à jour de pipeline. Ces noms ne peuvent pas être remplacés.

  • data_security_mode

    access_mode

    Ces valeurs sont automatiquement définies par le système.

  • spark_version

    Les clusters SDP s’exécutent sur une version personnalisée de Databricks Runtime qui est continuellement mise à jour pour inclure les dernières fonctionnalités. La version de Spark est fournie avec la version Databricks Runtime et ne peut pas être remplacée.

  • autotermination_minutes

    Étant donné que SDP gère la logique d’arrêt automatique et de réutilisation du cluster, le temps de terminaison automatique du cluster ne peut pas être substitué.

  • runtime_engine

    Bien que vous puissiez contrôler ce champ en activant Photon pour votre pipeline, vous ne pouvez pas définir cette valeur directement.

  • effective_spark_version

    Cette valeur est automatiquement définie par le système.

  • cluster_source

    Ce champ est défini par le système et est en lecture seule.

  • docker_image

    Étant donné que SDP gère le cycle de vie du cluster, vous ne pouvez pas utiliser un conteneur personnalisé avec des clusters de pipeline.

  • workload_type

    Cette valeur est définie par le système et ne peut pas être remplacée.