Paginación de ficheros en el Files Repository y nuevo componente para el DataFlow

ES | EN

Desde versión 2.1.0-gradius

Introducción

En esta versión se ha incorporado una funcionalidad al API REST del Files Repository, que permite paginar la recuperación del contenido de ficheros de texto.

Además se ha incorporado un nuevo componente en el DataFlow para manejar de forma sencilla e integrada los ficheros almacenados en el Files Repository

¿Cómo paginar un fichero?

Vamos a subir un fichero CSV de 30Mb al Files Repository de Plataforma:

Si accedemos a las APIS del Control Panel:

Y seleccionamos la opción Binary nos aparecerá un listado con todos los servicios disponibles para los Binary Files. En este caso nos interesa el siguiente:

Donde:

  • Authorization: Token OAuth del usuario. En necesario que el usuario tenga permisos sobre el fichero que se quiere consultar.

  • Id: identificador del fichero en el Binary Repository

  • startLine: indica el inicio de la paginación, es decir, la primera línea del documento que queremos leer.

  • maxLines: el número de líneas que queremos obtener de cada vez.

  • skipHeaders: si queremos o no eliminar las cabeceras del resultado.

Vamos a realizar un par de llamadas para ver cómo se devolvería el resultado.

Con cabecera

Si ponemos el parámetro skipHeaders=false, obtenemos las primeras 1000 líneas del documento incluyendo la cabecera al principio:

Sin cabecera

Si ponemos el parámetro skipHeaders=true, obtenemos las primeras 1000 líneas del documento sin la cabecera al principio:

Nuevo componente Files Manager en el DataFlow

Aprovechando este nuevo servicio se ha creado un componente nuevo de Plataforma para el DataFlow. Se trata de un componente Origin que permitirá leer archivos de gran volumen desde el Files Repository.

Para añadir el nuevo componente al pipeline, sólo tenemos que buscarlo en la paleta de componentes:

Lo seleccionamos y lo arrastramos hasta el panel:

A continuación se muestra cómo configurar el componente.

Conexión

Como hemos comentado anteriormente, este componente utiliza el servicio REST creado en el controlpanel, por lo que para poder usarlo necesitaremos configurar la conexión con la siguiente información:

  • Authorization: Token OAuth del usuario. En necesario que el usuario tenga permisos sobre el fichero que se quiere consultar.

  • Procolot: HTTP o HTTPS

  • Host: Por defecto será “controlpanelservice” ya que el DataFlow se conectará internamente con el Controlpanle por su nombre de servicio. Si quisiéramos que el componente atacara a otro controlpanel, bastaría con poner aquí la IP.

  • Post: Puerto de conexión con el controlpanel. Por defecto 18000.

Cofiguración

A continuación hay que configurar el nodo indicándole la siguiente información:

  • File Id: Id del fichero que se quiere leer

  • Batch number: número de líneas que se van a leer de cada vez.

  • Starting offset: línea por la que se va a empezar a leer el fichero.

  • Skip Headers: Si se quiere o no devolver el resultado con las cabeceras.

  • Stop on complete: parar el pipeline una vez termine de leer el documento.

Resultado

A continuación se muestra el resultado de la ejecución de un pipeline que lee el fichero incluyendo las cabeceras: