Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Apache ORC

Apache ORC (Optimized Row Columnar) is a self-describing, type-aware columnar file format for large-scale data processing. It provides efficient compression, predicate pushdown, and indexing for analytic workloads.

Apache ORC (Optimized Row Columnar) is a self-describing, type-aware columnar file format built for large-scale analytic data processing. Originally created to speed up Apache Hive, it stores data by column rather than by row so that analytic queries read only the fields they need. The format embeds its own schema and lightweight indexes, making each file self-contained and efficient to scan.

  • Columnar storage - Data is grouped by column, so scans and aggregations touch only the relevant fields instead of whole rows.
  • Built-in compression - Type-specific and general compression shrink files dramatically, cutting both storage cost and I/O.
  • Predicate pushdown - Per-stripe min/max statistics and indexes let engines skip blocks that cannot match a query’s filter.
  • Self-describing files - The schema and metadata travel inside the file, so no external catalog is required to read it.

In real data operations, ORC is a storage layer beneath analytics APIs and query engines like Hive, Spark, and Presto rather than something exposed directly over HTTP. Choosing a columnar format like ORC (or its peer Parquet) shapes how fast and how cheaply an analytics or reporting API can answer questions over large datasets. As data platforms increasingly serve machine-readable results to pipelines and agents, a self-describing, efficiently-scannable format is what keeps those queries fast at scale.