Datos
¿Qué es JSONL?
JSON Lines (.jsonl) es un formato de texto que contiene un valor JSON válido en cada línea. Resulta práctico para logs y procesamiento incremental, ya que permite leer los registros uno por uno. El tipo application/jsonl se ha propuesto, pero no está estandarizado.
Cuándo elegir este formato
- Leer y escribir registros de forma incremental
- Añadir o combinar datos de texto con herramientas comunes
Cuándo evitar este formato
- Guardar sin cambios un único documento JSON multilínea
- Datos que necesitan líneas vacías o comentarios
Usos habituales
- Registros y logs procesados línea a línea
- Intercambio progresivo de registros JSON
Características
- Utiliza codificación UTF-8
- Cada línea contiene un valor JSON completo; las líneas vacías no son registros válidos
- Los valores se separan con saltos de línea; se recomienda uno al final del archivo
Ventajas y desventajas
Ventajas
- Permite leer los registros de forma progresiva
- Funciona bien con herramientas de texto y compresión en flujo
Desventajas
- Su estructura no es la de un array JSON normal
- El tipo multimedia de JSON Lines no está estandarizado
Abrir y convertir
Cómo abrirlo
Abre el archivo con un editor de texto o una herramienta compatible con JSON Lines. Validar cada línea como JSON facilita localizar el registro con errores de sintaxis.
Cómo convertirlo
Para crear un array JSON, agrupa las líneas como elementos del array. Para pasar de un array a JSON Lines, escribe cada valor en una línea. En archivos grandes, ten en cuenta la memoria necesaria.
Precauciones
- Cada línea debe ser un valor JSON completo: evita líneas vacías y utiliza UTF-8 sin marca de orden de bytes.
- JSON Lines no tiene la misma estructura que un array JSON. Comprueba qué estructura y tipo multimedia espera la herramienta de destino.
Preguntas frecuentes
¿JSONL y NDJSON son lo mismo?
Ambos nombres suelen referirse a valores JSON separados por saltos de línea. Comprueba la extensión y los requisitos de la herramienta receptora.