• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
AWS Cloud School | London - Part 2
 

AWS Cloud School | London - Part 2

on

  • 1,420 views

 

Statistics

Views

Total Views
1,420
Views on SlideShare
1,420
Embed Views
0

Actions

Likes
1
Downloads
29
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    AWS Cloud School | London - Part 2 AWS Cloud School | London - Part 2 Presentation Transcript

    • AGENDA AWS Cloud School - LondonCloud ConceptsBuilding BlocksApplication lifecycleH igh Availability Web ServicesHands-on Session #1 We are here!Deep Dive SessionsHands-on Session #2Wrap up
    • 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 Scalablestorage compute Relational Database Service Managed MySQL and Oracle databases
    • ElastiCacheIn memory, memcached compliant, caching clusters
    • High performance databases Increase throughput Increase availability Reduce latency
    • High performance databases Read replicasPush-button scaling Increase throughput ElastiCache Increase availability Reduce latency
    • 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 Scale
    • Performance Predictable, consistent Degraded performance with scale Scale
    • = more problems
    • Data caching Provisioning!Data sharding = more problemsCluster management Fault 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 < 10 ms writes
    • H I G H L I G H T S SSD backed Low latency Single digit millisecond< 5 ms reads < 10 ms writes
    • 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” “20100916” “20100917”“Title” = “flower” “Title” = “ferrari” “Title” = “coffee”“Tags” = “flower”, “Tags” = “car”, “Tags” = “drink”,“jasmine”, “white” “italian” “delicious”
    • 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->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));
    • $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));
    • $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));
    • $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));
    • $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));
    • 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 data centres.
    • Availability Region specific (not AZ)Continuously replicated across multiple AZs
    • Considerations Limited index and query modelThroughput is provisioned in 1K operations Maximum 64K item sizeBackup and restore via Elastic MapReduce
    • DatabasesRelational “NoSQL”databases databases
    • SimpleDBZero maintenance, NoSQL datastore
    • Flexible queries 10Gb / 1 billion No nativeattributes per tabel data sharding SimpleDB Zero maintenance, NoSQL datastore
    • Choose the right tool for the job
    • DynamoDB free tier 5 writes/second 10 consistent reads/second 100Mb storage
    • Other topics:whiteboard sessions
    • Direct Connect Batch processing Simple WorkflowCloudFormation Virtual Private Cloud Other topics: whiteboard sessions Cost optimisation Elastic MapReduce Analytics Architecture Storage Gateway
    • AGENDA AWS Cloud School - LondonCloud ConceptsBuilding BlocksApplication lifecycleH igh Availability Web ServicesHands-on Session #1Deep Dive SessionsHands-on Session #2Wrap up
    • cloudbyexample.net/ tutorial
    • j.mp/school-evaluation
    • matthew@amazon.com andglenrob@amazon.com
    • Thank you!