HomeData ScienceColumnar vs Row Storage: Analytical Scan Cost

Columnar vs Row Storage: Analytical Scan Cost

Interactive 3D storage-engine simulator: run an analytical query over a row-oriented vs column-oriented table layout and watch column pruning and predicate pushdown decide how many bytes actually get read off disk.

Data Science3DModerate60 FPS
ds-topic-30 ↗ Open standalone

Every analytical query engine has to decide which bytes on disk it actually needs to touch, and that decision is dictated by the physical layout underneath the table. This simulator renders an 8-column, 20-block table as a 3D grid and lets you run the same query — a column selection plus a filter — against a row-oriented layout and a column-oriented layout side by side. Predicate pushdown skips whole blocks whose value range can't match the filter in both layouts; column pruning then lets the columnar layout skip whole columns too, while the row-oriented layout is forced to read every column of every matching block because rows are interleaved on disk. Live readouts convert the highlighted blocks into bytes scanned, blocks touched, and an estimated scan time at a fixed disk throughput, with dictionary+run-length compression applied at realistic, layout-specific ratios.

⚙ Under the hood

Run the same analytical query against a row-oriented and a column-oriented table layout in 3D and watch column pruning and predicate pushdown decide how many bytes actually get read off disk.

data engineeringcolumnar storageOLAPquery optimizationcompressiondata warehouse

3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)