分析と広告のためのCookie
分析と広告のためにCookieを使っており、どちらもGoogleに送られます。拒否しても、目に見える動作は何も変わりません。プライバシーポリシーを読む
ここで Parquet を NDJSON に変換できます。無料、アカウント不要です。ファイルを上の枠に落とせば、数秒で結果がダウンロードできる状態になります。 変換はお使いのブラウザーの中で行われるので、ファイルはアップロードされません。Windows でも macOS でも Linux でも、iPhone でも Android でも同じように動き、通信を切っても動き続けます。
一度に100ファイルまで。フォーマットが混ざっていても構いません。
順番に変換し、まとめてZIPでダウンロードします。
Parquet から NDJSON
データ分析基盤で使われる Parquet は、そのままでは中身を目で確認しにくいバイナリ形式です。この変換は Parquet の各行を 1 行 1 JSON の NDJSON に変え、ログ処理ツールやテキストエディタで内容を確認できるようにします。
整数のうち 2 の 53 乗を超える大きな値は、数値としてではなく文字列として書き出されます。JavaScript の数値がその範囲を正確に表現できないための処置です。日付の列は ISO 形式の文字列に、バイナリの列は小文字の 16 進数文字列に変換されます。
入れ子構造を持つ列があれば、その値は JSON のテキストとしてそのまま文字列の中に埋め込まれます。
Parquet が JSON から書き出されたものであれば、書き込みの時点ですでに型は真偽値・整数・浮動小数点数・文字列の 4 種類に絞られ、列によっては 1 つの値のために列全体が文字列に丸められていることもあります。
この変換はその Parquet が持っている型情報をそのまま読み取るだけなので、Parquet を作る前の元の JSON が持っていた細かい型の違いを取り戻すことはできません。JSON から Parquet、また NDJSON へと往復させても、最初の状態には戻りません。
書き出された NDJSON の各行は、それ単独で有効な JSON です。ファイル全体を一度に読み込まなくても、1 行ずつ順番に処理できるという NDJSON の利点がそのまま活かされます。
元の Parquet がどの圧縮アルゴリズムで書かれていても、この変換はその違いを気にせず読み込みます。読み込みに失敗するのは、ファイルが破損しているか、対応していない特殊な構造を使っている場合に限られます。
複数の Parquet ファイルを一度に置いても、順番に処理されて ZIP にまとめて返ってきます。アップロードは発生しませんが、1 回にまとめられるのは 100 ファイルまでです。行数の多いファイルほど処理に時間がかかりますが、実際の制約は端末の空きメモリーです。
| Parquet | NDJSON | |
|---|---|---|
| 正式名称 | Apache Parquet | Newline-Delimited JSON |
| 拡張子 | .parquet | .ndjson, .jsonl |
| メディアタイプ | application/vnd.apache.parquet | application/x-ndjson |
| 圧縮方式 | 可逆 — 何も捨てない | — |
| 最初の公開 | 2013 | 2013 |
| 発行元 | Apache Software Foundation | — |
| ライセンス | オープン標準 | オープン標準 |
| 現在の位置づけ | 現行 | 現行 |
| ブラウザで開けるか | 対応なし | 対応なし |
| 代わりに検討される形式 | CSV, JSON | JSON, CSV |
失われるものはありません。Parquet も NDJSON も中身を劣化なしに保持します。この変換が変えるのは包み方であって品質ではないので、劣化が積み重なる心配をせずに何度でも繰り返せます。
NDJSON は作業のための形式で、Parquet は完成したものを渡すための形式です。戻ってくるのはページの絵ではなく、編集できる文字です。たいていはそれがこの変換の理由であり、同時にこの変換の限界でもあります。
pandasは Parquet と NDJSON のどちらも読めるので、別のプログラムを開かずに、結果を元のファイルと並べて確かめられます。
NDJSON は 2013 年から使われています。jqとpandasがこの形式を読めます。
いいえ。この変換は完全にブラウザーの中で行われるので、ファイルが端末から出ることはありません。ご自分で確かめられます。開発者ツールのネットワークタブを開いて、何か変換してみてください。ページそのものと、このサービスの費用をまかなっている分析・広告のリクエストは見えますが、あなたのファイルを運んでいるリクエストはひとつもありません。
はい。アカウントも透かしもなく、消費される 1 日の割り当てもありません。お使いの機械の上で動くので、何度でも戻ってきていただけます。ブラウザーが扱えるのは 100 MB までのファイルで、一度に 100 本です。
いいえ。NDJSON は同じ内容を何も捨てずに保持できるので、結果は品質の点で元のファイルと同じです。
失われるものはありません。Parquet も NDJSON も中身を劣化なしに保持します。この変換が変えるのは包み方であって品質ではないので、劣化が積み重なる心配をせずに何度でも繰り返せます。
NDJSON は作業のための形式で、Parquet は完成したものを渡すための形式です。戻ってくるのはページの絵ではなく、編集できる文字です。たいていはそれがこの変換の理由であり、同時にこの変換の限界でもあります。