Windows azure camp - Kolkata

65
Windows Azure Camp Kolkata – 10 th April - 2011

description

Windows azure camp - Kolkata

Transcript of Windows azure camp - Kolkata

Page 1: Windows azure camp - Kolkata

Windows Azure Camp

Kolkata – 10th April - 2011

Page 2: Windows azure camp - Kolkata

About Presenters

Abhijit JanaConsultant, Microsoft http://abhijitjana.net

Abhishek SurMicrosoft MVP , Client App Dev.http://abhisheksur.com

Page 3: Windows azure camp - Kolkata

Agenda• Introducing Cloud• Introducing windows Azure • Different Components of Windows Azure• Developing and Hosting Application on Azure• Cloud Storage - Windows Azure storage Services• Windows Azure in a real business scenarios• Introducing SQL Azure• Building Application Using SQL Azure• Developing Client Application using Azure• Introduction to Windows Azure AppFabric

Page 4: Windows azure camp - Kolkata

Introducing Cloud

Page 5: Windows azure camp - Kolkata

Why Cloud Computing ?A Quick Look Back

Own Resource

Buy Own Servers Maintenance

Page 6: Windows azure camp - Kolkata

Why Cloud Computing ?Why not take a Hosted Server ?

Own Resource

Using Service Provider Reduced Maintenance Cost

Traffic Increased

Page 7: Windows azure camp - Kolkata

Why Cloud Computing ?

A set of connected servers which are managed in a data CentersWhat we can do on that ?

Install ServicesRun servicesStore and retrieve data

Let’s Move into Cloud

What Does Cloud Provides ?Infrastructure as a Service (IaaS)Platform as a Service (PaaS)Software as a Service (SaaS)

Page 8: Windows azure camp - Kolkata

Cloud Power

Cloud Data Center

1

2

3

4

5

6

7

8

Applications

Recover from hardware failures

Handle increase in traffic Automatically

Automatic Storage Capacity Upgrade

Diagnose service failures and recover

Apply OS patches and Configuration

Automatic Upgrade H/W

Pay as Per Use

Available 24 x 7

ReliabilityAvailabilityScalability

Page 9: Windows azure camp - Kolkata

Scalability

Page 10: Windows azure camp - Kolkata

Introducing Windows Azure

Page 11: Windows azure camp - Kolkata

VideoWhat is Windows Azure ?

Page 12: Windows azure camp - Kolkata

Cloud OSAn operating system that can controls a set of connected servers and Span over the internet

Self collaborationAbstract execution environmentHosting EnvironmentsShared file systemResource and storage allocationProgramming environmentsProviding security on demand

Utility computing24/7 operationPay for what you useAuto UpgradableSimpler, transparent, configurable administration

Page 13: Windows azure camp - Kolkata

What Is Windows Azure ?It is an operating system for the cloudMainly Focusing on utility computingMain Components

Service management and MonitoringComputeStorage

Developer experience

Page 14: Windows azure camp - Kolkata

Relating Desktop With Azure

Desktop

1

2

3

EXE

Application Configuration

Manifest

4 Library / Services

5 Local data stores

Windows Azure

1

2

3

Service package

Service Configuration

Service definition

4 Web Role and Worker Role

5 Cloud Storage

Page 15: Windows azure camp - Kolkata

Windows Azure Continue...

Internet

Page 16: Windows azure camp - Kolkata

Windows Azure Platform

Azure™ Services Platform

Page 17: Windows azure camp - Kolkata

VideoWhat is Windows Azure Platform ?

Page 18: Windows azure camp - Kolkata

Using Windows Azure Service Platform

Page 19: Windows azure camp - Kolkata

Different Components Of Window Azure

Page 20: Windows azure camp - Kolkata

Components Of Windows Azure

Compute Storage

Fabric

Page 21: Windows azure camp - Kolkata

Windows Azure Compute

Page 22: Windows azure camp - Kolkata

ComputeA Windows Azure compute service is built from one or more roles. In Windows Azure, a service may run one or more instances of each role type. Windows Azure supports the following three types of roles:

Web role is customized for web application programming and supported by IIS 7. Worker role is used for generalized development, and may perform background processing for a web role. Virtual Machine (VM) role runs an image (a VHD) of a Windows Server 2008 R2 virtual machine. This VHD is created using an on-premises Windows Server machine, then uploaded to Windows Azure.

Page 23: Windows azure camp - Kolkata

DemoCloud on Desktop

Getting Touch with Web and Worker Roles

Page 24: Windows azure camp - Kolkata

Web Role

Storage Services

Public Internet

Web Role

Load Balancer

Web RoleWeb Role

Page 25: Windows azure camp - Kolkata

Worker Role

Storage Service

Public Internet

Worker RoleWorker

RoleWorker

RoleWorker

Role

Page 26: Windows azure camp - Kolkata

Web Role and Worker Role

Storage Services

Public Internet

Web Role

Load Balancer

Worker Role

Web Role

Worker Role

Page 27: Windows azure camp - Kolkata

DemoHosting your first ASP.NET

Application On Windows Azure

Page 28: Windows azure camp - Kolkata

DemoLet’s Developed One Cloud Application

Together

Page 29: Windows azure camp - Kolkata

Windows Azure Storage

Page 30: Windows azure camp - Kolkata

Azure StorageNeed persistent and durable storage in the cloud?

Windows Azure gives you four core storage services that are secure, scalable and easy to access.

Binary Large Object Service(Blobs) Table Service ( Tables)Queue Service ( Queues)Windows Azure Drive

Blobs Tables Queue

Page 31: Windows azure camp - Kolkata

Azure Storage - BLOBSBlobs are one of the most credible feature with AzureProvide a simple interface for storing named files along with

metadata for the fileIt’s very much reliable with Large size of fileMain Concept : Account, Container, Blob , Block

Page 32: Windows azure camp - Kolkata

Azure Storage – BLOBS – Key Concepts

BlobContainerAccount

Account

Pictures

IMG001.JPG

IMG002.JPG

Movies MOV1.AVI

Block A

Block B

Block C

Block

Page 33: Windows azure camp - Kolkata

Azure Storage – BLOBS – How it works ?

Movie.avi

Movie.avi

Block 1

Block 2

Block 3

Block 4

Block 5

Block 1

Block 2

Block 3

Block 4

Block 5

Movie.avi

1. Identify the file to be uploaded (Movie.avi).2. Identify / split the blocks for the file.3. Upload every block in any order you want to.4. Commit the block to a blob.

Page 34: Windows azure camp - Kolkata

Azure Storage – BLOBS – Must KnowKey Points

Files has to split to have blocks when it crosses 64 MB. Every block can be a maximum of 4 MB size. The maximum size of the blob / file can be 200 GB or 50,000 blocks. The blocks uploaded is not committed unless the final API call "PutBlockList" is called.

Block blobs though offer a very good and effective way of working with bigger files, it lacks on certain places.

The maximum size of the file can be no larger than 200GB. It needs at least two API calls to write a blob when uploaded as blocks. [PutBlock to upload a block with block id and PutBlockList to commit all the changes]. Any uploading cannot be committed immediately unless the final call "PutBlockList" is made. Reading a byte range other than the block split cannot be done.

Page 35: Windows azure camp - Kolkata

Azure Storage – Page BLOBS

The maximum size of a page blob file would be 1 TB. The least page size is 512 bytes and can accommodate any data in multiples of 512 bytes up to 4 MB into a page. As soon as a data is uploaded, it is written into the cloud / disk. All the data / pages inside the page blobs are indexed to allow faster read / write. Windows Azure Drive (TBD) is supported. A page can be considered as a individual file and read / write operation can be performed on it.

Page 36: Windows azure camp - Kolkata

Azure Storage - Tablesprovide structured storage A table is a set of entities, which contain a set of propertiesThere is no limitation on the number of table / collection and rows. Every entities can have up to 255 properties. Every entity should have a property defining the row key "RowKey" and partition key "PartitionKey". Row key is the unique identifier of the row and partition key is generally any property which would be better for maintaining partition. The limitation of not being an RDBMS is easily and effectively overcome by the support of LINQ on the tables. A LINQ query can therefore be written and executed against the tables. Every table is mirrored thrice in Azure and the reliability and availability is maintained automatically.

Page 37: Windows azure camp - Kolkata

Azure Storage – Tables – Key Concepts

EntityTableAccount

Account

Users

RowID.…

RowID.…

PhotoIndex

RowID.…

RowID.…

Page 38: Windows azure camp - Kolkata

Azure Storage - QueueProvide reliable storage and delivery of messages for an applicationKey Concept : Account, Storage, MessageA message in queue has a limitation of 8 KB in size. A Queue has no limitation on the number of messages it can contain. Messages cannot choose their destinations individually but they follow the path or receiver of the queue. Message when consumed by acquiring token which expires by time i.e., once a message is got it will be locked / hidden from any other process unless the time expires or the message is deleted; if the time expires, the message will be marked as new and will be provided to the next consumer waiting. A detailed process is explained in the animation shown below. Messages can be even got without a time expiry and immediately marked as processed.

Page 39: Windows azure camp - Kolkata

Azure Storage – QUEUES– Key Concepts

MessageQueueAccount

Account

Jobs 1

http…//:

http…//:

Jobs 2

http…//:

http…//:

Page 40: Windows azure camp - Kolkata

Azure Storage –QUEUS– How it works ?

Queue

Msg 1

Msg 2

Msg 2

Msg 3

Source Applicatio

n

Msg 1Msg 3

Process 2

Process1

Msg 1Msg 2Msg 3

Page 41: Windows azure camp - Kolkata

DemoAzure Storage with Development Fabric

Page 42: Windows azure camp - Kolkata

DemoLet’s Play with BLOB Storage

Page 43: Windows azure camp - Kolkata

DemoUsing Azure Storage on Cloud

Page 44: Windows azure camp - Kolkata

Windows Azure In a real Business Scenarios

Page 45: Windows azure camp - Kolkata

Parallel Processing

Web Role

Queue Worker Role Instance

Page 46: Windows azure camp - Kolkata

DemoWindows Azure In a real Business Scenarios

Page 47: Windows azure camp - Kolkata

Windows Azure Fabric

Page 48: Windows azure camp - Kolkata

Azure Fabric – Manage & Monitor

Compute Storage

Fabric

Fabric Controller

Page 49: Windows azure camp - Kolkata

Components of Windows Azure TogetherWindows Azure Components

Web Role

Worker Role

Compute

Fabric

Blobs

Tables

Queues

Storage

Page 50: Windows azure camp - Kolkata

Introducing SQL Azure

Page 51: Windows azure camp - Kolkata

VideoWhat is SQL Azure ?

Page 52: Windows azure camp - Kolkata

Introducing SQL AzureRobust Relational Database on the Cloud Hosted on Microsoft Data Center.Database as a Service ( DaaS)Accessible via both Local and Cloud Based ApplicationInstalled into different nodes of Microsoft Data Center. So There is no need of Install, manageSQL Server on CloudHigh availability Easy Data Sync and Local SQL Server Migration

Cloud Apps

Local Apps

Page 53: Windows azure camp - Kolkata

DemoUsing SQL Azure Portal

Page 54: Windows azure camp - Kolkata

Firewall Setting for SQL Azure

http://msdn.microsoft.com/en-us/library/ee621782.aspxhttp://msdn.microsoft.com/en-us/library/ee621783.aspx

Page 55: Windows azure camp - Kolkata

DemoSQL Azure and SQL Server Management Studio

Page 56: Windows azure camp - Kolkata

DemoSQL Azure – Storage Queue – Client App

Page 57: Windows azure camp - Kolkata

DemoSQL Azure – WCF – Windows Phone 7

Page 58: Windows azure camp - Kolkata

Introducing Azure AppFabric

Page 59: Windows azure camp - Kolkata

Windows Azure AppFabricAccessing Application From CloudEither Access By Specific Port or VPN Configuring Port and Maintaining VPN now again challengeAccess Control Services (ACS ) and Service BusService Bus will take care of all the Authentication, Authorization and Additional Access for Azure Apps from on premises and connect across the firewall Help to seamlessly access Cloud as well as on premises resource.ACS helps to cross boundary collaboration like external organization, resources with different identification Help to access beyond the firewall

Page 60: Windows azure camp - Kolkata

VideoWhat is Windows Azure AppFabric ?

Page 61: Windows azure camp - Kolkata

Windows Azure PlatformWindows Azure Platform

Window Azure

Fabric

Tables

Compute

SQL Azure

Window Azure AppFabric

Web Role

Worker Role

Queue

Blobs

StorageSQL Azure

DB

Access Control

Service Bus

Page 63: Windows azure camp - Kolkata

Q / A

Page 65: Windows azure camp - Kolkata