DynamoDB and Serverless

DynamoDB is a popular NoSQL database offering from AWS. It’s fully managed, autoscales, and integrates very nicely with Lambda which makes it an especially popular database among Serverless developers.


Advantages

  • Fully managed
  • Nice integration with Lambda
  • Highly scaleable

While DynamoDB can provide tons of value, there are a couple things you should be aware of.

Because it’s a proprietary AWS service, it can lead to data lock-in, which is a particularly sticky form of vendor lock-in. While DynamoDB often scales very nicely, that scaling can become difficult and expensive with very large datasets. On the plus side, DynamoDB Global Tables should make globally scaling DynamoDB much easier and more affordable.


Disadvantages

  • Vendor lock-in
  • Can be expensive to operate at large scale

DynamoDB Pricing

AWS prices Dynamo based on a combination of provsioned throughput (both read and write) and the amount of indexed data storage. They also offer a generous free tier to get you up and going. For full details on pricing, checkout the DynamoDB pricing page.


DyanamoDB vs MongoDB, Cassandra, BigTable

DBaaS Description Typing Data Model Secondary Indexes Triggers Open Source
DynamoDB Hosted, auto-scaling database service by AWS Yes Document Store, Key Value Store Yes Yes No
MongoDB Open source, NoSQL document store. Yes Document Store Yes No Yes
Cassandra Wide-column store based on concepts from BigTable and DynamoDB Yes Wide column store Restricted Yes Yes
BigTable NoSQL Big Data database service offered by Google. No Wide column store No No No

Examples


Plugins


Guides

New to serverless?

To get started, pop open your terminal & run:

npm install serverless -g