En este instructivo, se muestra cómo compilar una canalización reutilizable que lee datos desde Cloud Storage, realiza verificaciones de calidad de los datos y escribe en Cloud Storage.
Las canalizaciones reutilizables tienen una estructura de canalización normal, pero puedes cambiar la configuración de cada nodo de canalización según las configuraciones que proporciona un servidor HTTP. Por ejemplo, una canalización estática puede leer datos de Cloud Storage, aplicar transformaciones y escribir en una tabla de salida de BigQuery. Si deseas que la transformación y la tabla de salida de BigQuery cambien según el archivo de Cloud Storage que lee la canalización, crea una canalización reutilizable.
Objetivos
- Usa el complemento Cloud Storage Argument Setter para permitir que la canalización lea diferentes entradas en cada ejecución.
- Usa el complemento Cloud Storage Argument Setter para permitir que la canalización realice diferentes verificaciones de calidad en cada ejecución.
- Escribir los datos de salida de cada ejecución en Cloud Storage
Costos
En este documento, usarás los siguientes componentes facturables de Google Cloud:
- Cloud Data Fusion
- Cloud Storage
Para generar una estimación de costos en función del uso previsto,
usa la calculadora de precios.
Antes de comenzar
- Accede a tu Google Cloud cuenta de. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Habilita las APIs de Cloud Data Fusion, Cloud Storage, BigQuery y Dataproc.
Roles necesarios para habilitar las APIs
Para habilitar las APIs, necesitas el permiso
serviceusage.services.enable. Si creaste el proyecto, es probable que ya tengas este permiso a través del rol Propietario (roles/owner). De lo contrario, puedes obtener este permiso a través del rol Administrador de Service Usage (roles/serviceusage.serviceUsageAdmin). Obtén información para otorgar roles.- Crea una instancia de Cloud Data Fusion.
Navega a la interfaz web de Cloud Data Fusion
Cuando usas Cloud Data Fusion, se usan la Google Cloud consola y la interfaz web independiente de Cloud Data Fusion. En la Google Cloud consola, puedes crear un Google Cloud proyecto de consola, crear y borrar instancias de Cloud Data Fusion. En la interfaz web de Cloud Data Fusion, puedes usar las diversas páginas, como Pipeline Studio o Wrangler, para usar las características de Cloud Data Fusion.
En la Google Cloud consola, abre la página Instancias.
En la columna Acciones de la instancia, haz clic en el vínculo Ver instancia. Se abrirá la interfaz web de Cloud Data Fusion en una pestaña nueva del navegador.
Implementa el complemento Cloud Storage Argument Setter
En la interfaz web de Cloud Data Fusion, ve a la página Studio.
En el menú Acciones, haz clic en GCS Argument Setter.
Lee desde Cloud Storage
- En la interfaz web de Cloud Data Fusion, ve a la página Studio.
- Haz clic en arrow_drop_down Origen y selecciona Cloud Storage. El nodo de una fuente de Cloud Storage aparece en la canalización.
En el nodo de Cloud Storage, haz clic en Properties.
En el campo Nombre de referencia, ingresa un nombre.
En el campo Ruta de acceso, ingresa
${input.path}. Esta macro controla cuál será la ruta de acceso de entrada de Cloud Storage en las diferentes ejecuciones de la canalización.En el panel Output Schema de la derecha, quite el campo offset del esquema de salida haciendo clic en el ícono de la papelera en la fila del campo de desplazamiento.
Haz clic en Validar y soluciona los errores.
Haz clic en el para salir del Properties diálogo.
Transforma tus datos
- En la interfaz web de Cloud Data Fusion, ve a tu canalización de datos en la página Studio.
- En el menú desplegable Transform arrow_drop_down, selecciona Wrangler.
- En el lienzo de Pipeline Studio, arrastra una flecha desde el nodo Cloud Storage hasta el nodo Wrangler.
- Ve al nodo Wrangler en tu canalización y haz clic en Properties.
- En el Nombre del campo de entrada, ingresa
body. - En el campo Receta, ingresa
${directives}. Esta macro controla cuál será la lógica de transformación en las diferentes ejecuciones de canalizaciones.
- Haz clic en Validar y soluciona los errores.
- Haz clic en el para salir del Properties diálogo.
Escribir en Cloud Storage
- En la interfaz web de Cloud Data Fusion, ve a tu canalización de datos en la página Studio.
- En el menú desplegable Receptor arrow_drop_down, selecciona Cloud Storage.
- En el lienzo de Pipeline Studio, arrastra una flecha desde el nodo Wrangler hasta el nodo Cloud Storage que acabas de agregar.
- Ve al nodo receptor de Cloud Storage en tu canalización y haz clic en Properties.
- En el campo Nombre de referencia, ingresa un nombre.
- En el campo Ruta de acceso, ingresa la ruta de un bucket de Cloud Storage en tu proyecto, en el que tu canalización puede escribir los archivos de salida. Si no tienes
un bucket de Cloud Storage, crea uno.
- Haz clic en Validar y soluciona los errores.
- Haz clic en el para salir del Properties diálogo.
Establece los argumentos de macro
- En la interfaz web de Cloud Data Fusion, ve a tu canalización de datos en la página Studio.
- En el arrow_drop_down Condiciones y acciones menú desplegable, haz clic en GCS Argument Setter.
- En el lienzo de Pipeline Studio, arrastra una flecha desde el nodo Cloud Storage Argument Setter hasta el nodo fuente de Cloud Storage.
- Ve al nodo Cloud Storage Argument Setter en tu canalización y haz clic en Properties.
En el campo URL, ingresa la siguiente URL:
gs://reusable-pipeline-tutorial/args.jsonLa URL corresponde a un objeto de acceso público en Cloud Storage que incluye el siguiente contenido:
{ "arguments" : [ { "name": "input.path", "value": "gs://reusable-pipeline-tutorial/user-emails.txt" }, { "name": "directives", "value": "send-to-error !dq:isEmail(body)" } ] }El primero de los dos argumentos es el valor de
input.path. La ruta de accesogs://reusable-pipeline-tutorial/user-emails.txtes un objeto de acceso público en Cloud Storage que contiene los siguientes datos de prueba:alice@example.com bob@example.com craig@invalid@example.comEl segundo argumento es el valor de
directives. El valorsend-to-error !dq:isEmail(body)configura Wrangler para filtrar cualquier línea que no sea una dirección de correo electrónico válida. Por ejemplo, se filtracraig@invalid@example.com.Haz clic en Validar para asegurarte de que no haya ningún error.
Haz clic en el para salir del Properties diálogo.
Implementa y ejecuta la canalización
En la barra superior de la página de Pipeline Studio, haz clic en Asignar un nombre a la canalización. Asígnele un nombre a la canalización y haz clic en Guardar.
Haz clic en Implementar.
Para abrir los Runtime Arguments y ver los argumentos
input.pathydirectivesde la macro (tiempo de ejecución), haz clic en el menú desplegable arrow_drop_down junto a Ejecutar.Deja los campos de valores en blanco para notificar a Cloud Data Fusion que el nodo Cloud Storage Argument Setter en la canalización establecerá los valores de estos argumentos durante el entorno de ejecución.
Haz clic en Ejecutar.
Limpia
Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos usados en este instructivo, borra el proyecto que contiene los recursos o conserva el proyecto y borra los recursos individuales.
Una vez que terminaste el instructivo, limpia los recursos que creaste en Google Cloud para que no consuman tu cuota y no se facturen en el futuro. En las siguientes secciones, se describe cómo borrar o desactivar estos recursos.
Borra la instancia de Cloud Data Fusion
Sigue las instrucciones para borrar tu instancia de Cloud Data Fusion.
Borra el proyecto
La manera más fácil de eliminar la facturación es borrar el proyecto que tú creaste para el instructivo.
Para borrar el proyecto, haz lo siguiente:
- En la Google Cloud consola, ve a la página Administrar recursos.
- En la lista de proyectos, elige el proyecto que deseas borrar y haz clic en Borrar.
- En el diálogo, escribe el ID del proyecto y, luego, haz clic en Cerrar para borrarlo.
¿Qué sigue?
- Lee las guías prácticas.
- Realiza otro instructivo.