[Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano...

30
Explorando Windows Azure Services Ing. Jose Mariano Alvarez CTO SQL Total Consulting Ing. Carlos Peix Chief Geek Praxia

description

[Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Transcript of [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano...

Page 1: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Explorando Windows Azure Services

Ing. Jose Mariano AlvarezCTOSQL Total Consulting

Ing. Carlos Peix Chief GeekPraxia

Page 2: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Cloud ComputingLa computación en nube es una

tecnología que permite ofrecer servicios de computación a través de Internet.

Page 3: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Azure services

Page 4: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Plataforma Windows AzureComputaciónAlmacenamientoGestión

Base de datos

Servicios generalesControl de acceso

Page 5: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

¿Qué es Azure?

Page 6: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Un sistema operativo para la nubeAbstracción de Hardware de múltiples

servidoresAlmacenamiento distribuido escalable y

altamente disponibleGestión automática del servicio,

Balanceo de cargaInteroperable (REST)Sin licencia, costo por servicio utilizadoDatacenters operados por Microsoft

Page 7: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Windows Azure

Compute Storage

DeveloperSDK

Page 8: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

DeveloperTools

Compute• .NET 3.5 SP1• Server 2008 – 64bit• Full Trust*• Web Role

• IIS7 Web Sites (ASP.NET, FastCGI)

• Web Services (WCF)

• Worker Role• Servidores sin estado• Http(s)

Storage

Windows Azure

Page 9: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

9

DeveloperTools

Windows Azure

Compute

Storage• Durable, escalable,

disponible• Blobs• Tables• Queues• REST interfaces

Page 10: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Servicio

Arquitectura

LB

Internet

Web Site(ASPX, ASMX,

WCF)

Web Site(ASPX, ASMX,

WCF)Web role(ASPX, WCF)

Worker Service

Worker role

LB

Almacenamiento

Tables Blobs

Queue

Page 11: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

AlmacenamientoBlobs, Tables, QueuesDiseñado para la nube

3 replicasConsistencia garantizada

Accesible por internet mediante REST API

Multiples storage accountStorage Client en el SDK (Helper)

Page 12: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Blobs0..N Blobs por Containers0..N Containers por cuentaEl alcance es a nivel de containerhttp://

accountname.blob.core.windows.net/container/blobpath

Capacidad 50GB (CTP)Privados o públicos Utilizar Blobs donde usábamos

archivos

Page 13: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

13

Queues

Simple Cola de envío asincrónicaMensajes

Tamaño máximo 8kbOperaciones:

EnqueueDequeueRemoveMessage

Page 14: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

TablesEntidades y propiedades (filas &

columnas)El alcance es por cuentaDiseñada para miles de millonesEscala hacia afuera mediante

particionesPartition key y row keyOperaciones realizadas en particionesConsultas eficientesNo hay límite en el número de

particionesADO.NET Data Services

Page 15: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Ciclo de vida de la aplicaciónCrear paquete de (publish)

Binario + Contenido + MetadataDeploy via web portalAgregar y quitar capacidad via metadataSe actualiza sin perdidad de servicio

durante la actualizaciónNo se puede usar un Debugger en la

nubeEvent logs vía web

Page 16: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Consideraciones de diseñoEscalabilidad y disponibilidad son mas

importantes.El almacenamiento NO es relacional.Stateless

No existe Session ni Application, pero hay providers basados en storage.

Usar el colas para desacoplar procesamiento.Cuando se pone en línea, queda en línea.Hay que pensar dos veces en los mecanismos

de actualizacion.

Page 17: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Demo

Page 18: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

SQL Azure

Page 19: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Extending SQL Data Platform to Cloud

Servico inicial

• Relacional

Futuros Servicios

• Data Sync • Business Intelligence y Reporting• Nuevos Servicios: Reference Data y Secure Data Hub

SQL Azure Database

Data SyncReference Data

Reporting

Business Intelligenc

e

Symmetric Programming Moel

Data Hub Aggregation

Page 20: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

20

Evolución de SQL Azure

Evo

luc

SQL Azure

TDS + TSQL Model

Web App

SQL Client*

Windows Azure

BrowserApplicati

on

Application

REST Client

REST (Astoria)

ADO.Net + EF

Application

SQL Client*

Cloud

HT

TP

HT

TP

+R

ES

T

TD

S

Data

Cen

ter

ODBC, OLEDB, ADO.Net PHP, Ruby, …

OLD SDS

REST/SOAP + ACE Model

Web App

REST Client

Windows Azure

BrowserApplicati

on

Application

REST Client

HT

TP

HT

TP

+R

ES

T

Data

Cen

ter

Cloud

Page 21: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Opciones de bases de datosR

ecu

rso

s

Dedicados

Compartidos Bajo AltoControl

SQL Azure (RDBMS)

Value Props:

Auto HA, Fault-Tolerance

Friction-free scaleSelf-provisioningHigh compatibility

Virtual DB serverResource governance @

LDB Security @ LDB

On-premise SQL Server or other s/w on-

premise Resource governance @ machine Security @ DB Server/OS

Value Props:Full h/w control –

size/scale100% compatibilityRoll-your-own

HA/DR/scale

Objetivo de SQL AzureV1

Hosted Hosted SQL Server or

other Resource governance @

VM Security @ DB Server/OSValue Props:

100% of API surface areaRoll-your-own HA/DR/scale

Page 22: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

SQL AzureDeployment

Web Portal(API)

SQL AzureTDS

DB Scrip

t

Page 23: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

SQL AzureAcceso

Web Portal(API)

SQL AzureTDS

Your App

Change Connection String

Page 24: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Database Replicas

Replica 1

Replica 2

Replica 3

DB

Single Database Multiple Replicas

Single Primary

Page 25: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Demo

Page 26: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Ejemplos de CompatibilidadAlcance para v1 Fuera de alcance para

v1Tables,

indexes,viewsStored ProceduresTriggersConstraintsTable variables,

session temp tables (#t)

Distributed Transactions

Distributed QueryCLRService BrokerSpatialPhysical server or

catalog DDL and views

Page 27: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Administración lógica vs físicaSQL Azure se focaliza en la

administración lógicaSchemasOptimización de QueryGestión de seguridad (Logins, Users,

Roles)El servicio realiza la gestión física

Alta disponibilidad “out of box”Load balancing

Page 28: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

Más InformaciónWindows Azure Platform

http://www.azure.com/

Assemblahttps://www.assembla.com/wiki/show/prx-guamini

Todos los artefactos de la presentaciónhttp://code.assembla.com/prx-guamini/subversion/nodes/trunk

Blogshttp://blog.josemarianoalvarez.com/http://blog.carlospeix.com/

Page 29: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)

¿Preguntas?

Page 30: [Code Camp 2009] Cloud Computing - Explorando Windows Azure Services (Carlos Peix + José Mariano Álvarez)