How to Get Citus

Citus Open Source icon

Citus Open Source

With Citus, you can scale Postgres with superpowers like distributed tables, distributed SQL engine, columnar, & more.

Azure cloud icon

Citus on Azure

You can also spin up a Citus cluster in the cloud on Azure with Azure Cosmos DB for PostgreSQL.

Why Citus?

  • Distributed Scale

    Scale Postgres by distributing data & queries. You can start with a single Citus node, and simply add nodes & rebalance shards in order to grow.

  • Simplified Architecture

    Reduce your infrastructure headaches by using a single database for both your transactional and analytical workloads.

  • Parallelized Performance

    Speed up queries by 20x to 300x (or more) through parallelism, keeping more data in memory, higher I/O bandwidth, and columnar compression.

  • Citus elicorn icon
    Open Source

    Download and use Citus open source for free. You can manage Citus yourself, embrace open source, and help us improve Citus via GitHub.

  • Postgres elephant outline icon
    Power of Postgres

    Citus is an extension (not a fork) to the latest Postgres versions, so you can use your familiar SQL toolset & leverage your Postgres expertise.

  • managed database service cloud icon
    Managed Database Service

    Focus on your application and forget about your database. Run your app on Citus in the cloud with Azure Cosmos DB for PostgreSQL.

See How Citus Shards Postgres

 

When querying a Citus cluster, most applications query the Citus coordinator, as depicted in the diagram. However as of Citus 11, you can now send queries to any of the nodes in the cluster (excluding schema changes, those still go to the coordinator.) The Citus node you connect to will transform the SQL queries & route the transformed queries to the correct shards. In this animation, the co-located join and update scenarios are single-tenant queries that only need to query a subset of shards and nodes. Whereas the distributed aggregate and distributed transaction scenarios access shards across multiple nodes.

Why Scale Out Postgres? Performance.

Side-By-Side Performance Comparison

YouTube video still: High performance PostgreSQL with Postgres & Hyperscale (Citus)

Watch this demo to see how Citus gives this application ~20X faster transactions and 300X – 150,000X faster analytics queries.

What’s New in Citus?

Citus 11.3 flag

Citus 11.3

11.3 is out! Find the noisy neighbor in your cluster thanks to insights on CPU usage and query counts gained with tenant monitoring.

Read 11.3 post  |  11.3 updates

Citus Con 2023

Citus Con: An Event for Postgres 2023 is a wrap! Watch the livestream replays or the on-demand sessions. Be inspired.

Watch the replays

newspaper in front of a cloud icon

New Azure Home

We have a new home on Azure! You can now find the Citus managed database service in Azure Cosmos DB for PostgreSQL.

Read the docs  |  Try for free

Citus 11.3 GA has dropped. Read all about it in the Citus 11.3 blog post!

Capabilities of Distributed Postgres With Citus

Is Citus Right For You?

Not every application benefits from distributing Postgres, parallelizing queries, compressing tables via columnar, and the ability to scale from a single node to a distributed database cluster. But many do. Some popular use cases for the Citus database: multi-tenant SaaS apps, real-time analytics, & time series.

Citus workloads Venn diagram
When Not to Use Citus—because not all workloads need Postgres at any scale
  • If you do not expect your app to grow & Postgres on a single node supports your app just fine.
  • If you only need offline analytics & do not need real-time ingest nor real-time queries.
  • If your app does not need to support a large number of concurrent users.
Postgres icon

Scale Out Your Database Without Giving Up Postgres

  • The Citus database is a PostgreSQL extension and not a fork, in sync with all the latest releases.
  • Leverage your PostgreSQL expertise and all your familiar tools in the Postgres ecosystem.
  • Take advantage of all the innovations in Postgres—including rich data types and extensions like JSONB, PostGIS, HyperLogLog, pg_stat_statements, and full text search.
  • Scale out your database without giving up SQL. You don’t get joins from NoSQL databases. And application-level sharding solutions will not give you joins when you need them.
  • Citus makes it simple to shard Postgres. We’ve done the distributed systems engineering work to scale out Postgres for you. So you can use Postgres at any scale—from a single node to a large distributed cluster.