Saltar al contenido
uencoder

NDJSON

NDJSON (JSON delimitado por saltos de línea) coloca un objeto JSON independiente por línea, apto para el procesamiento en streaming de grandes conjuntos de datos.

Propósito

Proporcionar un formato JSON procesable como flujo sin cargar un array completo en memoria.

Mecanismo

Cada línea es un valor JSON completo separado por saltos de línea, sin envoltorio de array exterior. Un parser lee línea a línea, permitiendo streaming. Común en logs, exportaciones de bases de datos y flujos de API.

Casos de uso

  • API bulk de Elasticsearch
  • Exportación e importación de bases de datos
  • Procesamiento de flujos de logs
  • Formato intermedio para pipelines de big data

Ejemplos

  • entrada
    {"a":1}
    {"a":2}
    Output
    Two JSON objects, one per line

    Newline-delimited

Errores comunes

A string containing a literal newline breaks the line format
Newlines inside JSON strings are already escaped as \n

Términos relacionados

Herramientas relacionadas

References