es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo escribir la salida en un único archivo CSV desde dentro de Google Cloud Data Fusion.

Estoy ejecutando un pipeline ETL a través de Google Cloud Data Fusion. Un resumen rápido de las acciones del pipeline:

  1. Tomar un archivo csv que es una lista de nombres
  2. Tomar una tabla de bigquery-public-data
  3. Unir las dos y luego exportar los resultados a una tabla
  4. También exportar los resultados a un Group By, donde se consolidan los duplicados y se suman sus puntuaciones.
  5. Exportar la lista resultante de nombres de autor y puntuaciones tanto a una tabla como a un archivo CSV en un bucket de Google Cloud Storage.

Todo esto debería funcionar correctamente, las dos tablas aparecen con los datos correctos y son consultables.

Sin embargo, la salida CSV del Group By se está generando en el bucket de GCS en 37 partes diferentes, cada una con el nombre del sistema de nomenclatura predeterminado (“part-r-00000” a “part-r-00036”). Aparecen en formato CSV (tanto text/csv como application/csv han resultado en archivos CSV utilizables).

Quiero que la salida se exporte al bucket de GCS como un único archivo CSV con un nombre específico (author_rankings.csv). A continuación, adjunto una captura de pantalla del pipeline y una imagen de parte de la salida. Por favor, avíseme si puedo proporcionar información adicional.

Gracias por cualquier sugerencia.

Data Fusion pipeline

Salida actual en varios archivos

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Solución para exportar la salida CSV como un único archivo en el bucket de Google Cloud Storage

    Para exportar la salida CSV como un único archivo en el bucket de Google Cloud Storage, puedes seguir los siguientes pasos:

    1. En el pipeline de Data Fusion, añade una nueva configuración de pipeline por lotes al pipeline y configúrala para leer los datos de salida de la agrupación, luego mapea los datos a un nuevo esquema con dos campos: “nombre” y “puntuación”.
    2. Después de mapear los datos de salida, utiliza la función “Etiquetas de Datos” para etiquetar el esquema de salida para la exportación CSV. Por ejemplo, puedes usar “nombre” como “Nombre del Autor” y “puntuación” como “Puntuación Total”.

    3. Añade un nuevo plugin de “Acción HTTP POST” al pipeline para enviar los datos de salida al bucket de Google Cloud Storage en formato CSV. En la configuración del plugin, selecciona “CSV” como formato de salida, define el bucket y la ruta del archivo para los archivos de salida, y utiliza la función “Etiquetas de Datos” para establecer los nombres de columna y los delimitadores de salida.

    4. Antes de ejecutar el pipeline, asegúrate de que la ruta del archivo de salida en el bucket de Google Cloud Storage sea correcta y de que el bucket tenga los permisos necesarios para escribir el archivo.

    Siguiendo estos pasos, deberías poder exportar la salida CSV como un único archivo en el bucket de Google Cloud Storage con el nombre especificado (“author_rankings.csv”).

Comments are closed.