windows azure platform storage
DESCRIPTION
Durable data storage is a key component of any cloud computing offering. The Windows Azure Platform offers many options, which can be used alone or in combination. Windows Azure itself offers ready-to-use and lightweight storage in the form of tables, blobs, and queues. Another choice for storage is SQL Azure, a true relational database in the cloud. In this session, we’ll explore the highlights of these implementations and how to both create and use storage in each form. We’ll give you guidance on choosing the right forms of storage for your application scenarios. Highlights include: · Programming against table & blob storage · Working with queue storage · Scaling and configuration · Understanding SQL Azure databases versus local SQL Server databases · Database creation, deployments and migrations · Programming against SQL Azure databasesTRANSCRIPT
Windows Azure Platform Data Storage
David Robinson
Senior Program Manager
Microsoft
Agenda
• Windows Azure Platform Data Storage Options• Getting Started with SQL Azure Data Storage• Getting Started with Windows Azure Data Storage
– Blobs– Tables– Queues– Drives
• Inspecting the contents of Windows Azure Data Storage
Objectives
• Learn the data storage options offered by the Windows Azure Platform and become familiar with choosing and using the appropriate one for your application
Azure Platform Data Storage Options• SQL Azure
• Relational data storage• Windows Azure Data Storage
• Blobs• Unstructured data storage
• Tables• Semi-structured or tabular data storage
• Queues• Buffered delivery data storage
• Drives• Durable NTFS volumes that Windows Azure
applications can use. See: http://microsoftpdc.com/Sessions/SVC14
SQL Azure Features
• Supported– Tables, Indexes,
Views– Stored Procedures– Triggers– Constraints– Table Variables– Temp Tables
(#Name)
• Not Supported– Physical Server Access – Catalog DDL– Common Language
Runtime– Service Broker– Distributed Transactions
and Queries
SQL Azure
• Initial Services– Database – Core SQL Server database capabilities
• Future Services– Data Sync – Enables the sync framework– Additional SQL Server capabilities available as a service:
Business Intelligence and Reporting– New services: Reference Data and Secure Data Hub
SQL AzureDeployment
Web Portal(API)
SQL AzureTDS
DB Script
SQL AzureAccessing databases
Web Portal(API)
SQL AzureTDS
Your App
Change Connection String
Database Replicas
Replica 1
Replica 2
Replica 3
DB
Single Database Multiple Replicas
Single Primary
SQL AzureDatabase Monitoring & Recovery
Web Portal(API)
SQL AzureTDS
Your App
!
SQL Azure Server Creation
SQL Azure Firewall Maintenance
Simple rules Easy one-screen portal maintenance
SQL Azure Database Connection String
• An administrative user is created with the server• User has system administrator permissions like sa• Server=tcp:itte80vcfq.database.windows.net;
Database=FabrikamAzureDB;User ID=davidrob;Password=myPassword;Trusted_Connection=False;Encrypt=True;
Database Migrations
• Scripts–Transfer Schema
• BCP–Transfer Data
• SSIS (SQL Server Integration Service)–Transfer Schema and Data
Database Migrations (Cont.)
• The SQL Azure Migration Wizard helps you migrate your local SQL Server 2005 / 2008 databases into SQL Azure. The wizard walks you through the selection of your SQL objects, creates SQL scripts suitable for SQL Azure, and allows you to migrate your data.”
http://sqlazuremw.codeplex.com/
Database Management using SQL Management Studio
Getting Started with Windows Azure Data Storage
Windows Azure Data Storage
Account Name / Key
• AccountName– A unique name identifying the Azure Data Storage
• AccountKey– A blob of encrypted data used for authentication
Windows Azure Data Storage - Blobs
• Unstructured data storage• Partitioned by container• Unlimited containers
Windows Azure Data Storage - Tables• Windows Azure Table provides scalable, available,
and durable structured (or semi-structured) storage in the form of tables.
• The tables contain entities, and the entities contain properties.
• The tables are scalable to billions of entities and terabytes of data, and may be partitioned across thousands of servers.
• The tables support ACID transactions over single entities and rich queries over the entire table.
• Simple and familiar .NET and REST programming interfaces are provided via ADO.NET Data Services.
• http://go.microsoft.com/fwlink/?LinkId=153401
Windows Azure Data Storage – Tables (Terms Part 1)• Table – contains a set of entities. • Entity (Row) – Entities are the basic data items
stored in a table. • Property (Column) – This represents a single
value in an entity. • PartitionKey – The first key property of every
table. The system uses this key to automatically distribute the table’s entities over many storage nodes.
Windows Azure Data Storage – Tables (Terms Part 2)• RowKey – A second key property for the table.
This is the unique ID of the entity within the partition it belongs to.
• Timestamp – Every entity has a version maintained by the system.
• Partition – A set of entities in a table with the same partition key value.
• Sort Order – There is a single index provided for the CTP, where all entities in a table are sorted by PartitionKey and then RowKey
SQL Azure and Windows AzureTable Comparison
SQL Azure Tables• Fully structured• Strongly typed• Relational (RDMS)• Highly scalable
Windows Azure Tables• Semi-structured• Loosely typed• Non-Relational (Not RDMS)• Massively scalable
Windows Azure Data Storage - Queues• Buffered delivery data storage• Read at least once• Delete to remove message, otherwise is returned
to queue• Partitioned by Queue Name
Q & A
Resources• Azure Portal
– http://windows.azure.com
• Tools– SQL Azure Migration Wizard
• http://sqlazuremw.codeplex.com/
– Azure Storage Explorer • http://azurestorageexplorer.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=35189
– Windows Azure Management Tool (MMC)• http://cloudfex.com/cs/blogs/cloud/archive/2009/05/17/windows-azure-management-tool-mmc.aspx
• Windows Azure Forums– http://social.msdn.microsoft.com/Forums/en-US/ssdsgetstarted/threads
ResourcesWindows Azure Data Storage
• Haridas, Jai. “Windows Azure Tables and Queues Deep Dive”. Microsoft PDC. 2009. http://microsoftpdc.com/Sessions/SVC09
• Calder, Brad. “Windows Azure Blob Deep Dive”. Microsoft PDC. 2009. http://microsoftpdc.com/Sessions/SVC14
Resources – White Papers
• Windows Azure Table – Programming Table Storage– http://go.microsoft.com/fwlink/?LinkId=153401
• Windows Azure Blob – Programming Blob Storage– http://go.microsoft.com/fwlink/?LinkId=153400
• Windows Azure Queue – Programming Queue Storage– http://go.microsoft.com/fwlink/?LinkId=153402