Postgres that allows you to scale out horizontally

Citus is a distributed database that extends PostgreSQL, allowing you to continue using all the powerful Postgres features while still scaling.

Whether you're running into a ceiling on a single node, or need more performance for real-time analytical queries Citus can help.

Animated citus

Features

  • Icon  parallel processing

    Elastic scaling of compute

    Citus distributes your workload across multiple instances, which you can elastically scale to continue scaling not only storage but also memory and compute.

  • Icon  transparent sharding

    Transparent sharding

    Citus makes it easy to scale by transparently sharding your data across multiple Postgres instances. Choose which data and how you want to shard it, and Citus takes care of the rest for you.

  • Icon  analytics processing

    Dynamic Executors for Operational and Analytics Processing

    Citus combines real-time inserts while powering both operational and analytical workloads by distributing the processing using multiple execution models.

  • Icon  storage

    Integrated row and columnar storage

    Users can use row-based and column-based tables in the same database. Columnar storage enables superior compression and improves the performance of analytic workloads by reducing disk I/O times. Row storage allows Citus to achieve low latency for real-time workloads.

Benefits

  • Real-time

    Citus allows you to ingest billions of events per day and provides access to real-time queries and analytics across your entire dataset.

  • All your data

    Citus scaling capabilities allow you to run analytics across your entire dataset in real-time. With Citus there's no longer a need to archive data or provide stale reports to users.

  • Community

    Stay on the latest version of PostgreSQL. Citus is not a fork of Postgres, meaning you still get all of the great Postgres features.

  • Run Anywhere

    Run Citus either on premises or on the cloud. Citus Cloud plans offer continuous protection, active monitoring, and high availability.

When to Use:

Citus works by allowing you to scale out your data across multiple physical Postgres instances–thus turning your traditional database into a distributed system. Because of the distributed nature some use cases are best suited for Citus. You can read more on how customers are using us today. Some of the common workloads that make sense on when to use Citus include:

  • Real-time analytics and operations combined. Citus allows you perform sub-second scans or aggregations across billions of events while still providing millisecond latency on inserts, upserts, or small look-ups.
  • High throughput data ingest. If you have high ingest requirements of 100,000 writes per second or more Citus can help. By de-centralizing your i/o, compute, and memory you're able to receive a high volume of writes while still maintaining indexes on your data in parallel.
  • Combining current and historical data Because Citus allows you to scale-out your workload, you're able to store vast amounts of data directly in Citus. When the flexibility of modern datatypes like JSONB coupled with performant indexing via GIN, you're able to combine both structure and semi-structured data while still providing sub-second aggregations and rollups across your data.

When Not to Use:

While Citus can be flexible for many workloads, there are often certain workloads that require more work to get the full value of Citus. Some workloads that Citus is not an ideal fit for include:

  • No real-time workloads. If your application does not require either real-time ingestion of data and you're not running real-time queries against it, then traditional data warehousing solutions, such as Redshift, may be a better fit.
  • Free form SQL by analysts. Because of the distributed nature of Citus some SQL primitives do not map seamlessly. If you have data scientists or end customers that are looking to run free-form SQL, not controlled by an application, then Citus is not an ideal fit for you.
  • Drop-in Postgres replacement. While Citus extends Postgres, it does this by distributing data across many nodes. To fully leverage this some up front data modeling is usually required, if you have an existing application relying on Postgres but are not able to make an investment in re-exploring how you model your data Citus may not work as a drop-in replacement.

Citus Products

Features at a Glance

Citus Community

The community version of Citus is entirely open source and free to use. You can download it yourself today to get started.

Free

Citus Cloud

Sign up for access to a fully managed Citus service delivered on top of AWS.

Starting at $990 a month

Citus Enterprise

Enterprise edition comes with everything in community edition, plus additional tooling.

Contact for Pricing
Flexible Postgres datatypes such as JSONB
Geospatial support
Sketch algorithms (Hyperloglog)
Shard Your Data Across Postgres Nodes
Parallelism across your workload
Resiliency Against Shard Failure
Shard Rebalancing
Behavioral Analytics Library
Advanced Security Controls
SLA
Fully Managed
Install & Setup Learn More Sign Up Learn More Contact Us Learn More

Get Started with Citus Data

Seamlessly scale out Postgres and preserve all the great features of PostgreSQL.

Community Edition

Transparently shards your data across multiple Postgres instances, then provides multiple executors to query across your entire dataset.

Citus Cloud

Fully managed Citus as a Service, on top of Amazon Web Services.

Enterprise Edition

Enterprise edition comes with everything in community edition, plus additional tooling to help with scale and security.