Administra macros, preferencias y argumentos del tiempo de ejecución

En esta página, se explican las preferencias de configuración, las macros y los argumentos del entorno de ejecución en las canalizaciones de Cloud Data Fusion.

Términos clave

Macros
Las macros son marcadores de posición dentro de la configuración del complemento de Cloud Data Fusion. Se representan con variables dentro de ${ }, como ${input_file_path}. Las macros introducen flexibilidad en tus canalizaciones, ya que te permiten usar valores de marcador de posición, que se reemplazan por valores reales en el entorno de ejecución. Esto habilita la configuración dinámica para parámetros, como rutas de archivos y nombres de tablas.
Preferences
Las preferencias son parámetros de configuración predefinidos que se aplican a varios niveles dentro de Cloud Data Fusion, incluido el propio sistema, los espacios de nombres, las aplicaciones (que contienen canalizaciones) y los programas individuales dentro de las canalizaciones. Las preferencias te permiten establecer valores predeterminados para las configuraciones de uso general. Las canalizaciones y los programas en niveles inferiores pueden heredar los valores predeterminados, lo que reduce las tareas de configuración repetitivas.
Argumentos de entorno de ejecución
Los argumentos del entorno de ejecución son pares clave-valor que proporcionan valores para macros y, potencialmente, anulan las preferencias cuando implementas o ejecutas una canalización. Son muy personalizables, lo que te permite ajustar la configuración por ejecución de canalización, sin modificar la canalización subyacente o las preferencias.

Cómo configurar macros

Si deseas usar una macro para un valor de propiedad de complemento, sigue estos pasos:

  1. En Cloud Data Fusion Studio, ve al nodo del complemento y haz clic en Propiedades.
  2. Ve al campo en el que deseas usar una macro y haz clic en la** M** junto al campo.
  3. Ingresa una clave para la macro. Por ejemplo, en las propiedades del complemento del origen del archivo, ingresa la siguiente clave en el campo Formato: ${format.type}.

Establece valores de macro

Configura valores para las macros antes de obtener una vista previa de los datos de una canalización y antes de ejecutarla. Puedes establecer valores de macro en los siguientes lugares:

  • Complementos set de argumentos
  • Argumentos de entorno de ejecución
  • Preferencias de la aplicación
  • Preferencias de espacio de nombres
  • Preferencias del sistema

La ejecución de una canalización con macros hace lo siguiente:

  • Cloud Data Fusion primero verifica si la canalización incluye un complemento establecedor de argumentos:
    • Si tiene un método set de argumentos, Cloud Data Fusion usa los valores para sus macros.
    • Si no hay un método set de argumentos o si hay macros que no están asignadas en el método set de argumentos, Cloud Data Fusion usa los valores de los argumentos del entorno de ejecución de la canalización.
  • Los argumentos del entorno de ejecución heredan las macros de las preferencias de la aplicación.
  • Las preferencias de la aplicación heredan las macros de las preferencias de espacio de nombres
  • Las preferencias de espacio de nombres heredan las macros de las preferencias del sistema.

Ejemplos

Un uso común de las macros es en los campos de ruta de acceso. En vez de usar rutas hard-coded, puedes usar rutas dinámicas. Por ejemplo, en un complemento de origen de Cloud Storage, puedes reemplazar el valor de la ruta de acceso por varias macros. El siguiente valor divide los elementos del bucket, la carpeta y el archivo: gs://${bucket.name}/${folder}/${file.name}.

En el siguiente ejemplo, se cargan datos de un bucket que es estático y de un archivo con un nombre que no es estático. Ingresa el nombre del bucket y usa una macro para el nombre del archivo: gs://<BUCKET_NAME>/${folder}/${file.name}.

Configura las preferencias

En la siguiente sección, se describe la jerarquía de preferencias, en la que las preferencias se configuran, se heredan o se anulan.

Configura las preferencias del sistema

Puedes configurar preferencias para el sistema. Debido a que los nombres de las macros deben ser únicos, cada preferencia se aplica a todas las canalizaciones que usan esa macro.

Por ejemplo, tienes una canalización con una fuente de base de datos y usas macros para el nombre de la base de datos y el nombre de usuario. Puedes configurar las preferencias de base de datos y nombre de usuario en las preferencias del sistema. Cada espacio de nombres y canalización en esa instancia heredan esas preferencias.

Para configurar las preferencias del sistema, sigue estos pasos:

  1. En Cloud Data Fusion Studio, haz clic en System admin > Configuration.
  2. Haz clic en Preferencias del sistema > Editar preferencias del sistema.
  3. En el diálogo Preferences, ingresa las preferencias nuevas o edita las existentes.
  4. Haz clic en Guardar y cerrar. Estas preferencias están disponibles en todos los espacios de nombres, aplicaciones y canalizaciones.

Configura las preferencias de espacio de nombres

Puedes configurar preferencias para espacios de nombres individuales.

Cuando configuras las preferencias de espacio de nombres, se muestran las preferencias heredadas del sistema. Cuando configuras preferencias para un espacio de nombres, puedes anular las preferencias heredadas si configuras valores diferentes. También puedes agregar preferencias de espacios de nombres nuevas.

Para configurar las preferencias de espacio de nombres, sigue estos pasos:

  1. En Cloud Data Fusion Studio, haz clic en Administrador del sistema > Configuración.
  2. Haz clic en Espacios de nombres y selecciona un espacio de nombres para abrir su página de configuración.
  3. Para editar las preferencias heredadas o agregar preferencias nuevas, ve a la pestaña Preferencias y haz clic en Editar. Se abrirá el diálogo Preferences en el que puedes ingresar una preferencia nueva o anular las preferencias heredadas del sistema. Haz clic en <span class="material-icons">add</span> Add y, luego, ingresa la clave y el valor nuevo para la macro.
  4. Haz clic en Guardar y cerrar. La preferencia de espacio de nombres se crea con el valor nuevo, que tiene prioridad sobre la preferencia del sistema.

Establece las preferencias de la aplicación

Puedes establecer preferencias para cada canalización implementada en un espacio de nombres. Cuando configuras las preferencias de la aplicación, aparecen todas las preferencias heredadas del sistema y del espacio de nombres. Cuando configuras preferencias para una aplicación, puedes anular las preferencias heredadas si configuras diferentes valores o agregas preferencias nuevas para la aplicación:

  1. En Cloud Data Fusion Studio, haz clic en y, luego, en el menú Espacio de nombres para seleccionar el espacio de nombres en el que deseas agregar las preferencias de la aplicación.
  2. Haz clic en Centro de control.
  3. Haz clic en el ícono de llave inglesa para establecer preferencias. Aparecerá la página Preferences, que enumera todas las preferencias heredadas.
  4. Para editar las preferencias heredadas o agregar preferencias nuevas, ve a la pestaña Preferencias y haz clic en Editar. Se abrirá el diálogo Preferences en el que puedes ingresar una preferencia nueva o anular las preferencias heredadas del sistema. Haz clic en <span class="material-icons">add</span> Add y, luego, ingresa la clave y el valor nuevo para la macro.
  5. Haz clic en Guardar y cerrar. La preferencia de aplicación se crea con el valor nuevo, que anula las preferencias del sistema o del espacio de nombres. Cuando ejecutas la canalización implementada, las preferencias de la aplicación aparecen como argumentos de entorno de ejecución, que puedes editar de forma opcional.

Configura argumentos del entorno de ejecución

Configura argumentos del entorno de ejecución para proporcionar valores a las macros y, posiblemente, anular las preferencias cuando implementes o ejecutes una canalización.

Argumentos del entorno de ejecución para obtener una vista previa de los datos

Para configurar los valores de cada macro en la canalización cuando obtienes una vista previa de los datos en Cloud Data Fusion Studio, haz clic en Lista > Configurar.

Argumentos del entorno de ejecución para ejecutar canalizaciones implementadas

Si una canalización incluye macros, después de implementarla, debes agregar argumentos de entorno de ejecución, que establecen los valores de las macros.

Cuando implementes una canalización con macros, haz clic en el menú desplegable junto a Ejecutar para abrir el diálogo Argumentos del entorno de ejecución y configurar los valores para cada macro.

Configura las preferencias de la canalización

Para configurar las preferencias de una canalización, sigue estos pasos:

  1. En Cloud Data Fusion Studio, haz clic en List > Deployed y selecciona una canalización implementada para verla.
  2. En el lienzo de la canalización, haz clic en el menú desplegable junto a Ejecutar. Se abrirá el diálogo Argumentos del entorno de ejecución.
  3. En el diálogo Argumentos del entorno de ejecución que se abre, especifica el valor de cada macro de la canalización.

Descripción general de preferencias, macros y argumentos del tiempo de ejecución

Puedes configurar las preferencias en los siguientes niveles:

  • Preferencias del sistema: El nivel más alto en el que configuras las preferencias, como los valores predeterminados, para toda la instancia.
  • Preferencias del espacio de nombres: hereda las preferencias de las Preferencias del sistema. Puedes configurar las preferencias de un espacio de nombres específico.
  • Preferencias de la aplicación: Hereda las preferencias de las preferencias de espacio de nombres. Pueden ser únicas para aplicaciones individuales (que contienen canalizaciones).
  • Argumentos del entorno de ejecución: Pares clave-valor que anulan las preferencias en los niveles superiores.

Si estableces una preferencia a nivel de las preferencias del sistema, los valores de la macro se propagan automáticamente en las preferencias del espacio de nombres, las preferencias de la aplicación y los argumentos del tiempo de ejecución.

Si configuras preferencias a nivel del espacio de nombres, estas aparecen en la lista de preferencias heredadas en las preferencias de la aplicación. Si una canalización usa una macro definida en una preferencia, los argumentos del entorno de ejecución usan el par clave-valor definido en la preferencia. Puedes anular los valores de las preferencias en cada nivel de preferencia y en los argumentos del entorno de ejecución.

Usa preferencias, macros y argumentos de tiempo de ejecución para los siguientes casos de uso:

  • Desarrolla una canalización. Incorpora macros en las que necesitas valores dinámicos para las propiedades del complemento.
  • Opcional: Configura las preferencias. Establece valores predeterminados para las macros en las preferencias de varios niveles.
  • Implementa y ejecuta una canalización. Cuando ejecutas una canalización, sucede lo siguiente:
    • Se aplican preferencias para el nivel relevante, como las preferencias del sistema o de espacio de nombres.
    • Cualquier argumento de tiempo de ejecución que proporciones anulará los valores que se asignaron a las macros en las preferencias.
    • Para resolver las macros, Cloud Data Fusion sustituye sus valores de los argumentos del entorno de ejecución (o las preferencias si no se proporciona un argumento del entorno de ejecución).

Ejemplo

Una canalización tiene un receptor de BigQuery que posee un valor de nombre de tabla que debe cambiar de forma dinámica. Para configurar esto, haz lo siguiente:

  1. Establece la macro. En las propiedades del receptor, usa la siguiente macro en el campo Nombre de la tabla: ${output_table}..
  2. **Establece la preferencia. **En las preferencias de la aplicación, establece una preferencia para ${output_table} con el siguiente valor predeterminado: data_staging.
  3. Establece el argumento runtime. Cuando ejecutes la canalización, proporciona un argumento del entorno de ejecución, por ejemplo, output_table=final_analytics_data.

Durante la ejecución de la canalización, la macro, ${output_table},, se reemplaza por final_analytics_data.