DynamoDB
Last updated: Nov 3, 2026
Rationale
DynamoDB is the database where Fluid Attacks keeps all the business data of its platform. These are the primary reasons why Fluid Attacks selected it and not other alternatives:
- It is a NoSQL database service that is designed to have good performance and scalability for all levels of request traffic.
- It is a SaaS-oriented database, because Fluid Attacks does not manage infrastructure, for example, networks or servers.
- It complies with many certifications from ISO and CSA. Many of these certifications make sure that the entity uses best practices for secure cloud-based environments and information security.
- Its design gives single-digit millisecond performance, and Fluid Attacks does not have to think about scalability or availability.
- Fluid Attacks gets access to it through a public API.
- It has a partition-based architecture. Thus, it can keep hundreds of TiBs of data.
- Fluid Attacks can keep versions of database designs as code with NoSQL Workbench for DynamoDB.
- It supports pagination. This is necessary to keep the performance of applications when queries return too much data.
- It supports global secondary indexes. Thus, Fluid Attacks can add new access patterns when its applications change.
- It supports classic on-demand backups. Thus, Fluid Attacks has backups of all its data in the cloud.
- It supports Point-in-Time Recovery. This function helps Fluid Attacks restore tables to earlier points in time with incremental backups.
- It supports local deployments. Thus, Fluid Attacks can run DynamoDB on local machines. This is very useful for ephemeral environments.
- Fluid Attacks can write all its settings as code with Terraform.
- Fluid Attacks can monitor its performance with CloudWatch.
- Many programming languages support it, for example, Python.
- It supports encryption at rest. Thus, Fluid Attacks can easily keep the stored data safe.
- It has full integration with IAM. Thus, Fluid Attacks can keep a least privilege approach for authentication and authorization.
Alternatives
- Google Cloud Spanner: It is a Relational Database Management System (RDBMS). Thus, it does not have the same scalability and performance for web-scale applications. The user must manage infrastructure, for example, clusters, nodes, and networks. It was harder to connect it to other AWS services. Also, at that time, its pricing model was not predictable.
- AWS RDS: It is an RDBMS. Thus, it does not have the same scalability and performance for web-scale applications. The user must manage infrastructure, for example, clusters, nodes, and networks.
Azure Cosmos DB is one more alternative. Its review is pending.
Usage
Fluid Attacks uses DynamoDB for these tasks:
- To keep and get all the business data of its platform
- To keep the state, caches, and checkpoints of other components, for example, Defines, Interacts, Observes, and Sifts
- To keep the Point-in-Time Recovery backups of all its data
- To keep the on-demand backups of all its data
- To keep a versioned design of its database