Amazon Web Services: DynamoDB 101 with ITOC Australia - What is DynamoDB

8
Scalable NoSQL with DynamoDB http://linkedin.com/in/davidnedved On AWS Cloud

description

David Nedved (ITOC Australia) returns to give you a run down on using Amazon's DynamoDB NoSQL database to build complex, scalable, Cloud Computing solutions!

Transcript of Amazon Web Services: DynamoDB 101 with ITOC Australia - What is DynamoDB

Page 1: Amazon Web Services: DynamoDB 101 with ITOC Australia - What is DynamoDB

Scalable NoSQL with DynamoDB

http://linkedin.com/in/davidnedved

On AWS Cloud

Page 2: Amazon Web Services: DynamoDB 101 with ITOC Australia - What is DynamoDB

DynamoDB is a fully managed NoSQL database service that provides extremely fast and predictable performance with seamless scalability

What is DynamoDB?

Page 3: Amazon Web Services: DynamoDB 101 with ITOC Australia - What is DynamoDB

Many LanguagesUsing an API to access & control your cloud resources such as dynamo, ec2, elasticache, simpledb, etc KICKS ASS!

Page 4: Amazon Web Services: DynamoDB 101 with ITOC Australia - What is DynamoDB

Highlights

● Put● Get● Update● Delete● Scan● Query

6 Operations● Predictable Performance○ Pay for performance - not what you use○ Provisioned throughput (API or web-console)

● Simple key value store (HashKey)○ Tables, Items, Attributes

● Sorted range key setup (RangeKey)● Durable & Available

○ Consistent, disk-only writes● Low Latency

○ SSD Based Storage○ Single Digit (milliseconds)

● Zero Administration● Massive & Seamless Scalability!

○ No table size/throughput limits○ Live re-partitioning for changes

to storage & throughput

Page 5: Amazon Web Services: DynamoDB 101 with ITOC Australia - What is DynamoDB

Reducing Risk● Consistency

○ DynamoDB writes are not always consistent○ Reads are consistent, or eventually consistent

● Durability○ All writes occur to disk, not memory○ A write is only acknowledged (committed) once it exists in at least two AZ's

● Availability○ Regional Service○ Spans multiple AZ's○ All Data is continually

replicated to multiple AZ's

Page 6: Amazon Web Services: DynamoDB 101 with ITOC Australia - What is DynamoDB

DynamoDB & EMR

Seamless Integration● Archive

○ Effective export of dynamo tables to S3 (as CSV files)● Data Load

○ Efficient import of exported tables from S3 backend into DynamoDB● Complex Queries

○ Sophisticated, SQL-based querying of DynamoDB table GROUP BY, JOIN, HAVING, etc...

● Complex Joins○ Ability to Join live tables in

DynamoDB with ArchivedTables in S3

(Elastic MapReduce)

Page 7: Amazon Web Services: DynamoDB 101 with ITOC Australia - What is DynamoDB

What to watch out for● 64kb item limit.

○ Use it as a lookup to S3● No Auto Increase Throughput Option

○ Cloudwatch alarm -> SNS Alert -> HTTP endpoint -> API increase throughput

○ Write to an SQS queue. Control the input speed.● 50 Item limit on scans.

○ Paging. ● Don’t assume sorting.

○ Use range key for sorting.● Where clauses on the scans will

run over the entire table.○ Use Elastic MapReduce

Page 8: Amazon Web Services: DynamoDB 101 with ITOC Australia - What is DynamoDB

Thank You!

http://linkedin.com/in/davidnedved

http://aws.amazon.com/dynamodb

Email: [email protected]