Controlador CSV
Esta documentación explica la implementación del controlador CSV y cómo los parámetros de conexión se corresponden con los campos de la interfaz de usuario en la aplicación Gigantic.
Parámetros de Conexión
| Campo UI | Implementación Técnica | Descripción | Requerido | Valor por Defecto |
|---|---|---|---|---|
| Ruta del Directorio | dir en la configuración csv | La ruta del directorio donde se almacenan los archivos CSV | Sí | Directorio de trabajo actual |
| Extensión del Archivo | extension en la configuración csv | La extensión del archivo para archivos CSV | No | csv |
| Encabezados | headers en la configuración csv | Si los archivos CSV tienen encabezados | No | true |
| Delimitador | delimiter en la configuración csv | Carácter usado para separar campos en archivos CSV | No | , (coma) |
| Entrecomillado | quoted en la configuración csv | Si los campos están encerrados entre comillas | No | true |
| Carácter de Comillas | quote en la configuración csv | Carácter usado para entrecomillar campos | No | " (comilla doble) |
Detalles Técnicos
La implementación del controlador CSV utiliza operaciones del sistema de archivos integradas en Node.js con la biblioteca fast-csv para parseo.
Aspectos técnicos clave:
- Trata cada archivo CSV en un directorio como una colección/tabla separada
- Utiliza streams para lectura y escritura eficiente de archivos CSV grandes
- Crea automáticamente el directorio si no existe
- Convierte filas CSV a objetos JSON usando nombres de encabezado como claves
- Maneja serialización de objetos convirtiéndolos a cadenas JSON
- No se requiere autenticación para archivos CSV (acceso al sistema de archivos)
Proceso de conexión:
- El controlador toma una ruta de directorio como entrada
- Escanea el directorio en busca de archivos con la extensión especificada
- Cada archivo se convierte en una colección desde la que se puede leer o a la que se puede escribir
Proceso de lectura:
- Crea un stream legible desde el archivo CSV
- Utiliza el parser fast-csv para convertir datos CSV a arrays
- Transforma arrays a objetos JSON usando encabezados como claves
Proceso de escritura:
- Crea un stream escribible a un archivo CSV
- Utiliza el escritor fast-csv para convertir objetos JSON de vuelta al formato CSV
- Maneja el entrecomillado y escape apropiado de campos
Opciones de Autenticación
| Tipo de Autenticación | Mapeo UI | Descripción |
|---|---|---|
| Ninguna | Única opción disponible | No se necesita autenticación para archivos CSV |
Nota: El controlador CSV no requiere autenticación ya que trabaja directamente con archivos en el sistema de archivos.
Endpoints de API Utilizados
Las conexiones CSV se utilizan principalmente en:
- Creación de Tap (descubrimiento de fuente de datos desde archivos CSV)
- Creación de Sink (destino de datos para datos anonimizados como archivos CSV)
- Ejecución de Pipeline (extracción de datos desde y carga hacia archivos CSV)
Dependencia de Controlador Node.js
El controlador CSV depende de la biblioteca Node.js fast-csv:
- Biblioteca: fast-csv
- Propósito: Parseo y formateo rápido de CSV
- Características: API de streaming, manejo de encabezados, entrecomillado, escape
Parámetros Personalizados
El controlador CSV soporta parámetros personalizados adicionales que pueden especificarse en formato YAML para ajustar finamente el parseo CSV, formateo y comportamiento de manejo de archivos.