Windows Azure for .NET Developers

Preview:

DESCRIPTION

deck from MSDN event in Anaheim on Feb 2009

Citation preview

for .NET developers

Lynn Langit

Developer Evangelist - Microsoft

http://blogs.msdn.com/SoCalDevGal

Windows Azure

Operating system for the cloudDesigned for utility computing

24/7 operationPay for what you useSimpler, transparent administration

Azure Services can:Manage Services (applications) AND /ORHost Services (applications) AND/ORStore Data

Azure Architecture

.NET Services

Windows Azure Live Services

Applications – ‘web’ or ‘worker’

Applications

SQL Services

OthersWindowsMobile

WindowsVista/XP

WindowsServer

Azure Platform

Azure™ Services Platform

Azure Services

.NET Services

Windows Azure Live Services

Applications

Applications

SQL Services

OthersWindowsMobile

WindowsVista/XP

WindowsServer

Fabric

Compute Storage

Config

Application

Interoperability

AzureAzure™™ Services Platform Services Platform

What’s in the model?Service topology and sizeHealth constraintsConfiguration settings

Develop and Develop and ModelModel

Deploy and Deploy and RunRun

Maintain Maintain Service HealthService Health

Automated Service Management

Fabric

Fabric

Compute Storage

Application

Windows Azure Fabric

Load Balance

r

HTTP

Agent

IIS

VMsVMs

WebRole

Instance

WorkerRole

Instance

VMs

Agent

Currently one-to-one, VM to Processor to Role

How do I get started?

• Windows Vista or Windows Server 2008, Visual Studio 2008, .NET 3.5 SP1, IIS7, SQL Server Express 2008 

*You can use Microsoft Web Platform Installer to get prereqs

• Then download resources and set up an Azure project– Windows Azure SDK – Windows Azure Tools for Microsoft Visual Studio CTP– Request a token and create a project (either storage or hosted

services) at the Azure site

Creating an Azure project

Integrated VS development

Demo:

A rich, familiar developer experience

& Automated Service Management

Demo- local initialization

An Azure Service Contains…

• One or more WEB Roles– ASP.NET or WCF, via HTTP(S) or TCP/IP Sockets

•Should be stateless (for scalability)•Use Azure storage for state –OR-•Use client cookies

• One or more WORKER Roles– Not exposed publically (in)– Often uses queues– Writes out to storage, or can expose publically (out)

Web and Worker Roles - CSDEF

Web and Worker Roles - CSCFG

Azure Storage

Blobs QueuesTables

Fabric

Compute Storage

Application

HTTP

Local Testing (*local tables in SQL Server instance) and Cloud deployment

Scalable, Available Cloud Storage

Simple, essential storage abstractions:Large items of user data: Blobs, file streams, …Service state: Simple tables, caches, …Service communication: Queues, locks, …Massive scale, availability and durabilityGeo-distribution and geo-replication

Demo:

Azure Table Storage

About Azure Services

Your Applications

Getting Started

• Request an account - here

• Manage your account - here

.NET Services

.NET Services

Windows Azure Live Services

Applications

Applications

SQL Services

OthersWindowsMobile

WindowsVista/XP

WindowsServer

Access Control

Service Bus

Workflow

?

.NET Services

Access ControlServices that authenticate and authorizeDeclarative model of rules and claimsWorks with identity-management infrastructures

Service BusStandardized messaging & registry services for endpointsConnects corp. resources with cloud services

Workflow – Workflow in the Cloud

Live Services

IdentityContactsDevicesSynchronization via Mesh

.NET Services

Windows Azure Live Services

Applications

Applications

SQL Services

OthersWindowsMobile

WindowsVista/XP

WindowsServer

Live Framework (Cloud)

Data Sync

Live Framework(Desktop/Device)

Live Operating

Environment

Application

Live Operating

Environment

Live Services

Live Services Architecture

Live Framework

Hotmail

. . .

Live Operating

Environment

YourApplications

Messenger

Contacts

Live Mesh

Calendar

Windows Live Applications

Search

. . .

Maps

Other LiveApplications

Live Services

Users

Communications and Presence

Devices

Applications

Synchronization

Identity

Directory

Storage

Search

Geospatial

SQL Services

.NET Services

Windows Azure Live Services

Applications

Applications

SQL Services

OthersWindowsMobile

WindowsVista/XP

WindowsServer

SQL Data Services

Others (Future)

DatabaseDatabase Reference Reference DataData

ETLETL Data Data MiningMining ReportingReporting

Data SyncData Sync

The ACE Model

AuthorityUnit of geo-location and billing (DNS name)

ContainerPartition of DataWidest domain of QueryCollection of HeterogeneousEntities

EntityProperty bag of name/value pairsLightly-typedUnit of update/retrievalSchema-less, Flexible

Major Subsystems

Mgmt. Services

Data NodeData Node

SQL Server

FabricFabric

Data Node Components

Partition ManagerPartition Manager

Master NodeMaster Node

Service ManagementService Management

Master ClusterMaster Cluster

Data ClusterData Cluster

Fabric Replication Fetch Partition

MapSQL

Client

Data Node Components

Partition ManagerPartition Manager

Master NodeMaster Node

SDS front-endSDS front-end

Data Access Library

REST/SOAP

ACE Logic

Front-end NodeFront-end Node

Data Access Library

REST/SOAP

ACE Logic

Front-end NodeFront-end Node

Mgmt. Services

Data NodeData Node

SQL Server

FabricFabric

Mgmt. Services

Data NodeData Node

SQL Server

FabricFabric

Mgmt. Services

Data NodeData Node

SQL Server

FabricFabric

Mgmt. Services

Data NodeData Node

SQL Server

FabricFabric

Data Access Library

REST/SOAP

ACE Logic

Front-end NodeFront-end Node

Data Sync

Public App

On Premises Assets and Data

Mobile Users

• Consolidates data from multiple sources• Enables data sharing between mobile users,

remote offices and business partners• Allows leveraging cloud-computing for BI, ETL,

Reporting• Is an available, highly scalable endpoint

"Huron" + MS Sync Framework

Mobile Clients Rich Clients

“Huron” Sync Service

SDS

Direct Clients

sync subset

Scale via SQL Data Services

• Consolidate business data in cloud & enable sharing

– to other desktops & mobile users

• Synchronize (network available)

• Each user does not have to be connected to a single database

• Out-of-the-box publication of Microsoft databases

• Solves the rendezvous problem

• More detail here

Business Intelligence at a Glance

SQL Server Analysis Server (SSAS)

SQL Server Integration Server (SSIS)

SSIS source component

for SSDS

SSIS source component

for SSDS

Data ProviderData Provider

SQL Server Report Server (SSRS)

Reporting

• On-premises provider– Can pull from SDS & on-premises data

• Leverage existing processes & assets– Uses existing tools & run-time– Flexible Report Builder– Rich Visualizations

Report Designer: SSDS data sources

Report Designer: Query against SSDS

DM in the Cloud

Test Data Types•Relational•CSV•SQL Services

Test Data Types•Relational•CSV•SQL Services

Try it in the cloud…

Data Mining and Excel integration

Calling the Cloud, from Excel 2007

Demo:

SQL Data Services

Resources

• Azure Services Platform - here• Ryan Dunn blog – here • Sync Blog – here • SQL Labs Incubation Projects – here

• SDS Provisioning Client – here • My Blog (SoCalDevGal) - here

More Information

http://blogs.msdn.com/SoCalDevGal

Main Azure Site

Development Environment – (listed in install order)– Install IIS 7.0 per Azure release notes – w/ ASP.NET and WCF

HTTP Activation for Vista– (optional) install PowerShell to run CloudDrive sample– Azure SDK – October Azure CTP tools for VS2008 – Azure Services Training Kit

Get Microsoft Software for FREE

For high school and college students - DreamSpark

For startup businesses - BizSpark

For everyone - Express editions – VS and SQL - here