Referencia de propiedades de tubería

Referencia de las opciones de configuración json de canalización y propiedades de tabla. Para obtener más información sobre el uso de estas propiedades y configuraciones, consulte los siguientes artículos:

Configuración de canalizaciones de Lakeflow y Canalizaciones declarativas de Apache Spark™

Las canalizaciones de Lakeflow se basan en canalizaciones declarativas (SDP) de Apache Spark™. La configuración de canalización es en gran medida un superconjunto de la especificación del proyecto SDP. Se indican las diferencias en el uso de las propiedades entre las canalizaciones SDP y Lakeflow. Para obtener una comparación de las funcionalidades que las canalizaciones de Lakeflow y el recurso compartido de SDP, consulte Canalizaciones declarativas de Apache Spark.

Configuraciones de canalización

  • id

    Tipo: string

    Identificador único global de esta canalización. El sistema asigna el identificador y no se puede cambiar.

    Solo canalizaciones de Lakeflow. SDP no asigna un identificador de canalización

  • name

    Tipo: string

    Un nombre descriptivo para esta canalización. El nombre se puede usar para identificar los trabajos de canalización en la interfaz de usuario.

    Disponible en SDP como campo obligatorio name

  • configuration

    Tipo: object

    Lista opcional de opciones que se van a agregar a la configuración de Spark del clúster que ejecuta la canalización. El entorno de ejecución de la canalización lee estas opciones y está disponible para las consultas de canalización a través de la configuración de Spark.

    Los elementos deben tener el formato de pares de key:value.

    Disponible en SDP como configuration

  • parameters

    Tipo: object

    Important

    Esta característica se encuentra en su versión beta. Los administradores del área de trabajo pueden controlar el acceso a esta característica desde la página Vistas previas . Consulte Administrar versiones preliminares de Azure Databricks.

    Mapa opcional de pares clave-valor a los que el código fuente de canalización puede hacer referencia mediante la sintaxis de parámetros con nombre (por ejemplo, :source_catalog). Use parámetros para reutilizar el mismo código fuente de canalización en entornos o conjuntos de datos sin editar el origen.

    Las teclas pueden contener caracteres alfanuméricos, caracteres de subrayado (_), guiones (-) y puntos (.). Los valores siempre son cadenas.

    Puede invalidar estos valores predeterminados al iniciar una actualización, en una tarea de canalización de un trabajo o con parámetros de trabajo insertados. Solo se puede hacer referencia a los parámetros de canalización desde el código fuente de SQL. Consulte Uso de parámetros con canalizaciones.

    Solo canalizaciones de Lakeflow

  • libraries

    Tipo: array of objects

    Matriz de archivos de código que contiene el código de canalización y los artefactos necesarios.

    Disponible en SDP como libraries, especificado como una lista de patrones globales de archivo de origen en lugar de una matriz de objetos de archivo de código

  • clusters

    Tipo: array of objects

    Matriz de especificaciones para que los clústeres ejecuten la canalización.

    Si no se especifica, las canalizaciones seleccionan automáticamente una configuración de clúster predeterminada para la canalización.

    Solo canalizaciones de Lakeflow. SDP no administra el proceso

  • development

    Tipo: boolean

    Marca que indica si se va a ejecutar la canalización en modo development o production.

    El valor predeterminado es false.

    Solo canalizaciones de Lakeflow

  • notifications

    Tipo: array of objects

    Una matriz opcional de especificaciones para las notificaciones por correo electrónico cuando se completa una actualización de canalización, produce un error que se puede reintentar, se produce un error que no se puede reintentar o se produce un error en un flujo.

    Solo canalizaciones de Lakeflow

  • continuous

    Tipo: boolean

    Marca que indica si se debe ejecutar la canalización continuamente.

    El valor predeterminado es false.

    Solo canalizaciones de Lakeflow

  • catalog

    Tipo: string

    Nombre del catálogo predeterminado de la canalización, donde se publican todos los conjuntos de datos y metadatos de la canalización. Configurar este valor habilita Unity Catalog para la canalización.

    Si se deja sin establecer, la canalización se publica en el metastore de Hive heredado mediante la ubicación especificada en storage.

    En el modo de publicación heredado, especifica el catálogo que contiene el esquema de destino donde se publican todos los conjuntos de datos de la canalización actual. Consulte el esquema LIVE (heredado).

    Disponible en SDP como catalog

  • schema

    Tipo: string

    Nombre del esquema predeterminado para la canalización, donde todos los conjuntos de datos y metadatos de la canalización se publican de forma predeterminada. Consulte Definir el catálogo y el esquema de destino.

    Disponible en SDP como database, que también acepta el alias schema

  • target (heredado)

    Tipo: string

    Nombre del esquema de destino donde se publican todos los conjuntos de datos definidos en la canalización actual.

    Establecer target en lugar de schema configura la canalización para usar el modo de publicación heredado. Consulte el esquema LIVE (heredado).

    Solo canalizaciones de Lakeflow

  • storage (heredado)

    Tipo: string

    Ubicación en DBFS o almacenamiento en la nube donde se almacenan los datos de salida y los metadatos necesarios para la ejecución de la canalización. Las tablas y los metadatos se almacenan en subdirectorios de esta ubicación.

    Cuando no se especifica la storage configuración, el sistema tiene como valor predeterminado una ubicación en dbfs:/pipelines/.

    El valor storage no se puede cambiar después de crear una canalización.

    Disponible en SDP como campo obligatorio storage . En las canalizaciones de Lakeflow, storage es una configuración heredada.

  • channel

    Tipo: string

    Versión del entorno de ejecución de canalización que se va a usar. Los valores admitidos son:

    • preview para probar la canalización con los próximos cambios en la versión del entorno de ejecución.
    • current para usar la versión actual del entorno de ejecución.

    El campo channel es opcional. El valor predeterminado es current. Databricks recomienda usar la versión actual del entorno de ejecución para cargas de trabajo de producción.

    Solo canalizaciones de Lakeflow

  • edition

    Escriba string

    Edición del producto para ejecutar la canalización. Esta configuración le permite elegir la mejor edición del producto en función de los requisitos de la canalización:

    • CORE para ejecutar cargas de trabajo de ingesta de streaming.
    • PRO para ejecutar cargas de trabajo de ingesta en streaming y de captura de datos modificados (CDC).
    • ADVANCED para ejecutar cargas de trabajo de ingesta de streaming, cargas de trabajo CDC y cargas de trabajo que requieren cumplir con expectativas para aplicar restricciones de calidad de datos.

    El campo edition es opcional. El valor predeterminado es ADVANCED.

    Solo canalizaciones de Lakeflow

  • photon

    Tipo: boolean

    Una marca que indica si se debe usar Photon para ejecutar la canalización. Photon es el motor spark de alto rendimiento de Azure Databricks. Las canalizaciones habilitadas con Photon se facturan con una tarifa diferente a la de las canalizaciones sin Photon.

    El campo photon es opcional. El valor predeterminado es false.

    Solo canalizaciones de Lakeflow

  • serverless

    Tipo: boolean

    Marca que indica si la canalización usa un proceso sin servidor. Consulte Configuración de una canalización sin servidor.

    Solo canalizaciones de Lakeflow

  • event_log

    Tipo: object

    Configuración para el destino del registro de eventos de la canalización, como un objeto con namelos campos , catalogy schema que publican el registro de eventos en una tabla de catálogo de Unity. Consulte Registro de eventos de canalización.

    Solo canalizaciones de Lakeflow

  • tags

    Tipo: object

    Mapa opcional de etiquetas definidas por el usuario para la canalización. Se puede agregar un máximo de 25 etiquetas.

    Solo canalizaciones de Lakeflow

  • budget_policy_id

    Tipo: string

    Identificador de la directiva de presupuesto sin servidor que se va a aplicar a esta canalización, que se usa para atribuir el uso sin servidor para el seguimiento de costos. Este campo aparece en la configuración JSON o YAML solo cuando se establece explícitamente una directiva. Si no se establece, Azure Databricks resuelve automáticamente una directiva predeterminada. La directiva resuelta se muestra en la interfaz de usuario de configuración de canalización, pero no se escribe en la configuración JSON o YAML.

    Solo canalizaciones de Lakeflow

  • root_path

    Tipo: string

    Ruta de acceso raíz de la canalización. Cuando se establece, este directorio se agrega a sys.path al ejecutar Python archivos de origen, por lo que los módulos se pueden importar en relación con él.

    Solo canalizaciones de Lakeflow

  • environment

    Tipo: object

    Especificación de entorno que se usa para instalar Python dependencias para la canalización.

    Solo canalizaciones de Lakeflow

  • pipelines.maxFlowRetryAttempts

    Tipo: int

    Si se produce un error reintentos durante una actualización de canalización, este es el número máximo de veces que se reintenta un flujo antes de producir un error en la actualización de la canalización.

    Úselo para enlazar reintentos en un único flujo que sea propenso a errores reintentos para que no pueda detener toda una actualización.

    Valor predeterminado: dos reintentos. Cuando se produce un error reintentos, el tiempo de ejecución de la canalización intenta ejecutar el flujo tres veces, incluido el intento original.

    Solo canalizaciones de Lakeflow

  • pipelines.numUpdateRetryAttempts

    Tipo: int

    Si se produce un error que permite reintentos durante una actualización, esta es la cantidad máxima de intentos de reintentar la actualización antes de que se produzca un fracaso permanente. El reintento se ejecuta como una actualización completa.

    Úselo para enlazar reintentos en una actualización completa, por lo que se produce un error en una actualización bloqueada permanentemente en lugar de reintentar indefinidamente.

    Este parámetro solo se aplica a las canalizaciones mediante el comportamiento de reintento y reinicio automático. Los reintentos no se intentan para que las actualizaciones ad hoc se ejecuten desde el editor o al ejecutar una Validate actualización.

    Predeterminado:

    • Cinco para las canalizaciones desencadenadas.
    • Ilimitado para canalizaciones continuas.

    Solo canalizaciones de Lakeflow

Propiedades de la tabla de canalización

Además de las propiedades de tabla que admite Delta Lake, puede establecer las siguientes propiedades de tabla.

  • pipelines.autoOptimize.zOrderCols

    Valor predeterminado: ninguno

    Una cadena opcional que contiene una lista de nombres de columna separados por comas para ordenar esta tabla siguiendo el orden Z. Por ejemplo: pipelines.autoOptimize.zOrderCols = "year,month"

    Databricks recomienda la agrupación en clústeres líquidos en lugar de la ordenación Z para optimizar el diseño de datos en las tablas de canalización. Para permitir que Databricks seleccione y mantenga automáticamente las columnas de agrupación en clústeres, use CLUSTER BY AUTO (cluster_by_auto=True en Python). Consulte Uso de clústeres líquidos para tablas.

    Solo canalizaciones de Lakeflow

  • pipelines.reset.allowed

    Opción predeterminada: true

    Controla si se permite una actualización completa para esta tabla.

    Disponible en SDP como pipelines.reset.allowed

  • pipelines.autoOptimize.managed

    Opción predeterminada: true

    Habilita o deshabilita la optimización programada automáticamente de esta tabla.

    En el caso de las canalizaciones administradas por optimización predictiva, esta propiedad no se usa.

    Solo canalizaciones de Lakeflow

Intervalo del desencadenador de canalizaciones

Puede especificar un intervalo de activador para toda la canalización o dentro de la declaración de un conjunto de datos. Consulte Establecimiento del intervalo de desencadenador para canalizaciones continuas.

  • pipelines.trigger.interval

    El valor predeterminado se basa en el tipo de flujo:

    • Cinco segundos para las consultas de streaming.
    • Un minuto para las consultas completas cuando todos los datos de entrada proceden de orígenes delta.
    • Diez minutos para las consultas completas cuando algunos orígenes de datos pueden ser distintos de Delta.

    El valor es un número más la unidad de tiempo. Las unidades de tiempo válidas son:

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

    Puede usar la unidad en singular o plural cuando define el valor, por ejemplo:

    • {"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"}

    Solo canalizaciones de Lakeflow

Atributos de clúster que no son configurables por el usuario

Dado que las canalizaciones administran los ciclos de vida del clúster, el sistema establece muchos valores de clúster y los usuarios no pueden configurarlos manualmente, ya sea en una configuración de canalización o en una directiva de clúster que usa una canalización. En la tabla siguiente se enumeran estas opciones de configuración y por qué no se pueden establecer manualmente.

Solo canalizaciones de Lakeflow. SDP no administra el proceso, por lo que estos atributos de clúster no se aplican

  • cluster_name

    SDP establece los nombres de los clústeres usados para ejecutar actualizaciones de canalización. Estos nombres no se pueden invalidar.

  • data_security_mode

    access_mode

    El sistema establece automáticamente estos valores.

  • spark_version

    Los clústeres de SDP se ejecutan en una versión personalizada de Databricks Runtime que se actualiza continuamente para incluir las características más recientes. La versión de Spark se incluye con la versión de Databricks Runtime y no se puede invalidar.

  • autotermination_minutes

    Dado que SDP administra la lógica de terminación automática y reutilización del clúster, no se puede invalidar el tiempo de terminación automática del clúster.

  • runtime_engine

    Aunque puede controlar este campo habilitando Photon para la canalización, no puede establecer este valor directamente.

  • effective_spark_version

    El sistema establece automáticamente este valor.

  • cluster_source

    El sistema establece este campo y es de solo lectura.

  • docker_image

    Dado que SDP administra el ciclo de vida del clúster, no puede usar un contenedor personalizado con clústeres de canalización.

  • workload_type

    El sistema establece este valor y no se puede invalidar.

Opciones de origen y consulta

Algunos comportamientos de ingesta y procesamiento de datos se configuran en el origen de datos o consulta en lugar de como propiedades de canalización. Estos incluyen la evolución del esquema, las sugerencias de esquema y la inferencia, los límites de velocidad de ingesta y el filtrado de archivos. Para configurarlos, use las opciones de read_files y Auto Loader. Para la evolución del esquema con from_json, consulte Inferir y evolucionar el esquema mediante from_json en canalizaciones.