Platforms
Arrow won by disappearing
The interchange layer no vendor advertises and every engine ships. A note on the standard that succeeded by becoming boring.
By The editors · · 1 min
No keynote this year mentioned Apache Arrow, which is how you know it won. The columnar in-memory format is now the assumed representation inside or between effectively every engine this journal reviews: the dataframe libraries, the embedded engines, the query federators, the warehouse drivers. The standard stopped being a feature and became a load-bearing wall, and load-bearing walls do not get booth space.
The victory is worth dating because of how it happened. Arrow never asked anyone to migrate. It is an interchange representation, not a storage product, so adopting it never meant leaving anything; it meant your engine stopped paying serialization tax when talking to the next engine. Each vendor adopted it for selfish reasons, and the selfish reasons compounded into a commons. Compare the table-format wars, which needed an armistice before the market could move. Arrow skipped the war by having nothing to defend.
The practical dividend shows up in the driver layer, where ADBC is quietly retiring a decades-old tax: row-oriented database APIs feeding column-oriented consumers, one transpose per query, forever. Columnar results into columnar memory, no ceremony. If your pipelines still pull warehouse data through a row-based connector into a dataframe, that transpose is a line item you are paying and nobody is invoicing.
The journal's verdict is mostly a reading recommendation: when a vendor claims a proprietary "high-performance connector", check whether it is Arrow in a trench coat, and prefer the trench coat. Standards that survive are the ones that make defection pointless. Arrow made copying data the only competitor, and copying data was never going to win the review.