Czym jest plik NDJSON?
NDJSON — JSON w formie linii
Co to jest?
NDJSON zapisuje jeden pełny obiekt JSON w każdej linii, bez otaczających nawiasów kwadratowych i bez przecinków między liniami. Każdą linię można odczytać niezależnie od pozostałych.
Zaleta ta ma kluczowe znaczenie przy dużych wolumenach danych: klasyczny plik JSON trzeba wczytać w całości do pamięci, zanim da się go przetworzyć. Plik NDJSON odczytuje się linia po linii — dzięki temu można przetworzyć plik o rozmiarze 50 GB na maszynie dysponującej zaledwie 8 GB pamięci.
Historia i pochodzenie
Konwencja ta upowszechniła się naturalnie wraz z rozwojem przetwarzania danych strumieniowych, gdy rosnące wolumeny uczyniły wczytywanie całego pliku niepraktycznym.
Stała się faktycznym standardem dla dzienników aplikacji oraz eksportów dużych baz danych.
Dlaczego jest przydatny
Można go przetwarzać strumieniowo, linia po linii, niezależnie od całkowitego rozmiaru pliku.
Uszkodzona linia nie unieważnia całej reszty — w odróżnieniu od klasycznego JSON, gdzie jeden źle postawiony przecinek czyni cały plik bezużytecznym.
Ograniczenia i wady
W ścisłym sensie nie jest to poprawny JSON: standardowy parser go odrzuci.
Nie ma oficjalnej specyfikacji, co pozostawia miejsce na różne warianty.
Wskazówki
NDJSON to dobry wybór dla dzienników, masowych eksportów danych czy strumieni danych.
Aby wykorzystać go w arkuszu kalkulacyjnym, przekonwertuj go na CSV — pod warunkiem, że struktura danych jest płaska.
Przekonwertuj swój plik NDJSON w kilka sekund na naszych bezpiecznych serwerach we Francji.
Konwertuj NDJSON