Columnar Storage & Predicate Pushdown
Interactive 3D simulator: watch a data table laid out row-major vs columnar, see dictionary encoding shrink low-cardinality columns, and see zone-map predicate pushdown skip whole row groups on a range query.
Every column-oriented file format at the heart of the Big Data stack — Parquet and ORC, read by Spark SQL, Hive and Presto on top of HDFS — makes two bets: store each column contiguously so a query only pays for the columns it touches, and keep a small min/max "zone map" per row group so whole chunks of the table can be skipped without ever being read. This simulator renders a real 48-row table as a 3D grid of cells split into row groups, lets you flip between row-major and columnar layout, turn dictionary encoding on or off, change how many row groups the table is split into, and slide a range query on the sorted id column — with live readouts for the compression ratio, the bytes actually scanned, and how many row groups survive the zone-map prune.
Interactive 3D simulator comparing row-major vs columnar table layout: toggle dictionary encoding, change row-group granularity, and slide a range query to watch zone-map predicate pushdown skip whole row groups.
3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install