Need advice about which tool to choose?Ask the StackShare community!
ArangoDB vs Scylla: What are the differences?
Introduction: In this comparison, we will highlight key differences between ArangoDB and Scylla, two popular databases.
Data Model: ArangoDB utilizes a multi-model approach, supporting graphs, key-value pairs, and documents, allowing for greater flexibility in data modeling. On the other hand, Scylla focuses primarily on a wide-column store, emphasizing performance and scalability for big data applications.
Consistency: ArangoDB supports ACID transactions, offering strong consistency guarantees for data operations. In contrast, Scylla prioritizes high availability and partition tolerance, leading to eventual consistency with tunable consistency levels.
Query Language: ArangoDB uses AQL (ArangoDB Query Language), a SQL-like query language that supports complex queries across different data models. Scylla, being a wide-column store, interfaces with CQL (Cassandra Query Language), optimized for querying data in a distributed environment.
Scalability: Both databases are designed for scalability, but with different approaches. ArangoDB utilizes a distributed architecture for horizontal scalability, while Scylla leverages the shared-nothing architecture and consistent hashing to achieve high performance and linear scalability.
Performance: Scylla is known for its exceptional performance, achieving low latency and high throughput for read and write operations. ArangoDB also offers good performance, especially for graph data processing, although not as specialized as Scylla in certain use cases.
Community Support and Ecosystem: ArangoDB has a vibrant open-source community and ecosystem, offering various tools and integrations for developers. Scylla, being based on Apache Cassandra, benefits from a large community and ecosystem centered around Cassandra, providing extensive support and resources for users.
In Summary, the key differences between ArangoDB and Scylla lie in their data models, consistency models, query languages, scalability approaches, performance characteristics, and community support ecosystems.
The problem I have is - we need to process & change(update/insert) 55M Data every 2 min and this updated data to be available for Rest API for Filtering / Selection. Response time for Rest API should be less than 1 sec.
The most important factors for me are processing and storing time of 2 min. There need to be 2 views of Data One is for Selection & 2. Changed data.
Scylla can handle 1M/s events with a simple data model quite easily. The api to query is CQL, we have REST api but that's for control/monitoring
Cassandra is quite capable of the task, in a highly available way, given appropriate scaling of the system. Remember that updates are only inserts, and that efficient retrieval is only by key (which can be a complex key). Talking of keys, make sure that the keys are well distributed.
i love syclla for pet projects however it's license which is based on server model is an issue. thus i recommend cassandra
By 55M do you mean 55 million entity changes per 2 minutes? It is relatively high, means almost 460k per second. If I had to choose between Scylla or Cassandra, I would opt for Scylla as it is promising better performance for simple operations. However, maybe it would be worth to consider yet another alternative technology. Take into consideration required consistency, reliability and high availability and you may realize that there are more suitable once. Rest API should not be the main driver, because you can always develop the API yourself, if not supported by given technology.
The Gentlent Tech Team made lots of updates within the past year. The biggest one being our database:
We decided to migrate our #PostgreSQL -based database systems to a custom implementation of #Cassandra . This allows us to integrate our product data perfectly in a system that just makes sense. High availability and scalability are supported out of the box.
Pros of ArangoDB
- Grahps and documents in one DB37
- Intuitive and rich query language26
- Good documentation25
- Open source25
- Joins for collections21
- Foxx is great platform15
- Great out of the box web interface with API playground14
- Good driver support6
- Low maintenance efforts6
- Clustering6
- Easy microservice creation with foxx5
- You can write true backendless apps4
- Managed solution available2
- Performance0
Pros of ScyllaDB
- Replication2
- Fewer nodes1
- Distributed1
- Scale up1
- High availability1
- Written in C++1
- High performance1
Sign up to add or upvote prosMake informed product decisions
Cons of ArangoDB
- Web ui has still room for improvement3
- No support for blueprints standard, using custom AQL2