O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
Próximos SlideShares
Monfort Emath Paper1_printed
Transfira para ler offline e ver em ecrã inteiro.


Azure, Cloud Computing & Services

Baixar para ler offline

My presentation to the Charteris Tech Day in December 2008.

Azure, Cloud Computing & Services

  1. 1. Azure, Cloud Computing & Services
  2. 2. What Is The Cloud? A set of connected servers On which developers can: Install and run services Store and retrieve data
  3. 3. What Is Windows Azure? It is an operating system for the cloud It is designed for utility computing It has four primary features: Service management Compute Storage Developer experience
  4. 4. This Is What Every Cloud Service Developer Has To Do Today! Business logic … Expand to new locale Perform live upgrade for new feature Apply OS patches Service “glue” Diagnose service failures and operations Add storage capacity Handle increase in traffic Respond to hardware failures Datacenter
  5. 5. What's Missing In The Cloud? …. …… Service 1 Service 2 Service 3 Service N
  6. 6. What Should The Cloud OS Provide? The same facilities that a desktop OS provides, but on a set of connected servers: Abstract execution environment Shared file system Resource allocation Programming environments And more: Utility computing 24/7 operation Pay for what you use Simpler, transparent administration
  7. 7. How Is The Cloud OS Manifested? Automated service management You define the rules and provide your code The platform follows the rules: deploys, monitors, and manages your service A powerful service hosting environment All of the hardware: servers; load balancers; … Virtualized and direct execution Scalable, available cloud storage Blobs, tables, queues, … A rich, familiar developer experience
  8. 8. A Look Inside Azure
  9. 9. So What? Default.aspx
  10. 10. We Get Scalability For Free! LB Default.aspx Scalability Availability Zero-downtime upgrades All with existing tools and skills
  11. 11. Horizontal Scaling What about state? (e.g., shopping cart)
  12. 12. Separating State Durable Store
  13. 13. Durable Storage Durable, scalable, available store Simple abstractions Blobs Queues Tables … Simple interface REST ADO.NET Data Services
  14. 14. Simple Storage LB Default.aspx Storage (Blobs, Tables, Queues)
  15. 15. Not Just Websites Cloud services aren’t just websites Many other types of work for the cloud Bulk file conversion Heavy analytics Finding extraterrestrials Even websites can offload async work We need a more complex architecture
  16. 16. Service Architectures Web role LB Default.aspx Worker.cs Storage
  17. 17. Service Architectures Worker role LB Default.aspx Worker.cs Storage
  18. 18. Service Architectures Web and worker roles LB Default.aspx Worker.cs Storage
  19. 19. Windows Azure Storage The goal is to allow users and applications to Access their data efficiently from anywhere at anytime Store data for any length of time Scale to store any amount of data Be confident that the data will not be lost Pay for only what they use/store
  20. 20. Fundamental Data Abstractions Blobs – Provide a simple interface for storing named files along with metadata for the file Tables – Provide structured storage. A Table is a set of entities, which contain a set of properties Queues – Provide reliable storage and delivery of messages for an application
  21. 21. Blob Namespace Blob URL http://<Account>.blob.core.windows.net/<Container>/<BlobName> Example: Account – sally Container – music BlobName – rock/rush/xanadu.mp3 URL: http://sally.blob.core.windows.net/music/rock/rush/xanadu.mp3 Account Container Blob IMG001.JP G pictures IMG002.JP G sally movies MOV1.AVI
  22. 22. Blob Features And Functions Store Large Objects (up to 50 GB each) Standard REST PUT/GET Interface http://<Account>.blob.core.windows.net/<Container>/<BlobName> PutBlob Inserts a new blob or overwrites the existing blob GetBlob Get whole blob or by starting offset, length DeleteBlob Support for Continuation on Upload Associate Metadata with Blob
  23. 23. Windows Azure Tables Provides Structured Storage Massively Scalable Tables Billions of entities (rows) and TBs of data Automatically scales to thousands of servers as traffic grows Highly Available Can always access your data Durable Data is replicated at least 3 times Familiar and Easy to use Programming Interfaces ADO.NET Data Services – .NET 3.5 SP1 .NET classes and LINQ or REST - with any platform or language
  24. 24. Table Data Model Table A Storage Account can create many tables Table name is scoped by Account Data is stored in Tables A Table is a set of Entities (rows) An Entity is a set of Properties (columns) Entity Two “key” properties that together are the unique ID of the entity in the Table PartitionKey – enables scalability RowKey – uniquely identifies the entity in the partition
  25. 25. Partition Example Partition Key Row Key Property 3 …. Property N Document Version Modification . Description Name Time Examples V1.0 8/2/2007 …. Committed version Partition 1 Doc . Examples V2.0.1 9/28/2007 Alice’s working version Doc FAQ Doc V1.0 5/2/2007 Committed version Partition 2 FAQ Doc V1.0.1 7/6/2007 Alice’s working version FAQ Doc V1.0.2 8/1/2007 Sally’s working version
  26. 26. Summary Of Windows Azure Tables Built to provide Massively Scalable, Highly Available and Durable Structured Storage Automatic Load Balancing and Scaling of Tables Partition Key is exposed to the application Familiar and Easy to use LINQ and REST programming interfaces ADO.Net Data Services Not a “relational database” No joins, no maintenance of foreign keys, etc
  27. 27. Future Windows Azure Table Support  At CTP  Single Index  Query and retrieve results sorted by PartitionKey and RowKey  Single Entity Transactions  Atomically Insert, Update, or Delete a Single Entity
  28. 28. Windows Azure Queues Provide reliable message delivery Simple, asynchronous work dispatch Programming semantics ensure that a message can be processed at least once Queues are Highly Available, Durable and Performance Efficient Access is provided via REST
  29. 29. Account, Queues And Messages An Account can create many Queues Queue Name is scoped by the Account A Queue contains Messages No limit on number of messages stored in a Queue But a Message is stored for at most a week http://<Account>.queue.core.windows.net/<QueueName> Messages Message Size <= 8 KB To store larger data, store data in blob/entity storage, and the blob/entity name in the message
  30. 30. Queue Programming API Queues Create/Clear/Delete Queues Inspect Queue Length Messages Enqueue (QueueName, Message) Dequeue (QueueName, Invisibility Time T) Returns the Message with a MessageID Makes the Message Invisible for Time T Delete(QueueName, MessageID)
  31. 31. Storage Durability All data is replicated at least 3 times Replicas are spread out over different fault and upgrade domains in same data center Future support for geo-distribution and geo-replication All of Storage (Blobs, Tables and Queues) is built on this replication layer Dynamic replication to maintain a healthy number of replicas Recover from a lost/unresponsive Drive or Node Data continuously scanned against data bit rot
  32. 32. Availability And Scalability Efficient Failover Data served immediately elsewhere within data center from available replicas Automatic Load Balancing of Hot Data Monitor the usage patterns and load balance access to Blob Containers, Table Partitions and Queues Distribute access to the hot data over the data center according to traffic Caching of Hot Blobs, Entities and Queues Hot Blobs are cached to scale out access to them Hot Entity and Queue data pages are cached and served from memory
  33. 33. Windows Azure Data Storage Concepts Blobs Container http://<account>.blob.core.windows.net/<container> Table Entities Account http://<account>.table.core.windows.net/<table> Queue Messages http://<account>.queue.core.windows.net/<queue>
  34. 34. Windows Azure Storage Summary Essential Storage for the Cloud Durable, Scalable, Highly Available, Security, Performance Efficient Familiar and Easy to Use Programming Interfaces REST Accessible, LINQ and ADO.NET Rich Data Abstractions Service communication: queues, locks, … Large user data items: blobs, blocks, … Service state: tables, caches, …
  35. 35. Links http://www.microsoft.com/azure http://blog.smarx.com http://delicious.com/alan.dean/azure
  • electioneer

    Sep. 28, 2015
  • steven.hy.tseng

    Nov. 4, 2009
  • vitorvtb

    Mar. 24, 2009

My presentation to the Charteris Tech Day in December 2008.


Vistos totais


No Slideshare


De incorporações


Número de incorporações