Columnar Database

A columnar database stores each column of a table together on disk, rather than storing each row together. This layout makes analytical queries that scan or aggregate a few columns across billions of rows far faster than a traditional row-based database.

How a columnar database works

Most transactional databases store data row by row. That is efficient when you need an entire record at once, like fetching one customer's full profile. But analytics rarely works that way. When you ask "what was the average temperature across 4 billion sensor readings," you only need one column, and a row store has to read every row to get it.

A columnar database flips that. Because each column lives together, the engine reads only the columns a query touches and skips the rest. Columns also compress extremely well, since values in a single column tend to be similar, which means less data to read from disk in the first place.

The tradeoff is that columnar stores are built for reading and analyzing, not for constant single-row updates. That is why they power analytics, dashboards, and reporting rather than transactional workloads.

How Arc handles Columnar Database

Arc is a columnar analytical database. It stores data in Apache Parquet, an open columnar format, and queries it with a vectorized engine built for exactly this kind of large-scale aggregation. You get columnar speed without locking your data inside a proprietary store.

Arc is a high-performance columnar database. Open Parquet on storage you own, single Go binary, production-ready in 30 seconds.