What’s New              with             Amazon Web Services23rd February, 2012LO N D O N   -   # AW S LO N D O N
Hello.
Thank you
What’s New?
8/ month
Price drops
Objects in S3Billions of objects                                                                         762B         800....
New regions
New regions
Per-AZ spot pricing S3 object expirationElastiCache in us-west-2 and sa-east-1                                         Ela...
2.00pm              Welcome~ 2.00pm to 2.45pm   Introducing DynamoDB 2.45pm to 3.30pm    Analytics in the Cloud 3.30pm to ...
2.00pm              Welcome~ 2.00pm to 2.40pm   Introducing DynamoDB 2.40pm to 3.10pm    Analytics in the Cloud 3.10pm to ...
StorageTools &                      ComputeSupport          Databases
StorageTools &                      ComputeSupport          Databases
Storage          DatabasesTools &                      ComputeSupport
DatabasesRelational                “NoSQL”databases                databases
DatabasesRelational                “NoSQL”databases                databases
Any database on Amazon EC2     MySQL, DB2, Oracle, PostgreSQL...
Relational Database Service   Managed MySQL and Oracle databases
Rapid            High                provisioning    availabilityScalable                                        Scalables...
ElastiCacheIn memory, memcached compliant, caching clusters
High performance databases       Increase throughput       Increase availability         Reduce latency
High performance databases                                      Read replicasPush-button  scaling     Increase throughput ...
High performance databases           Increase throughputMulti-AZ   Increase availability             Reduce latency
High performance databases       Increase throughput       Increase availability         Reduce latency        ElastiCache
ProblemPerformance decreases at scale
Performance              Predictable, consistent                                 Scale
Performance                  Predictable, consistent              Degraded performance                   with scale       ...
Performance                  Predictable, consistent              Degraded performance                   with scale       ...
= more problems
Data caching                                       Provisioning!Data sharding          = more problemsCluster management  ...
Undifferentiated heavy lifting
DynamoDB
Fully managedNoSQL database     service
Extremely fastperformance
Consistently fast performance
Seamless scalability
H   I   G   H   L   I   G   H   T   S
H    I   G   H   L   I   G   H   T   SLow latency    Single digit millisecond
H    I   G   H   L   I   G   H   T   S     Low latency          Single digit millisecond< 5 ms reads                      ...
H    I   G   H   L   I   G   H   T   S                   SSD backed     Low latency          Single digit millisecond< 5 m...
H   I   G   H   L   I   G   H   T   S  Massive scaleNo table size limits. Unlimited storage.
H   I   G   H   L   I   G   H   T   SSeamless scaleLive repartitioning. Zero admin.
H    I   G   H   L   I   G   H   T   SPredictable performance          Provisioned throughput
H   I   G   H   L   I   G   H   T   SDurable and available     Consistent, disk-only writes
H   I   G   H   L   I   G   H   T   SZero administration
What is provisioned  throughput?
Reserve required IOPS  Per table. Set at creation. Scale via API.
“ProvisionedThroughput”:     { “ReadsPerSecond” : 500 },     { “WritesPerSecond” : 1000 }
Scale at any time     No downtime
Pay for throughput
Per 1kb item:$0.01 per hour for every 10 writes/second  $0.01 per hour for every 50 strongly        consistent reads/second
Per 1kb item:          $0.28 per million writes$0.056 per million strongly consistent reads
Pay for storage$1.00 per Gb per month of indexed storage
Data model
“ImageID” = “1”   “Date” =  “20100915”“Title” = “flower”“Tags” = “flower”,“jasmine”, “white”
“ImageID” = “1”      “ImageID” =”2”        “ImageID” =”3”   “Date” =              “Date” =             “Date” =  “20100915...
Primary key
Composite key
Simple API              Only 12 operations.Atomic increment/decrement on number attributes.
Automatic scaling   Subscribe to SNS topic
$Res = $DDB->describe_table(array(TableName => wsdot_images));$Read = (int) $Res->body->Table->ProvisionedThroughput->Read...
$Res = $DDB->describe_table(array(TableName => wsdot_images));$Read = (int) $Res->body->Table->ProvisionedThroughput->Read...
$Res = $DDB->describe_table(array(TableName => wsdot_images));$Read = (int) $Res->body->Table->ProvisionedThroughput->Read...
$Res = $DDB->describe_table(array(TableName => wsdot_images));$Read = (int) $Res->body->Table->ProvisionedThroughput->Read...
$Res = $DDB->describe_table(array(TableName => wsdot_images));$Read = (int) $Res->body->Table->ProvisionedThroughput->Read...
Consistency       Writes are always consistent.Reads are consistent or eventually consistent.
Durability       Writes occur to disk, not memory.Writes are acknowledged once they have been      made in two physical da...
Availability         Region specific (not AZ)Continuously replicated across multiple AZs
Considerations     Limited index and query modelThroughput is provisioned in 1K operations         Maximum 64K item sizeBa...
DatabasesRelational                “NoSQL”databases                databases
SimpleDBZero maintenance, NoSQL datastore
Flexible queries  10Gb / 1 billion                              No nativeattributes per tabel                          dat...
Choose the right tool    for the job
DynamoDB free tier        5 writes/second   10 consistent reads/second        100Mb storage
Q&Amatthew@amazon.com
Introducing DynamoDB
Introducing DynamoDB
Introducing DynamoDB
Introducing DynamoDB
Introducing DynamoDB
Introducing DynamoDB
Introducing DynamoDB
Upcoming SlideShare
Loading in...5
×

Introducing DynamoDB

2,111

Published on

DynamoDB is a NoSQL database service built for fast, scalable, consistent performance. This presentation introduces DynamoDB and discusses how to get started, provision throughput, design for the DynamoDB data model, query and scan tables and scale reads and writes without downtime.

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,111
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
33
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Introducing DynamoDB

  1. 1. What’s New with Amazon Web Services23rd February, 2012LO N D O N - # AW S LO N D O N
  2. 2. Hello.
  3. 3. Thank you
  4. 4. What’s New?
  5. 5. 8/ month
  6. 6. Price drops
  7. 7. Objects in S3Billions of objects 762B 800.000 600.000 400.000 200.000 0 Q4 2006 Q4 2007 Q4 2008 Q4 2009 Q4 2010 Q4 2011 500k peak transactions per second
  8. 8. New regions
  9. 9. New regions
  10. 10. Per-AZ spot pricing S3 object expirationElastiCache in us-west-2 and sa-east-1 Elastic Network Interfaces Simple Notification Service EC2 instance status New regions Windows free tier New CloudFront POPs VPC everywhere New availability zones
  11. 11. 2.00pm Welcome~ 2.00pm to 2.45pm Introducing DynamoDB 2.45pm to 3.30pm Analytics in the Cloud 3.30pm to 4.00pm Coffee break 4.00pm to 4.45pm Cloud Economics 4.45pm to 5.30pm Integrating Enterprise IT 5.30pm to 6.30pm Drinks and networking
  12. 12. 2.00pm Welcome~ 2.00pm to 2.40pm Introducing DynamoDB 2.40pm to 3.10pm Analytics in the Cloud 3.10pm to 3.30pm Amazon Simple Workflow 3.30pm to 4.00pm Coffee break 4.00pm to 4.45pm Cloud Economics 4.45pm to 5.30pm Integrating Enterprise IT 5.30pm to 6.30pm Drinks and networking
  13. 13. StorageTools & ComputeSupport Databases
  14. 14. StorageTools & ComputeSupport Databases
  15. 15. Storage DatabasesTools & ComputeSupport
  16. 16. DatabasesRelational “NoSQL”databases databases
  17. 17. DatabasesRelational “NoSQL”databases databases
  18. 18. Any database on Amazon EC2 MySQL, DB2, Oracle, PostgreSQL...
  19. 19. Relational Database Service Managed MySQL and Oracle databases
  20. 20. Rapid High provisioning availabilityScalable Scalablestorage compute Relational Database Service Managed MySQL and Oracle databases
  21. 21. ElastiCacheIn memory, memcached compliant, caching clusters
  22. 22. High performance databases Increase throughput Increase availability Reduce latency
  23. 23. High performance databases Read replicasPush-button scaling Increase throughput ElastiCache Increase availability Reduce latency
  24. 24. High performance databases Increase throughputMulti-AZ Increase availability Reduce latency
  25. 25. High performance databases Increase throughput Increase availability Reduce latency ElastiCache
  26. 26. ProblemPerformance decreases at scale
  27. 27. Performance Predictable, consistent Scale
  28. 28. Performance Predictable, consistent Degraded performance with scale Scale
  29. 29. Performance Predictable, consistent Degraded performance with scale Scale
  30. 30. = more problems
  31. 31. Data caching Provisioning!Data sharding = more problemsCluster management Fault management
  32. 32. Undifferentiated heavy lifting
  33. 33. DynamoDB
  34. 34. Fully managedNoSQL database service
  35. 35. Extremely fastperformance
  36. 36. Consistently fast performance
  37. 37. Seamless scalability
  38. 38. H I G H L I G H T S
  39. 39. H I G H L I G H T SLow latency Single digit millisecond
  40. 40. H I G H L I G H T S Low latency Single digit millisecond< 5 ms reads < 10 ms writes
  41. 41. H I G H L I G H T S SSD backed Low latency Single digit millisecond< 5 ms reads < 10 ms writes
  42. 42. H I G H L I G H T S Massive scaleNo table size limits. Unlimited storage.
  43. 43. H I G H L I G H T SSeamless scaleLive repartitioning. Zero admin.
  44. 44. H I G H L I G H T SPredictable performance Provisioned throughput
  45. 45. H I G H L I G H T SDurable and available Consistent, disk-only writes
  46. 46. H I G H L I G H T SZero administration
  47. 47. What is provisioned throughput?
  48. 48. Reserve required IOPS Per table. Set at creation. Scale via API.
  49. 49. “ProvisionedThroughput”: { “ReadsPerSecond” : 500 }, { “WritesPerSecond” : 1000 }
  50. 50. Scale at any time No downtime
  51. 51. Pay for throughput
  52. 52. Per 1kb item:$0.01 per hour for every 10 writes/second $0.01 per hour for every 50 strongly consistent reads/second
  53. 53. Per 1kb item: $0.28 per million writes$0.056 per million strongly consistent reads
  54. 54. Pay for storage$1.00 per Gb per month of indexed storage
  55. 55. Data model
  56. 56. “ImageID” = “1” “Date” = “20100915”“Title” = “flower”“Tags” = “flower”,“jasmine”, “white”
  57. 57. “ImageID” = “1” “ImageID” =”2” “ImageID” =”3” “Date” = “Date” = “Date” = “20100915” “20100916” “20100917”“Title” = “flower” “Title” = “ferrari” “Title” = “coffee”“Tags” = “flower”, “Tags” = “car”, “Tags” = “drink”,“jasmine”, “white” “italian” “delicious”
  58. 58. Primary key
  59. 59. Composite key
  60. 60. Simple API Only 12 operations.Atomic increment/decrement on number attributes.
  61. 61. Automatic scaling Subscribe to SNS topic
  62. 62. $Res = $DDB->describe_table(array(TableName => wsdot_images));$Read = (int) $Res->body->Table->ProvisionedThroughput->ReadCapacityUnits;$Write = (int) $Res->body->Table->ProvisionedThroughput->WriteCapacityUnits;$Read *= 2;$Write *= 2;$PT = array(ReadCapacityUnits => (string) $Read, WriteCapacityUnits => (string) $Write);$Res = $ddb->update_table(array(TableName => wsdot_images, ProvisionedThroughPut => $PT));
  63. 63. $Res = $DDB->describe_table(array(TableName => wsdot_images));$Read = (int) $Res->body->Table->ProvisionedThroughput->ReadCapacityUnits;$Write = (int) $Res->body->Table->ProvisionedThroughput->WriteCapacityUnits;$Read *= 2;$Write *= 2;$PT = array(ReadCapacityUnits => (string) $Read, WriteCapacityUnits => (string) $Write);$Res = $ddb->update_table(array(TableName => wsdot_images, ProvisionedThroughPut => $PT));
  64. 64. $Res = $DDB->describe_table(array(TableName => wsdot_images));$Read = (int) $Res->body->Table->ProvisionedThroughput->ReadCapacityUnits;$Write = (int) $Res->body->Table->ProvisionedThroughput->WriteCapacityUnits;$Read *= 2;$Write *= 2;$PT = array(ReadCapacityUnits => (string) $Read, WriteCapacityUnits => (string) $Write);$Res = $ddb->update_table(array(TableName => wsdot_images, ProvisionedThroughPut => $PT));
  65. 65. $Res = $DDB->describe_table(array(TableName => wsdot_images));$Read = (int) $Res->body->Table->ProvisionedThroughput->ReadCapacityUnits;$Write = (int) $Res->body->Table->ProvisionedThroughput->WriteCapacityUnits;$Read *= 2;$Write *= 2;$PT = array(ReadCapacityUnits => (string) $Read, WriteCapacityUnits => (string) $Write);$Res = $ddb->update_table(array(TableName => wsdot_images, ProvisionedThroughPut => $PT));
  66. 66. $Res = $DDB->describe_table(array(TableName => wsdot_images));$Read = (int) $Res->body->Table->ProvisionedThroughput->ReadCapacityUnits;$Write = (int) $Res->body->Table->ProvisionedThroughput->WriteCapacityUnits;$Read *= 2;$Write *= 2;$PT = array(ReadCapacityUnits => (string) $Read, WriteCapacityUnits => (string) $Write);$Res = $ddb->update_table(array(TableName => wsdot_images, ProvisionedThroughPut => $PT));
  67. 67. Consistency Writes are always consistent.Reads are consistent or eventually consistent.
  68. 68. Durability Writes occur to disk, not memory.Writes are acknowledged once they have been made in two physical data centres.
  69. 69. Availability Region specific (not AZ)Continuously replicated across multiple AZs
  70. 70. Considerations Limited index and query modelThroughput is provisioned in 1K operations Maximum 64K item sizeBackup and restore via Elastic MapReduce
  71. 71. DatabasesRelational “NoSQL”databases databases
  72. 72. SimpleDBZero maintenance, NoSQL datastore
  73. 73. Flexible queries 10Gb / 1 billion No nativeattributes per tabel data sharding SimpleDB Zero maintenance, NoSQL datastore
  74. 74. Choose the right tool for the job
  75. 75. DynamoDB free tier 5 writes/second 10 consistent reads/second 100Mb storage
  76. 76. Q&Amatthew@amazon.com

×