Amazon DynamoDB vs Amazon SimpleDB: What are the differences?
What is Amazon DynamoDB? Fully managed NoSQL database service. All data items are stored on Solid State Drives (SSDs), and are replicated across 3 Availability Zones for high availability and durability. With DynamoDB, you can offload the administrative burden of operating and scaling a highly available distributed database cluster, while paying a low price for only what you use.
What is Amazon SimpleDB? Highly available and flexible non-relational data store. Developers simply store and query data items via web services requests and Amazon SimpleDB does the rest. Behind the scenes, Amazon SimpleDB creates and manages multiple geographically distributed replicas of your data automatically to enable high availability and data durability. Amazon SimpleDB provides a simple web services interface to create and store multiple data sets, query your data easily, and return the results. Your data is automatically indexed, making it easy to quickly find the information that you need. There is no need to pre-define a schema or change a schema if new data is added later. And scale-out is as simple as creating new domains, rather than building out new servers.
Amazon DynamoDB and Amazon SimpleDB belong to "NoSQL Database as a Service" category of the tech stack.
Some of the features offered by Amazon DynamoDB are:
- Automated Storage Scaling – There is no limit to the amount of data you can store in a DynamoDB table, and the service automatically allocates more storage, as you store more data using the DynamoDB write APIs.
- Provisioned Throughput – When creating a table, simply specify how much request capacity you require. DynamoDB allocates dedicated resources to your table to meet your performance requirements, and automatically partitions data over a sufficient number of servers to meet your request capacity. If your throughput requirements change, simply update your table's request capacity using the AWS Management Console or the Amazon DynamoDB APIs. You are still able to achieve your prior throughput levels while scaling is underway.
- Fully Distributed, Shared Nothing Architecture – Amazon DynamoDB scales horizontally and can seamlessly scale a single table over hundreds of servers.
On the other hand, Amazon SimpleDB provides the following key features:
- Amazon SimpleDB automatically manages infrastructure provisioning, hardware and software maintenance, replication and indexing of data items, and performance tuning.
- Amazon SimpleDB automatically creates multiple geographically distributed copies of each data item you store.
- You can also choose between consistent or eventually consistent read requests, gaining the flexibility to match read performance (latency and throughput) and consistency requirements to the demands of your application, or even disparate parts within your application.
What is Amazon DynamoDB?
What is Amazon SimpleDB?
Want advice about which of these to choose?Ask the StackShare community!
Why do developers choose Amazon SimpleDB?
Sign up to add, upvote and see more prosMake informed product decisions
What are the cons of using Amazon DynamoDB?
What are the cons of using Amazon SimpleDB?
Sign up to get full access to all the companiesMake informed product decisions
What tools integrate with Amazon SimpleDB?
Sign up to get full access to all the tool integrationsMake informed product decisions
For most of the stuff we use MySQL. We just use Amazon RDS. But for some stuff we use Amazon DynamoDB. We love DynamoDB. It's amazing. We store usage data in there, for example. I think we have close to seven or eight hundred million records in there and it's scaled like you don't even notice it. You never notice any performance degradation whatsoever. It's insane, and the last time I checked we were paying $150 bucks for that.
zerotoherojs.com ’s userbase, and course details are stored in DynamoDB tables.
The good thing about AWS DynamoDB is: For the amount of traffic that I have, it is free. It is highly-scalable, it is managed by Amazon, and it is pretty fast.
It is, again, one less thing to worry about (when compared to managing your own MongoDB elsewhere).
We store customer metadata in DynamoDB. We decided to use Amazon DynamoDB because it was a fully managed, highly available solution. We didn't want to operate our own SQL server and we wanted to ensure that we built CloudRepo on high availability components so that we could pass that benefit back to our customers.
When creating proofs of concept or small personal projects that are hosted primarily in AWS, with non-relational data models, this is the NoSQL managed database I usually pair them with.
몇몇 로그는 현재 AWS DynamoDB 에 기록되고 있습니다. 개선을 통해 mongodb 로 옮길 계획을 하고 있습니다. 아주 간단한 데이터를 쌓는 용도로는 나쁘지 않습니다. 다만, 쿼리가 아주 제한적입니다. 사용하기 전에 반드시 DynamoDB 의 스펙을 확인할 필요가 있습니다.