Human, SQL, and S3-friendly archives?
https://news.ycombinator.com/item?id=41134549Suppose there's a collection of 1000 files that can be compressed into blobs of ~1 MB per file (gz or zstd).
It would be cool to be able to put all of these blobs into a CSV-like file shown below, throw it into S3-compatible storage, and query for specific blobs using SQL-like queries, without reading the whole thing. Is this possible?
byte offset,id,desc,blob
0, 1,ABCD,<blob 1>
1234567, 2,EFGH,<blob 2>
2345678, 3,KLMN,<blob 3>
...
987654321,999,XYZ,<blob 999>
Desired features:- some columns remain human readable
- can use SQL to retrieve specific row(s) without reading everything (is that how it is for Parquet querying from S3?)
- ability to append (updates not necessary)
There's Parquet, but it's not human-readable, and doesn't like appends. And I don't need to be clever about columnar compression and row groups.
The goal is to better deal with very large amounts of relatively small files. Buckets with millions of objects are not fun.