When comparing ArangoDB vs DynamoDB, the Slant community recommends ArangoDB for most people. In the question“What are the best NoSQL databases for web applications?”ArangoDB is ranked 4th while DynamoDB is ranked 7th.

Pros

Pro

Easy cluster setup

Pro

Supports joins

Unlike many NoSQL databases, ArangoDB does support joins in AQL queries.

Pro

Transaction save

You can use ACID Transactions for short and small data retrieval and/or modification operations in ArangoDB.

Pro

JavaScript-API

You can extend ArangoDB using JavaScript that runs directly on the Server (Google V8). You can build data-centric microservices that aggregate, validate, transform or enrich data (It's up to you, plain JavaScript) and provide those via a custom API route.

Pro

Document and graph-orientend

You can model your data as documents or as a graph - no data model lock-in. You can even combine both models and use them in a single AQL query.

Pro

Powerful Java Driver (Sync & Async)

ArangoDB has a very good Java Driver for synchronous and asynchronous. In addition the team there is working on a Spring Data integration.

Pro

Free tier

DynamoDB offers a free tier which allows up to 40 million database operations a month for free.

Pro

Trigger tasks (AWS Lambda) on write

When a new record is written, it can trigger one or many AWS Lambda functions. With Lambda functions in Java, JavaScript, and Python and the other con of "Easy integration with other Amazon services", Lambda functions may be all you need to process the events. This is particularly useful for creating projections (often as other DynamoDB tables) and other read models in a CQRS pattern.

Pro

High uptime

Data hosted on DynamoDB is automatically replicated across multiple AWS availability zones, this way the data is protected from any malfunction that may cause loss and it also ensures high uptime.

Pro

Easy integration with other Amazon services

Since it's part of AWS, like with other services that Amazon provides, it's very easy to integrate DynamoDB with any other AWS service that you may be using.

Cons

No cons yet!

Con

No specific features for Event Sourcing

DynamoDB is just a general purpose NoSQL database; hence, there are no features specific to the domain of Event Sourcing, such as event ordering or projections. As a developer, you will need to decide how to implement these.

Con

Poor documentation

In true AWS fashion, the documentation for DynamoDB is not top notch. While the learning curve is generally very soft and it's not hard to learn, you need to have at least some experience with cloud and database management to be able to start using DynamoDB and understand the documentation.