背景
昨今機械学習データ(主に画像)は tar で固めてメタデータは parquet/json で webdataset 形式が増えてきた気がします.
tar は tar.bz2
とかで使っているがそもそも tar とはなんぞや?
情報
webdataset の tar
webdataset の tar を dump すると @PaxHeader と出るので, Pax 形式ですかね.
00000000 2e 2f 2e 2f 40 50 61 78 48 65 61 64 65 72 00 00 |././@PaxHeader...
webdataset の tar ファイルはそんなに大きくないですが(分割の仕方にもよるが 100 ~ 200 MB くらい?), 毎回ファイル展開するのはめんどいですよね.
非圧縮なので mmap あたりで抽出できるはずです!
Python tarfile なら直読み出しできるっぽ?
画像の場合これを使ってサムネイル生成とかで使えそうです!