Columnar compression

Store every column the smallest way that's still exact.

Whole-file compressors treat a table as one byte stream. at1 portfolio compresses each column with whichever of a portfolio of byte-exact transforms is smallest after the entropy coder, keeps every column independently addressable, and reconstructs the original file byte-for-byte with a SHA-256 trailer.

column-by-column
each column stored as its own smallest byte-exact form
byte-exact
SHA-256-verified; the file comes back identical, or it refuses
random access
read one column without decoding the rest
money-friendly
biggest wins on decimal and numeric data

Decimal / money columns

Prices, amounts, rates. Fixed-decimal numbers are turned into whole numbers under the hood, then packed — the single biggest source of the win, and still reformatted back exactly.

Numeric & ID columns

Order IDs, timestamps, counters. Stored as differences, runs, or downcast integers — whichever is smallest for that specific column.

Text / category columns

Repeated labels become a small dictionary; everything else is kept as-is. Never worse than storing it plainly.

Three commands

# compress a CSV -> addressable, SHA-verified, byte-exact container
at1 portfolio encode data.csv -o data.at1pf

# read ONE column back without decoding the rest
at1 portfolio col data.at1pf amount

# reconstruct the original file, byte-for-byte (verify it matches)
at1 portfolio decode data.at1pf -o restored.csv
at1 portfolio verify data.at1pf --against data.csv

Honest scope

The win scales with the numeric/decimal fraction of the table — finance and metered data compress hardest; free-text-heavy tables see less. If a column can't be reproduced exactly by a transform, it falls back to raw storage (never-worse), and the encoder re-checks byte-exactness before writing. Input is simple comma-delimited CSV.

Part of the AT-1 verifiable-data platform. Pay-as-you-go, billed per thousand rows encoded, with a monthly free tier.