Windows azure camp - Kolkata

Post on 28-May-2015

648 views 3 download

Tags:

description

Windows azure camp - Kolkata

Transcript of Windows azure camp - Kolkata

Windows Azure Camp

Kolkata – 10th April - 2011

About Presenters

Abhijit JanaConsultant, Microsoft http://abhijitjana.net

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

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

Introducing Cloud

Why Cloud Computing ?A Quick Look Back

Own Resource

Buy Own Servers Maintenance

Why Cloud Computing ?Why not take a Hosted Server ?

Own Resource

Using Service Provider Reduced Maintenance Cost

Traffic Increased

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)

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

Scalability

Introducing Windows Azure

VideoWhat is Windows Azure ?

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

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

Service management and MonitoringComputeStorage

Developer experience

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

Windows Azure Continue...

Internet

Windows Azure Platform

Azure™ Services Platform

VideoWhat is Windows Azure Platform ?

Using Windows Azure Service Platform

Different Components Of Window Azure

Components Of Windows Azure

Compute Storage

Fabric

Windows Azure Compute

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.

DemoCloud on Desktop

Getting Touch with Web and Worker Roles

Web Role

Storage Services

Public Internet

Web Role

Load Balancer

Web RoleWeb Role

Worker Role

Storage Service

Public Internet

Worker RoleWorker

RoleWorker

RoleWorker

Role

Web Role and Worker Role

Storage Services

Public Internet

Web Role

Load Balancer

Worker Role

Web Role

Worker Role

DemoHosting your first ASP.NET

Application On Windows Azure

DemoLet’s Developed One Cloud Application

Together

Windows Azure Storage

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

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

Azure Storage – BLOBS – Key Concepts

BlobContainerAccount

Account

Pictures

IMG001.JPG

IMG002.JPG

Movies MOV1.AVI

Block A

Block B

Block C

Block

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.

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.

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.

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.

Azure Storage – Tables – Key Concepts

EntityTableAccount

Account

Users

RowID.…

RowID.…

PhotoIndex

RowID.…

RowID.…

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.

Azure Storage – QUEUES– Key Concepts

MessageQueueAccount

Account

Jobs 1

http…//:

http…//:

Jobs 2

http…//:

http…//:

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

DemoAzure Storage with Development Fabric

DemoLet’s Play with BLOB Storage

DemoUsing Azure Storage on Cloud

Windows Azure In a real Business Scenarios

Parallel Processing

Web Role

Queue Worker Role Instance

DemoWindows Azure In a real Business Scenarios

Windows Azure Fabric

Azure Fabric – Manage & Monitor

Compute Storage

Fabric

Fabric Controller

Components of Windows Azure TogetherWindows Azure Components

Web Role

Worker Role

Compute

Fabric

Blobs

Tables

Queues

Storage

Introducing SQL Azure

VideoWhat is SQL Azure ?

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

DemoUsing SQL Azure Portal

Firewall Setting for SQL Azure

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

DemoSQL Azure and SQL Server Management Studio

DemoSQL Azure – Storage Queue – Client App

DemoSQL Azure – WCF – Windows Phone 7

Introducing Azure AppFabric

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

VideoWhat is Windows Azure AppFabric ?

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

Q / A

Thank You !!

Abhishek Surhttp://abhisheksur.com@Abhi2434abhi2434@gmail.com

Abhijit Janahttp://abhijitjana.net@AbhijitJanaabhijan@microsoft.com