ArangoDB vs Citus

Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

ArangoDB
ArangoDB

117
121
+ 1
139
Citus
Citus

28
26
+ 1
8
Add tool

ArangoDB vs Citus: What are the differences?

ArangoDB: A distributed open-source database with a flexible data model for documents, graphs, and key-values. A distributed free and open-source database with a flexible data model for documents, graphs, and key-values. Build high performance applications using a convenient SQL-like query language or JavaScript extensions; Citus: Worry-free Postgres for SaaS. Built to scale out. Citus is worry-free Postgres for SaaS. Made to scale out, Citus is an extension to Postgres that distributes queries across any number of servers. Citus is available as open source, as on-prem software, and as a fully-managed service.

ArangoDB and Citus belong to "Databases" category of the tech stack.

Some of the features offered by ArangoDB are:

  • multi-model nosql db
  • acid
  • transactions

On the other hand, Citus provides the following key features:

  • Multi-Node Scalable PostgreSQL
  • Built-in Replication and High Availability
  • Real-time Reads/Writes On Multiple Nodes

"Grahps and documents in one DB" is the primary reason why developers consider ArangoDB over the competitors, whereas "Multi-core Parallel Processing" was stated as the key factor in picking Citus.

ArangoDB and Citus are both open source tools. ArangoDB with 8.22K GitHub stars and 576 forks on GitHub appears to be more popular than Citus with 3.64K GitHub stars and 273 GitHub forks.

What is ArangoDB?

A distributed free and open-source database with a flexible data model for documents, graphs, and key-values. Build high performance applications using a convenient SQL-like query language or JavaScript extensions.

What is Citus?

It's an extension to Postgres that distributes data and queries in a cluster of multiple machines. Its query engine parallelizes incoming SQL queries across these servers to enable human real-time (less than a second) responses on large datasets.
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose ArangoDB?
Why do developers choose Citus?

Sign up to add, upvote and see more prosMake informed product decisions

    Be the first to leave a con
    What companies use ArangoDB?
    What companies use Citus?

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with ArangoDB?
    What tools integrate with Citus?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to ArangoDB and Citus?
    Neo4j
    Neo4j stores data in nodes connected by directed, typed relationships with properties on both, also known as a Property Graph. It is a high performance graph store with all the features expected of a mature and robust database, like a friendly query language and ACID transactions.
    MongoDB
    MongoDB stores data in JSON-like documents that can vary in structure, offering a dynamic, flexible schema. MongoDB was also designed for high availability and scalability, with built-in replication and auto-sharding.
    PostgreSQL
    PostgreSQL is an advanced object-relational database management system that supports an extended subset of the SQL standard, including transactions, foreign keys, subqueries, triggers, user-defined types and functions.
    Cassandra
    Partitioning means that Cassandra can distribute your data across multiple machines in an application-transparent matter. Cassandra will automatically repartition as machines are added and removed from the cluster. Row store means that like relational databases, Cassandra organizes data by rows and columns. The Cassandra Query Language (CQL) is a close relative of SQL.
    OrientDB
    It is an open source NoSQL database management system written in Java. It is a Multi-model database, supporting graph, document, key/value, and object models, but the relationships are managed as in graph databases with direct connections between records.
    See all alternatives
    Decisions about ArangoDB and Citus
    Dan Robinson
    Dan Robinson
    at Heap, Inc. · | 16 upvotes · 54.1K views
    atHeapHeap
    PostgreSQL
    PostgreSQL
    Citus
    Citus
    #DataStores
    #Databases

    PostgreSQL was an easy early decision for the founding team. The relational data model fit the types of analyses they would be doing: filtering, grouping, joining, etc., and it was the database they knew best.

    Shortly after adopting PG, they discovered Citus, which is a tool that makes it easy to distribute queries. Although it was a young project and a fork of Postgres at that point, Dan says the team was very available, highly expert, and it wouldn’t be very difficult to move back to PG if they needed to.

    The stuff they forked was in query execution. You could treat the worker nodes like regular PG instances. Citus also gave them a ton of flexibility to make queries fast, and again, they felt the data model was the best fit for their application.

    #DataStores #Databases

    See more
    Dan Robinson
    Dan Robinson
    at Heap, Inc. · | 14 upvotes · 50.4K views
    atHeapHeap
    Heap
    Heap
    Citus
    Citus
    PostgreSQL
    PostgreSQL
    Kafka
    Kafka
    Node.js
    Node.js
    #MessageQueue
    #Databases
    #FrameworksFullStack

    At Heap, we searched for an existing tool that would allow us to express the full range of analyses we needed, index the event definitions that made up the analyses, and was a mature, natively distributed system.

    After coming up empty on this search, we decided to compromise on the “maturity” requirement and build our own distributed system around Citus and sharded PostgreSQL. It was at this point that we also introduced Kafka as a queueing layer between the Node.js application servers and Postgres.

    If we could go back in time, we probably would have started using Kafka on day one. One of the biggest benefits in adopting Kafka has been the peace of mind that it brings. In an analytics infrastructure, it’s often possible to make data ingestion idempotent.

    In Heap’s case, that means that, if anything downstream from Kafka goes down, we won’t lose any data – it’s just going to take a bit longer to get to its destination. We also learned that you want the path between data hitting your servers and your initial persistence layer (in this case, Kafka) to be as short and simple as possible, since that is the surface area where a failure means you can lose customer data. We learned that it’s a very good fit for an analytics tool, since you can handle a huge number of incoming writes with relatively low latency. Kafka also gives you the ability to “replay” the data flow: it’s like a commit log for your whole infrastructure.

    #MessageQueue #Databases #FrameworksFullStack

    See more
    Interest over time
    Reviews of ArangoDB and Citus
    No reviews found
    How developers use ArangoDB and Citus
    Avatar of King's Digital Lab
    King's Digital Lab uses ArangoDBArangoDB

    Multi-model DB: document (JSON), graph, key-value

    TO BE EVALUATED

    Avatar of Stefan Gojan
    Stefan Gojan uses ArangoDBArangoDB

    Persist user actions and information in documents

    Avatar of Minyoung Kim
    Minyoung Kim uses ArangoDBArangoDB

    사용자 팔로잉 관계 데이터 저장

    How much does ArangoDB cost?
    How much does Citus cost?
    Pricing unavailable
    News about ArangoDB
    More news