Xata - Postgres at Scale

Xata - Postgres at Scale

@xata.io

With copy-on-write branching, data masking, separated storage & compute , 100% Postgres

66 followers1 following211 posts

Let your agent dig through production-sized data without touching production. xata scratch gives you a throwaway branch for one query, test run or migration, then deletes it.

You don't have to move your Postgres to get branches. Stay on RDS or Cloud SQL. `xata clone stream` follows the source through logical replication, and you branch the copy in Xata. Production stays where it is.

A read-only user lets you look at production data. It doesn't let you try anything. xata scratch gives you a throwaway branch for one query, test run or migration, then deletes it.

A coding agent wants its own database for every task, created when the work starts and removed when it ends. A shared staging database doesn't survive that for long. Our CEO Monica Sarbu on what to do instead, today 2:50pm PT, Stage 2, WeAreDevelopers San José: "Databases in the Agent Era."

Need production data to debug a slow query? Normally, you'd have to isolate & validate data & deploy the fix. With the Xata MCP server and Codex, you just talk to an agent. Branch your Postgres database in seconds regardless of the size and let AI do the debugging. Watch 👇

Xata is coming to Azure. Branch-native Postgres. A copy-on-write branch of an existing database in seconds, whether the parent is 1GB or 1TB. Xata branches only incur costs for changed data plus compute while awake. A sleeping branch is basically free. Join the waitlist: xata.io/get/azure

pgp_sym_decrypt with the wrong key throws "Wrong key or corrupt data". No garbage bytes returned. The PGP integrity check earns its keep when every tenant holds a different key: the wrong key fails the query instead of quietly returning nonsense. Read about it here: xata.io/blog/multi-t...

Finding a slow query on a Postgres branch, without leaving the terminal. xata branch query-insights ranks that branch's statements by cost, flags the slow ones, and prints the command to inspect any of them. Logs and instance metrics are one command away.

xata branch query-insights active reads pg_stat_activity, so it shows what is executing right now, with each query's state and wait event. Currently running queries are the one part of this with no console page.

If every agent and PR gets its own Postgres branch, you're scripting those, not clicking them. So the CLI output has to be parseable. Now it is: piped output is clean plain text, xata branch list --json for anything automated. Boring, but that's the point at scale.

2TB+ Postgres. Branch it in seconds, query it, delete it. xata scratch (new Xata CLI cmd) forks a disposable branch off your real DB, drops you into psql or runs SQL inline, tears it down on exit. Demo 👇

Introducing the Xata GitHub App. Connect a repo to your Xata project and every pull request gets its own isolated Postgres branch off main, with production-like data, ready in seconds when the PR opens and gone when it closes.

View full thread

Branch-per-PR is the starting point. The same mechanism works for every developer, every QA environment, and every agent that opens a PR. And agents open a lot of PRs.

Introducing the Xata GitHub App. Connect a repo to your Xata project and every pull request gets its own isolated Postgres branch off main, with production-like data, ready in seconds when the PR opens and gone when it closes.

View full thread

The app watches your PRs. When one opens, it creates a copy-on-write branch off main, mirroring production. Same branch name in GitHub and Xata, so your GitHub Action runs against it and reports back on real data, not an empty seed.

Install once and map your repos. Every PR gets its branch created and deleted for you, the same lifecycle every time. Leave a PR open for weeks and it scales to zero, so the bill doesn't.

Introducing the Xata GitHub App. Connect a repo to your Xata project and every pull request gets its own isolated Postgres branch off main, with production-like data, ready in seconds when the PR opens and gone when it closes.

Some things a seed database can't catch. Access rules, permissions, anything whose behavior depends on real data: it passes on empty rows, then behaves differently in prod. Standing up a real copy to test against is slow and expensive, so nobody makes one per PR.

Xata is now on Google Cloud. Spin up an isolated Postgres branch from your production data in 3 seconds, in-region in us-central1 (Iowa). Every coding agent, PR, and CI run gets its own production-like database. No shared staging, no migration.

View full thread

Built for instant Postgres branching: - branch in 3s from your full database, copy-on-write - branch from production with sensitive fields masked - scale-to-zero: idle branches stop, wake on demand - live in us-central1 (Iowa), more regions coming

Xata is now on Google Cloud. Spin up an isolated Postgres branch from your production data in 3 seconds, in-region in us-central1 (Iowa). Every coding agent, PR, and CI run gets its own production-like database. No shared staging, no migration.

View full thread

Xata is now on Google Cloud. Spin up an isolated Postgres branch from your production data in 3 seconds, in-region in us-central1 (Iowa). Every coding agent, PR, and CI run gets its own production-like database. No shared staging, no migration.

Xata - Postgres at Scale reposted

Very proud that we are be able to sponsor pgBackRest and therefore help with the continuing maintenance of the project. It's rock solid and fast, the properties you want from the backup solution. It's the safety net we offer to all @xata.io customers.

linkedin.comVery proud that we are be able to sponsor pgBackRest, and therefore help with the continuing maintenance of the project. It's rock solid and fast, the properties you want from the backup solution...Very proud that we are be able to sponsor pgBackRest, and therefore help with the continuing maintenance of the project. It's rock solid and fast, the properties you want from the backup solution. It...

We run 100% vanilla Postgres. No fork, no modifications. A deliberate decision from day one to build a platform around Postgres, with branching at the storage layer instead of inside the database. This means the whole Postgres ecosystem just works with Xata.

We run 100% vanilla Postgres. No fork, no modifications. A deliberate decision from day one to build a platform around Postgres, with branching at the storage layer instead of inside the database. This means the whole Postgres ecosystem just works with Xata.

View full thread

And we give back in code, not just funding. Keycloak is our authentication layer. We contributed full management for organization invitations to it, our upstream contribution shipped in Keycloak 26.5.0.

We run 100% vanilla Postgres. No fork, no modifications. A deliberate decision from day one to build a platform around Postgres, with branching at the storage layer instead of inside the database. This means the whole Postgres ecosystem just works with Xata.

View full thread

We also sponsor Drizzle. It's a TypeScript-first ORM that works with Xata out of the box, because we run vanilla Postgres. We back the project to support that integration and the developers who use it.

We run 100% vanilla Postgres. No fork, no modifications. A deliberate decision from day one to build a platform around Postgres, with branching at the storage layer instead of inside the database. This means the whole Postgres ecosystem just works with Xata.

That makes the open source ecosystem our infrastructure too, so we help keep it healthy, with code and with funding. pgBackRest is our preferred backup solution and the backup engine for new branches on Xata.

Branching gives every engineer and every agent their own Postgres. Now every branch has its own logs. Read, filter, and search them in the console, or match a pattern in one click. Same logs in your terminal with xata branch logs.

Xata - Postgres at Scale reposted

DeltaX, our open-source timeseries and columnar extension for Postgres, just shipped v0.2.1, mostly analytics performance work. A few engineering bits worth sharing:

DeltaX, our open-source timeseries and columnar extension for Postgres, just shipped v0.2.1, mostly analytics performance work. A few engineering bits worth sharing:

Planner statistics for compressed partitions: DeltaX now builds histograms, MCV lists, and distinct-value estimates for its columnar segments, so the planner picks the right plan for joins and multi-table queries on compressed data.

Postgres CDC has always been a thing you babysit: a CLI in a screen session, secrets in a config file, a pipeline that breaks on the next ALTER TABLE. pgstream v1.1.0 is a step toward running it as a service. K8s probes, JSON logs, and schema changes that flow to the target. xata.io/blog/pgstrea...

xata.iopgstream v1.1.0: running Postgres replication as a service by Noémi VányiWhat's new in pgstream v1.1.0: env vars in YAML config, JSON logs, Kubernetes health probes, custom TLS for OpenSearch, and fixes for composite primary keys.