FORMAT COMPARISON
Parquet vs Zarr
Apache Parquetはテーブルを行グループと列チャンクに分けてファイルに記録する列指向形式です。Zarrは多次元配列をチャンクに分け、配列メタデータとともにストアへ保存する仕様です。
ParquetとZarr、どちらを選ぶ?
分析クエリで必要な列を選び、表形式データを列単位で圧縮・走査するならParquetを選びます。大きな多次元配列をチャンク単位で読む、またはオブジェクトストレージで扱うならZarrを検討します。
Parquet向き
分析基盤向けの列指向データ保存
- 必要な列だけを読み込む大規模な表形式データ
Zarr向き
大規模な多次元配列をチャンク単位で保存・交換する・クラウドストレージ上の科学データを扱う
- 配列の一部だけを効率よく読み込む
- 分割データを複数ツールで共有する
基本情報を比較
ParquetとZarrの主な違いを確認できます。
| 項目 | Parquet | Zarr |
|---|---|---|
| 拡張子 | .parquet | .zarr |
| MIME Type | application/vnd.apache.parquet | |
| 主な用途 | 分析基盤向けの列指向データ保存 | 大規模な多次元配列をチャンク単位で保存・交換する・クラウドストレージ上の科学データを扱う |
| 圧縮 | columnar_data | optional_codecs |
| 開く方法 | Parquet対応の分析ツールやライブラリでスキーマ、列、行数、型を確認します。 | Zarr対応ライブラリや解析ソフトで開き、仕様バージョン、配列形状、チャンク、codec、属性を確認します。ローカルではディレクトリ全体、クラウドでは必要なキー群を保持し、作成元のメタデータ規約も確認してください。 |
| 書き出し・変換 | CSVなどから変換する際は、型、null、日時、文字コード、パーティションの扱いを確認します。 | netCDFやHDF5との変換では次元、型、チャンク、属性、座標規約の対応を確認します。変換先で一部構造やcodecを扱えない場合があるため、元データを保存し値を検証してください。 |
用途別の選び方
作りたいものや使う場面から選べます。
必要な列だけを読み込む大規模な表形式データ
分析基盤向けの列指向データ保存
Parquet向き配列の一部だけを効率よく読み込む
大規模な多次元配列をチャンク単位で保存・交換する・クラウドストレージ上の科学データを扱う
Zarr向き分割データを複数ツールで共有する
大規模な多次元配列をチャンク単位で保存・交換する・クラウドストレージ上の科学データを扱う
Zarr向き確認ポイント 1
Parquetの行グループには列チャンクがあり、ファイルメタデータが各列チャンクの位置を示します。Zarrは配列のshape・型・chunk grid・codec等のメタデータとエンコード済みチャンクをストアに置きます。
使い分け確認ポイント 2
Parquetは表の行と列を基準にします。ZarrはN次元配列の軸とチャンクを基準にし、どちらも実データ形状に合う分割設計が性能を左右します。
使い分け選ぶ理由を詳しく
- 変換では行/列や次元の対応、型・null/欠損値、単位、時刻・座標メタデータ、圧縮codec、チャンク/row group単位の読取性能を検証してください。Zarrストアはメタデータと全チャンクをそろえて移す必要があります。