vs

Citus vs Qserv

Citus: Postgres extension that shards tables across nodes for multi-tenant SaaS and real-time analytics. Qserv: Distributed shared-nothing SQL database built to serve the Rubin Observatory's petascale sky catalogs.

key differences

  • Transactions: Citus offers full ACID; Qserv offers limited.
  • Only Citus has transactions, full-text search, vector search, json, change data capture.

choose citus for

  • +Multi-tenant B2B SaaS sharded by customer
  • +Real-time analytics dashboards over event data
  • +Time-series and IoT ingestion with rollups
  • +Scaling an existing Postgres app without changing databases

best at · OLTP, Real-time analytics, HTAP

choose qserv for

  • +Serving petascale astronomical object and source catalogs
  • +Spatial cone and box searches over sky surveys
  • +Large read-mostly scientific tables partitioned by position

best at · OLAP, Scientific, Geo

overview
Primary model
Relational
Relational
Also supports
Document, Columnar / OLAP, Spatial
Spatial
Type
Extension
Database engine
Status
Active
Active
Developer
Microsoft (Citus Data)
SLAC National Accelerator Laboratory / Vera C. Rubin Observatory
First release
2016
2011
Latest version
14.3.0 (Oct 23, 2026)
2026.10.2-rc2 (Oct 12, 2026)
License
Open source (copyleft)GNU AGPL v3
Open source (copyleft)GNU General Public License v3.0
Free tier
✓
✓
popularity
WhichDB Score
21.1
0.8
Rank
#144
#610
GitHub stars
12.8K
36
Stack Overflow questions
149
–
scale & guarantees
Comfortable data size
Large (≤ 1 PB)
Large (≤ 1 PB)
Horizontal scaling
Native
Native
Multi-region
None
None
ACID
Full
Limited
Consistency
Strong
Eventual
Schema
Strict
Strict
Architecture
Distributed, Client server
Distributed, Client server
deployment
Self-hosted
✓
✓
Vendor-managed cloud
✓
—
Serverless
—
—
Embedded
—
—
Edge
—
—
Clouds
Azure
–
capabilities
Transactions
✓
—
Joins
✓
✓
Secondary indexes
✓
✓
Full-text search
✓
—
Vector search
✓
—
Geospatial
✓
✓
JSON
✓
—
Change data capture
✓
—
Triggers
✓
—
Stored procedures
✓
—
Materialized views
✓
—
TTL / expiry
—
—
Pub/Sub
—
—
Columnar storage
✓
—
In-memory
—
—
Durable persistence
✓
✓
Compression
✓
✓
Encryption at rest
—
—
Role-based access
✓
—
Time travel
—
—
Branching
—
—
Online schema changes
✓
—
Streaming ingest
—
—
Offline sync
—
—
Runs in WebAssembly
—
—
interfaces
Query languages
SQL, PL/pgSQL
SQL (Qserv dialect)
Client languages
Java, Python, JavaScript, Go, Ruby, C#, PHP, Rust
Python, C++, Java
Best for
OLTP, Real-time analytics, HTAP, Time-series
OLAP, Scientific, Geo

Citus vs Qserv: FAQ

What is the difference between Citus and Qserv?

Citus: Postgres extension that shards tables across nodes for multi-tenant SaaS and real-time analytics. Qserv: Distributed shared-nothing SQL database built to serve the Rubin Observatory's petascale sky catalogs. Transactions: Citus offers full ACID; Qserv offers limited. Only Citus has transactions, full-text search, vector search, json, change data capture.

When should I choose Citus over Qserv?

Choose Citus for multi-tenant B2B SaaS sharded by customer; real-time analytics dashboards over event data; and time-series and IoT ingestion with rollups. Choose Qserv for serving petascale astronomical object and source catalogs; spatial cone and box searches over sky surveys; and large read-mostly scientific tables partitioned by position.

Is Citus or Qserv more popular?

Citus ranks #144 on the WhichDB Score (21.1/100) and Qserv ranks #610 (0.8/100). Popularity is not fit: check the requirements that matter for your project.

Are Citus and Qserv open source?

Yes. Citus is open source. License: GNU AGPL v3. Yes. Qserv is open source. License: GNU General Public License v3.0.