Azure, Cloud Computing & Services
-
Upload
alan-dean -
Category
Technology
-
view
3.144 -
download
2
description
Transcript of Azure, Cloud Computing & Services
![Page 1: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/1.jpg)
Azure, Cloud Computing & Services
![Page 2: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/2.jpg)
Azure™ Services Platform
![Page 3: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/3.jpg)
A set of connected servers
On which developers can:Install and run services
Store and retrieve data
What Is The Cloud?
![Page 4: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/4.jpg)
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
What Is Windows Azure?
![Page 5: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/5.jpg)
This Is What Every Cloud Service Developer Has To Do Today!
Business logic
Datacenter
Respond to hardware failures
Add storage capacity
Handle increase in traffic
Diagnose service failures
Apply OS patches
Perform live upgrade for new feature
Expand to new locale
Service “glue”and operations
…
![Page 6: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/6.jpg)
What's Missing In The Cloud?An operating system for the cloud:
….Service 1 Service 2 Service NService 3
……
![Page 7: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/7.jpg)
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 computing24/7 operation
Pay for what you use
Simpler, transparent administration
What Should The Cloud OS Provide?
![Page 8: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/8.jpg)
Automated service managementYou define the rules and provide your code
The platform follows the rules: deploys, monitors, and manages your service
A powerful service hosting environmentAll of the hardware: servers; load balancers; …
Virtualized and direct execution
Scalable, available cloud storageBlobs, tables, queues, …
A rich, familiar developer experience
How Is The Cloud OS Manifested?
![Page 9: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/9.jpg)
A Look Inside Azure
ServiceBus
AccessControl
Workflow
…
Database
Reporting
Analytics
…
Compute Storage Manage
Identity
Devices
Contacts
…
…
…
Your Applications
![Page 10: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/10.jpg)
So What?
Default.aspx
![Page 11: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/11.jpg)
We Get Scalability For Free!
Scalability
Availability
Zero-downtime upgrades
All with existing tools and skills
Default.aspxLB
![Page 12: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/12.jpg)
Horizontal Scaling
What about state?(e.g., shopping cart)
![Page 13: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/13.jpg)
Separating State
Durable Store
![Page 14: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/14.jpg)
Durable Storage
Durable, scalable, available store
Simple abstractions
Simple interfaceREST
ADO.NET Data Services
Blobs Tables
…
Queues
![Page 15: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/15.jpg)
Simple Storage
Default.aspx
Storage(Blobs, Tables, Queues)
LB
![Page 16: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/16.jpg)
Not Just Websites
Cloud services aren’t just websites
Many other types of work for the cloudBulk file conversion
Heavy analytics
Finding extraterrestrials
Even websites can offload async work
We need a more complex architecture
![Page 17: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/17.jpg)
Service ArchitecturesWeb role
Storage
LB Worker.cs
![Page 18: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/18.jpg)
Service ArchitecturesWorker role
Default.aspx
Storage
LB
![Page 19: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/19.jpg)
Service ArchitecturesWeb and worker roles
Storage
LB
![Page 20: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/20.jpg)
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
![Page 21: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/21.jpg)
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
![Page 22: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/22.jpg)
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 BlobContain
erAccoun
t
sally
pictures
IMG001.JPG
IMG002.JPG
movies MOV1.AVI
![Page 23: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/23.jpg)
Blob Features And Functions
Store Large Objects (up to 50 GB each)
Standard REST PUT/GET Interfacehttp://<Account>.blob.core.windows.net/<Container>/
<BlobName>
PutBlobInserts a new blob or overwrites the existing blob
GetBlobGet whole blob or by starting offset, length
DeleteBlob
Support for Continuation on Upload
Associate Metadata with Blob
![Page 24: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/24.jpg)
Windows Azure Tables
Provides Structured StorageMassively Scalable Tables
Billions of entities (rows) and TBs of data
Automatically scales to thousands of servers as traffic grows
Highly AvailableCan always access your data
DurableData 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
![Page 25: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/25.jpg)
Table Data Model
TableA Storage Account can create many tables
Table name is scoped by Account
Data is stored in TablesA Table is a set of Entities (rows)
An Entity is a set of Properties (columns)
EntityTwo “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
![Page 26: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/26.jpg)
Partition KeyDocument Name
Row KeyVersion
Property 3Modification Time
…..
Property NDescription
Examples Doc
V1.0 8/2/2007 …..
Committed version
Examples Doc
V2.0.1 9/28/2007 Alice’s working version
FAQ Doc V1.0 5/2/2007 Committed version
FAQ Doc V1.0.1 7/6/2007 Alice’s working version
FAQ Doc V1.0.2 8/1/2007 Sally’s working version
Partition ExampleP
artitio
n
1P
artitio
n
2
![Page 27: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/27.jpg)
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
![Page 28: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/28.jpg)
Future Windows Azure Table Support
At CTPSingle Index
Query and retrieve results sorted by PartitionKey and RowKey
Single Entity Transactions
Atomically Insert, Update, or Delete a Single Entity
Future Support for Secondary
Indexes Query and
retrieve results sorted by other properties
Entity Groups Atomic
transactions across multiple entities within same partition
![Page 29: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/29.jpg)
Windows Azure Queues
Provide reliable message deliverySimple, 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
![Page 30: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/30.jpg)
Account, Queues And Messages
An Account can create many QueuesQueue Name is scoped by the Account
A Queue contains MessagesNo 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>
MessagesMessage Size <= 8 KB
To store larger data, store data in blob/entity storage, and the blob/entity name in the message
![Page 31: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/31.jpg)
Queue Programming API
QueuesCreate/Clear/Delete Queues
Inspect Queue Length
MessagesEnqueue (QueueName, Message)
Dequeue (QueueName, Invisibility Time T)Returns the Message with a MessageID
Makes the Message Invisible for Time T
Delete(QueueName, MessageID)
![Page 32: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/32.jpg)
Storage Durability
All data is replicated at least 3 timesReplicas are spread out over different fault
and upgrade domains in same data centerFuture 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
![Page 33: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/33.jpg)
Availability And Scalability
Efficient FailoverData served immediately elsewhere within data center from available replicas
Automatic Load Balancing of Hot DataMonitor 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 QueuesHot Blobs are cached to scale out access to them
Hot Entity and Queue data pages are cached and served from memory
![Page 34: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/34.jpg)
Account
Container Blobs
Table Entities
Queue Messages
Windows Azure Data Storage Concepts
http://<account>.blob.core.windows.net/<container>
http://<account>.table.core.windows.net/<table>
http://<account>.queue.core.windows.net/<queue>
![Page 35: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/35.jpg)
Windows Azure Storage Summary
Essential Storage for the CloudDurable, Scalable, Highly Available, Security, Performance Efficient
Familiar and Easy to Use Programming Interfaces
REST Accessible, LINQ and ADO.NET
Rich Data AbstractionsService communication: queues, locks, …
Large user data items: blobs, blocks, …
Service state: tables, caches, …
![Page 36: Azure, Cloud Computing & Services](https://reader036.fdocuments.us/reader036/viewer/2022062513/55529a21b4c905e8128b4e60/html5/thumbnails/36.jpg)
http://www.microsoft.com/azure
http://blog.smarx.com
http://delicious.com/alan.dean/azure
Links