Cosmos DB vs SurrealDB
Both are multiple databases. Cosmos DB (2017-05, Proprietary) ranks #10 this month; SurrealDB (2022, BSL-1.1, Rust) ranks #14. They differ on 17 of 46 surveyed features.
| Attribute | | |
|---|---|---|
| At a glance | ||
| Rank | #10 | #14 |
| Score | 61.8 | 60.1 |
| GitHub stars | — | 32.8k |
| Popularity | 70.4 | 65.3 |
| Activity | — | 71.8 |
| Community | 59.9 | 61.0 |
| Research | 88.5 | 50.4 |
| Fundamentals | ||
| Description | A globally distributed multi-model database service on Microsoft Azure with property graph support through the Apache Gremlin API. Offers multi-region replication and multiple consistency models. | A multi-model database written in Rust that combines document, graph, and relational paradigms. Uses inter-document record links for graph traversals, with ACID transactions and row-level permissions. |
| Vendor | Microsoft | SurrealDB |
| Model | Multiple | Multiple |
| Kind | database | database |
| Category | Enterprise | Growing |
| First released | 2017-05 | 2022 |
| Status | active | active |
| License | Proprietary | BSL-1.1 |
| Written in | — | Rust |
| Query languages | Gremlin, SQL | SurrealQL, GraphQL, GQL |
| gdotv support | yes | no |
Feature scores 17 of 46 rows differ
| Feature | Cosmos DB | SurrealDB |
|---|---|---|
| Community & Business | ||
| Active development | ✓ | ✓ |
| Commercial support | ✓ | ✓ |
| Live community | 0.5 | 0.75 |
| Open Source | · | 0.5 |
| Pricing | ✓ | ✓ |
| Trendiness | ✓ | ✓ |
| Deployment | ||
| Containerization | 0.5 | ✓ |
| Work as dedicated instance | ✓ | ✓ |
| Work as embedded | · | ✓ |
| Testing in-memory version | ✓ | ✓ |
| Platform | ||
| Operating on Linux | · | ✓ |
| Operating on Windows | ✓ | ✓ |
| SaaS offering | ✓ | ✓ |
| Operations | ||
| Automatic updates | ✓ | · |
| Client side caching | · | · |
| Data versioning support | · | ✓ |
| Live backups | ✓ | · |
| Distribution | ||
| Cluster Re-balancing | 0.5 | ✓ |
| Data Distribution | ✓ | ✓ |
| High-Availability | ✓ | ✓ |
| Query Distribution | ✓ | ✓ |
| Replication support | ✓ | ✓ |
| Developer Experience | ||
| Data types defined | · | 0.5 |
| Logging/Auditing | ✓ | ✓ |
| Object-Graph Mapper | ✓ | ✓ |
| Reactive programming | ✓ | ✓ |
| Documentation up-to-date | ✓ | ✓ |
| Binary protocol | · | ✓ |
| CLI | ✓ | ✓ |
| GUI | ✓ | ✓ |
| Data Model | ||
| Multi-database | ✓ | ✓ |
| Graph-native data | · | ✓ |
| REST API | ✓ | ✓ |
| Query Language | ✓ | ✓ |
| Transactions | ||
| Granular locking | · | · |
| Multiple isolation levels | ✓ | 0.5 |
| Read committed transaction | ✓ | ✓ |
| Transaction support | 0.5 | ✓ |
| Schema & Security | ||
| Constraints | · | ✓ |
| Schema support | · | ✓ |
| Secondary indexes | ✓ | ✓ |
| Server side procedures | ✓ | ✓ |
| Triggers | ✓ | ✓ |
| Authentication | ✓ | ✓ |
| Authorization | ✓ | ✓ |
| Data encryption | ✓ | 0.5 |
Links
- Cosmos DB · website · full profile
- SurrealDB · website · github · full profile