コンテンツへスキップ
uencoder

NDJSON

NDJSON(改行区切りJSON)は1行に1つの独立したJSONオブジェクトを格納する形式であり、大規模データセットのストリーミング処理に適する。

目的

配列全体をメモリに読み込まずにストリームとして処理できるJSON形式を提供する。

メカニズム

各行が改行で区切られた完全なJSON値であり、外側の配列ラッパーを持たない。パーサは行単位で読み取りストリーミングを可能にする。ログ、データベースのエクスポート、APIストリームで広く使われる。

ユースケース

  • ElasticsearchのバルクAPI
  • データベースのエクスポートとインポート
  • ログストリーム処理
  • ビッグデータパイプラインの中間形式

例

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

    Newline-delimited

よくあるエラー

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

関連用語

関連ツール

References