Browse · People
Reynold Xin
Databricks cofounder and chief architect whose work spans Spark analytics, database execution and live operational data for AI agents.
Reynold Xin is a Databricks cofounder and chief architect. His recent technical work centers on unifying transactional and analytical storage while keeping separate engines for each workload—a design he advocates as a way to give AI agents access to live business data. Earlier, he contributed to the collaborative research behind Shark and Spark SQL and coauthored the technical explanation of Project Tungsten’s changes to Spark execution.[2][3][5][6][7]
Live data for agents
In his June 24, 2026 interview with Matei Zaharia, Xin predicted that many traditional software systems would be rewritten around agents operating on properly situated data. He also described changing his mind about the agent rationale for LTAP, or Lake Transactional/Analytical Processing. An Australian customer told him that agents investigating service-level problems could see telemetry but lacked access to the underlying database activity: who was placing orders and what they were doing. Xin’s response was: “So now I’m sold on our own message.”[1]
Xin’s consequential design choice is to unify storage while retaining Postgres for transactions and Lakehouse engines for analytics. He argues that combining both workloads into one engine risks sacrificing mature features, ecosystem support and performance isolation. He likewise sees little need to impose one query language on agents, which he believes can work with both Postgres and Spark SQL when the data is accessible.[3][1]
In his June 30, 2026 technical essay, Xin credits the Neon team with the foundation of Lakebase. Its architecture separates Postgres compute from durable storage: SafeKeeper replicates write-ahead log records across a quorum using Paxos, and PageServer applies the log to materialize data in object storage. Postgres compute can then start, stop or replicate without owning the durable data. Xin places LTAP later in the chronology, after the Neon and Databricks teams came together, and credits the Lakebase team with implementation.[3]
Xin recalls debating column-oriented storage with Ali Ghodsi until an unnamed engineer built a working prototype that wrote Parquet instead of Postgres pages into the lake. The engineer used spare CPU capacity in the storage fleet to convert rows into columns; the resulting compression also reduced the data sent to object storage. Zaharia qualified Xin’s performance discussion by pointing out that conversion still incurred some CPU overhead.[1]
Xin’s essay explains how LTAP preserves transactional semantics while making the data readable by analytical engines. PageServer converts data into Parquet, retaining row-page caches for efficient transactional reads. Values without a lossless native columnar representation use an overflow field, and intermediate row versions remain available for Postgres multi-version concurrency control and point-in-time recovery while analytical readers see consistent snapshots. Very small tables are exempted from columnar conversion.[3]
For a fresh analytical read, the engine obtains Postgres’s current log sequence number, reads materialized data from object storage, then fetches and merges recent changes from PageServer. In Xin’s account, Postgres supplies that metadata rather than serving the analytical read traffic. His June essay described LTAP rollout in the coming months and acknowledged transitional writes in both row and columnar formats for verification.[3]
Workload-driven engines and development
Xin also described a database-engine rebuild intended to address the accumulated compromises of a decade of expanding workloads. The engineering team used sampled historical query traces to build a machine-learning model for predicting how algorithms and implementations would perform. He said this informed choices during development and at runtime, with incremental rollout intended to avoid waiting years for a complete replacement.[1]
His concrete example was aggregation over a dense set of string values: when there are only 256 possible values, an array lookup can replace a hash table. Scale, latency, throughput, sparsity, distinct-value counts and repeated access all affect which implementation fits a workload. Xin presented the team’s model as a way to prioritize and dispatch algorithms using those differences.[1]
Xin advocates quick, incremental development with close customer contact. He asks teams who their target customer is and whether they know that person well enough to text them. His own feedback also shaped agent tooling: Zaharia recalls Xin requesting a personal shell to list files and tail logs beyond Omnigent’s initial agent-chat interface, and says shell access was subsequently included. Xin’s broader view of consolidation extends to vector search: “Vector database should have never been a separate category.”[1]
Xin’s earlier Berkeley and Spark work supplies context for these later database decisions: it already combined SQL with machine-learning workloads and examined how execution choices affected performance.[5][6][7]
Earlier work: Berkeley, Shark and Spark
Before Databricks, Xin pursued a PhD at UC Berkeley’s AMPLab under Michael Franklin, working on CrowdDB, Shark and GraphX. In his 2026 essay, he recalls his advisor telling him: “OLTP databases are a solved problem. They work. Focus on analytics.” Xin followed that advice into the research that became Spark; he says practical frustrations with operational databases while building Databricks later led him to reconsider that premise.[4][3]
Xin coauthored Shark: SQL and Rich Analytics at Scale, submitted November 27, 2012, with Josh Rosen, Matei Zaharia, Michael J. Franklin, Scott Shenker and Ion Stoica. Shark combined SQL and complex analytics, including iterative machine learning, in a distributed-memory engine capable of recovering from mid-query failures. Column-oriented in-memory storage and dynamic mid-query replanning supported SQL execution.[5]
Xin subsequently coauthored Spark SQL: Relational Data Processing in Spark with Michael Armbrust and nine other collaborators. Built on experience with Shark, Spark SQL connected declarative DataFrames with procedural Spark code, allowing SQL users to call complex analytics libraries. Its extensible Catalyst optimizer supported composable rules, code generation and extension points. Armbrust is credited with creating Spark SQL in 2014 and leading its development.[6][4]
On April 28, 2015, Xin and Rosen introduced Project Tungsten, explaining why CPU and memory efficiency had become central Spark bottlenecks. They proposed explicit memory management and binary processing to reduce Java-object and garbage-collection overhead, cache-aware algorithms, and broader code generation. Their sorting example placed each key beside its record pointer so comparisons could avoid random memory lookups. The announcement planned initial pieces for Spark 1.4 and expanded coverage for Spark 1.5.[7]
From the Latent Space archive
Original posts and separately reviewed explanations.
Sources
- 1
- 2Reynold Xin | DatabricksAccessed 2026-09-18
- 3From monolith to Lakebase to LTAP: rethinking the database from storage upAccessed 2026-09-18
- 4Introduction to Spark 2.0 for Database Researchers [Tutorial 8]Accessed 2026-09-18
- 5Shark: SQL and Rich Analytics at ScaleAccessed 2026-09-18
- 6Spark SQL: Relational Data Processing in SparkAccessed 2026-09-18
- 7Project Tungsten: Bringing Apache Spark Closer to Bare MetalAccessed 2026-09-18
Model source and teaching reviews passed. Human editorial review pending. This profile describes the sources as of 2026-09-17.