computação armazenamento rede virtual business inteligence banco de dados rede de entrega de...

67

Upload: internet

Post on 22-Apr-2015

128 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas
Page 2: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Como utilizar o Windows Azure Storage nas suas aplicaçõesCOS301

Vitor CiaramellaDeveloper Evangelist - Microsoft BrasilMBA, PMP®, PRINCE2 Practitioner, CSP, CSM®, CSPO, MCT, MCPD & MCTS (.NET, Windows Azure, Windows Phone, Silverlight, SharePoint & SQL Server)

Page 3: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Agenda

Visão geral de armazenamento de dados no Windows AzureSQL AzureWindows Azure Storage

Local Store, Blob, Azure Drive, Table e Queue

Rede de Entrega de Conteúdo - CDNAppFabric Caching

Page 4: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Visão geral de armazenamento de dados no Windows Azure

Page 5: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Features do Windows Azure

Computação

Armazenamento

Rede Virtual

Business Inteligence

Banco de Dados

Rede de Entregade Conteúdo

Barramento deServiços

Marketplace

MáquinasVirtuais

Caching

Controle deAcesso

Page 6: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Features do Windows Azure

Computação

Armazenamento

Rede Virtual

Business Inteligence

Banco de Dados

Rede de Entregade Conteúdo

Barramento deServiços

Marketplace

MáquinasVirtuais

Caching

Controle deAcesso

Page 7: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Contextualizando...

Aplicação

Arquivos e pastasno Sistema de Arquivos

Tabelas noBanco de Dados

Aplicação com banco de dados e arquivos

Page 8: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Aplicação

Arquivos e pastasno Sistema de Arquivos

Tabelas noBanco de Dados

Fila de processamento

Serviço de processamento em segundo plano

Aplicação com banco de dados, arquivos e fila

Page 9: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Aplicação

Arquivos e pastasno Sistema de Arquivos

Tabelas noBanco de Dados

Fila de processamento

Serviço de processamento em segundo plano

Aplicação com banco de dados, arquivos, fila e cache

Cache

Page 10: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Aplicação(n instâncias)

Arquivos e pastasno Sistema de Arquivos (expansível)

Fila de processamento(expansível)

Aplicação com banco de dados, arquivos, fila e cache (expansível)

Cache(distribuído)

Tabelas noBanco de Dados(expansível)

Serviço de processamento em segundo plano(n instâncias)

Page 11: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Aplicação(n instâncias)

Arquivos e pastasno Sistema de Arquivos (expansível)

Fila de processamento(expansível)

Aplicação com banco de dados, arquivos, fila e cache (expansível)

Cache(distribuído)

Tabelas noBanco de Dados(expansível)

Serviço de processamento em segundo plano(n instâncias)

Atenção:Bancos de dados relacionais são naturalmente difíceis de expandir

Page 12: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Aplicação(n instâncias)

Arquivos e pastasno Sistema de Arquivos (expansível)

Fila de processamento(expansível)

Aplicação com banco de dados, arquivos, fila e cache (expansível)

Cache(distribuído)

Tabelas(expansível)

Serviço de processamento em segundo plano(n instâncias)

Tabelas noBanco de Dados(expansível)

Solução:Extrair tabelas do banco relacional para uma outra arquitetura que expande mais fácil

Page 13: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Web Role

Blob Storage

Queue Storage

Aplicação com banco de dados, arquivos, fila e cache (expansível)

AppFabric Cache

Table Storage

Worker Role

SQL Azure

Nomeando as features do Azure...

Page 14: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Web Role

Blob Storage

Queue Storage

AppFabric Cache

Table Storage

Worker Role

SQL Azure

Incluindo a Rede de Distribuição de Conteúdo (CDN)

CDN

Page 15: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Visão Geral do SQL Azure

Page 16: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

O que é o SQL Azure?

Em resumo:“É praticamente o SQL Server 2008 R2

que você está acostumado a trabalhar”

Page 17: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Features do SQL Azure

SQL AzureSQL Azure Reporting Services (CTP)SQL Azure Data Sync (CTP)

Page 18: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Features do SQL Azure

SQL AzureBanco de dados relacional em núvemAlta disponibilidade (SLA de 99,95%)Compatível com T-SQLSuporta tabelas, views, índices, roles, stored procedures, triggers e funçõesAcesso via TCP/IP com Connection String padrãoFirewall de conexão (apenas IPs autorizados se conectam)Administração via Painel de Controle Web, SQL Server Management Studio ou outra ferramenta compatível

Page 19: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Painel de Controle – SQL Azure

Screenshot do painel de controle ou mini demo

Page 20: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Exemplo de código – SQL Azurevar stringDeConexao = “Server=tcp:servidor123.database.windows.net;Database=nomeDoBancoDeDados; User ID=usuario@servidor123;Password=senha;Trusted_Connection=False; Encrypt=True;MultipleActiveResultSets=True;”;

using (var conexao = new SQLConnection(stringDeConexao)){

using (var comando = new conexao.CreateCommand()){

comando.CommandText = “select count(*) from TabelaX”;var resultado = comando.ExecuteScalar();

}}

Possuindo acesso ao Firewall, você pode se conectar no SQL Azure de diversas formas, incluindo:• ASP.NET, ADO.NET, Entity Framework, WCF Data Services• PHP• Java JDBC

Page 21: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Pontos de atenção do SQL Azure

Conexões apenas via TCP/IP porta 1433Não suporta SQL Server Agents / JobsNão suporta transações distribuidasA collation do banco e do servidor é sempre SQL_LATIN1_GENERAL_CP1_CI_ASTodas tabelas devem ter um índice clusterizadoTamanho máximo de 50Gb por banco de dados

Page 22: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Local Store

Page 23: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

O que é o Local Store?

Em resumo:“É praticamente o “C:\Temp” que cada

instância de computação possui”

Page 24: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Arquivo de Definição de Serviço<?xml version="1.0" encoding="utf-8"?><ServiceDefinition xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" name="MyService"> <WebRole name="MyService_WebRole" vmsize="Medium"> <InputEndpoints> <InputEndpoint name="HttpIn" port="80" protocol="http" /> </InputEndpoints> <ConfigurationSettings> <Setting name="SimpleConfigSetting" /> </ConfigurationSettings> <LocalResources> <LocalStorage name="localStoreUm" sizeInMB="10" /> <LocalStorage name="localStoreDois" sizeInMB="10" cleanOnRoleRecycle="false" /> </LocalResources> </WebRole></ServiceDefinition>

Page 25: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Usando o Local Storevar localStoreUm = RoleEnvironment.GetLocalResource("localStoreUm");var nomeArquivo = “MeuArquivo.txt";var caminhoArquivo = Path.Combine(localStoreUm.RootPath, nomeArquivo);

using (var fileStream = File.Create(caminhoArquivo)){

using (var streamWriter = new StreamWriter(fileStream)){

streamWriter.WriteLine(“Nova linha!”);}

}

var localStoreUm = RoleEnvironment.GetLocalResource("localStoreUm");var pastas = “\Pasta1\Pasta2”;var nomeArquivo = “MeuArquivo.txt";var caminhoArquivo = Path.Combine(localStoreUm.RootPath, pastas, nomeArquivo);

Ou se você tem sub-pastas:

Ex.: C:\Resources\directory\f335471d5a5845aaa4e66d0359e69066.MyService_WebRole. localStoreUm\Pasta1\Pasta2\MeuArquivo.txt

Page 26: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Pontos de Atenção do Local Storage

Não existe garantia que os dados persistidos no Local Storage serão preservados após a instância ser reiniciada

Encare ele como um diretório temporário

Você deve “reservar” o Local Storage pelo arquivo de definição de serviço (.csdef)Você deve obter o caminho do Local Storage pela chamada:

RoleEnvironment.GetLocalResource(“...”). RootPath

Page 27: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Blob Storage

Page 28: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

O que é o Blob Storage?

Em resumo:“É um sistema de arquivos distribuido

acessado via REST ou SDK”

Page 29: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Features do Blob Storage

Acessível via REST (HTTP ou HTTPS)Naturalmente interoperável (clientes .NET, Windows Phone, Java, PHP, iPhone, Android, Ajax, Silverlight, Flash e etc)

Permite associar metadadosMecanismos de controle de acesso e concorrênciaDois tipos de Blobs

Block BlobIdeal para StreamingCada Blob é uma sequência de BlocosAté 200Gb por Blob

Page BlobIdeal para acesso aleatório de leitura ou escritaCada Blob é um array de PáginasAté 1Tb por Blob

Page 30: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Estrutura do Blob Storage

BlobContainerConta

conta

imagens

img01.jpg

videos vid1.avi

http://<conta>.blob.core.windows.net/<container>/<nomeDoBlob>

Pages/

Blocks

Block/Page

Block/Page

img02.jpg

Page 31: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Criando a conta de StorageScreenshot ou mini-demo de criação de conta

Page 32: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Acessando um Blob via SDK para .NET

var stringDeConexao = “DefaultEndpointsProtocol=https;AccountName=contaDoBlob;AccountKey=chaveDoBlob”; var uriDoContainer = “ArquivosTexto”;var nomeDoArquivo = “/Pasta1/Pasta2/MeuArquivo.txt”;var contaDeStorage = CloudStorageAccount.Parse(stringDeConexao);var clienteDoBlob = contaDeStorage.CreateCloudBlobClient(); var container = new CloudBlobContainer(uriDoContainer.ToLower(), clienteDoBlob);

container.CreateIfNotExist();

var blob = container.GetBlobReference(nomeDoArquivo.ToLower());blob.UploadText(“Conteúdo do arquivo”);

A classe CloudBlob possui diversos métodos como: Delete, DownloadToFile, DownloadToText, DownloadToStream, OpenRead, OpenWrite, UploadFromStream, UploadFile.

O nome do Blob pode conter “\”, permitindo a ideia de pastas.

Page 33: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Rede de Distribuição de Conteúdo - CDNContent Delivery Network

Page 34: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

O que é o CDN?

Em resumo:“É um sistema de replicação de blobs

em servidores mais próximos do usuário final”

Page 35: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Como o CDN funciona

Windows Azure Blob Service

img1.jpg

Content Delivery NetworkLocalidade 1

Localidade 2 Localidade 3

GEThttp://guid01.vo.msecnd.net/imagens/pic.1jpg

http://conta.blob.core.windows.net/imagens/img1.jpg

http://conta.blob.core.windows.net/

http://guid01.vo.msecnd.net/

TTL

Page 36: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Habilitando o CDNScreenshot ou mini-demo

Page 37: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Azure Drive

Page 38: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

O que é o Azure Drive?

Em resumo:“É um VHD montado como um drive de

rede e persistido num Page Blob”

Page 39: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Features do Azure Drive

Drive NTFS “durável” para as instâncias de Windows AzureOpção “mista” entre o Local Storage e o Blob StorageTamanho máximo de 1Tb por DriveAPIs para montar e desmontar o drivePossibilidade de baixar ou subir o VHD via APIs do Blob StoragePossibilidade de criar um Snapshot do VHDCria um cache do Page Blob no Local Store

Page 40: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Usando o Azure Drive – Parte 1 var localStoreCache = RoleEnvironment.GetLocalResource(“LocalStoreCache”);CloudDrive.InitializeCache(localStoreCache.RootPath, localStoreCache.MaximumSizeInMegabytes);

var stringDeConexao = “DefaultEndpointsProtocol=https;AccountName=contaDoBlob;AccountKey=chaveDoBlob”; var contaDeStorage = CloudStorageAccount.Parse(stringDeConexao);var clienteDoBlob = contaDeStorage.CreateCloudBlobClient(); var container = new CloudBlobContainer(“meusvhds”, clienteDoBlob);container.CreateIfNotExist(); var blobDoVHD = container.GetBlobReference(“drive01.vhd”);

Se preparando para usar o Azure Drive• Pegar o caminho do localStore para criar um cache local• Pegar a referência ou a Uri do Page Blob do VHD

Page 41: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Usando o Azure Drive – Parte 2var drive01 = new CloudDrive(blobDoVHD.Uri, contaDeStorage.Credentials);

drive01.Create(1000); //em MB

var caminhoMapeado = drive01.Mount(localStoreCache.MaximumSizeInMegabytes, DriveMountOptions.Force);

var nomeArquivo = “MeuArquivo.txt";var caminhoArquivo = Path.Combine(caminhoMapeado, nomeArquivo);

using (var fileStream = File.Create(caminhoArquivo)){

using (var streamWriter = new StreamWriter(fileStream)){

streamWriter.WriteLine(“Nova linha!”);}

}

drive01.Unmount();

Page 42: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Pontos de Atenção do Azure Drive

Apenas uma instância pode montar o drive em modo escrita por vez

É necessário gerenciar a concorrência através de Leases (igual do Page Blob) e se preparar para retentar caso necessário

Para garantir a persistência dos dados no drive, utilize o método Flush do Stream / Arquivo

Page 43: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Table Storage

Page 44: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

O que é o Table Storage?

Em resumo:“É um sistema de tabelas distribuido

acessado via REST ou SDK”

Page 45: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Features do Table Storage

Acessível via REST (HTTP ou HTTPS)Naturalmente interoperável (clientes .NET, Windows Phone, Java, PHP, iPhone, Android, Ajax, Silverlight, Flash e etc)

Baseado em Entidades (lembra LINQ to SQL)Não permite criação de Chaves Estrangeiras (não é um Banco de Dados relacional)As tabelas não possuem um esquema fixo

Uma tabela pode ter entidades com diferentes propriedades

Possui mecanismo de concorrência e transaçãoProjetado para escalar (mecanismo de particionamento intrinseco)

Page 46: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Estrutura do Table Storage

EntidadeTabelaConta

conta

clientes

Name =…

Email = …

Name =…

EMailAdd= …

fotos

Photo ID =…

Date =…

Photo ID =…

Date =…

Page 47: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Usando o Table Storagevar stringDeConexao = “DefaultEndpointsProtocol=https;AccountName=contaDoBlob;AccountKey=chaveDoBlob”; var contaDeStorage = CloudStorageAccount.Parse(stringDeConexao);

Page 48: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Pontos de Atenção do Table Storage

Cada entidade pode ter até 255 propriedades e 1 Mb de tamanhoToda entidade tem que ter uma chave de partição e uma chave de linha (formando uma Chave Única indexada)É fundamental escolher uma boa chave de partição para garantir bom desempenho, transação, escalabilidade e balanceamento de carga

Page 49: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Queue Storage

Page 50: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

O que é o Queue Storage?

Em resumo:“É um sistema de fila distribuido

acessado via REST ou SDK”

Page 51: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Features do Queue Storage

Acessível via REST (HTTP ou HTTPS)Naturalmente interoperável (clientes .NET, Windows Phone, Java, PHP, iPhone, Android, Ajax, Silverlight, Flash e etc)

Ideal para comunicação e processamento assíncrono entre aplicações e serviços

Page 52: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Estrutura do Queue Storage

MensagemFilaConta

processamentodepedidos

ID clienteID pedidohttp://…

ID clienteID pedidohttp://…

conta

Page 53: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Usando o Queue Storagevar stringDeConexao = “DefaultEndpointsProtocol=https;AccountName=contaDoBlob;AccountKey=chaveDoBlob”; var contaDeStorage = CloudStorageAccount.Parse(stringDeConexao);

Page 54: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Pontos de Atenção do Queue Storage

Cada mensagem pode ter até 8kb de tamanhoPara tráfegos intensos utilize várias filas e manipule as mensagens em lotesPara garantir a entrega e processamento das mensagens use os passos abaixo

O leitor desenfilera a mensagem e marca-a como invisivel por um período XO leitor apaga a mensagem quando terminar de processá-la

Se o leitor falhar, a mensagem ficará visível para outro leitor processá-la

Page 55: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

AppFabric Caching

Page 56: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

O que é o AppFabric Caching?

Em resumo:“É um sistema de cache distribuido

acessado via SDK”

Page 57: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Features do AppFabric Caching

Fácil configuração e utilizaçãoAltamente escalável, com baixa latencia e alta taxa de transferência

ASP.Net Providers para Session State e Page Output CachingFaz cache de qualquer objeto .NETSegurança via Access Control

Page 58: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Estrutura do AppFabric Caching

Memória

Rede

Disco

Windows Azure AppFabric Caching (cache local)

Windows Azure AppFabric Caching (cache distribuído)

Storage

Menor latência

Média latência

Maior latência

Page 59: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Usando o Azure AppFabric Cachingvar stringDeConexao = “DefaultEndpointsProtocol=https;AccountName=contaDoBlob;AccountKey=chaveDoBlob”; var contaDeStorage = CloudStorageAccount.Parse(stringDeConexao);

Page 60: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Pontos de Atenção do AppFabric Caching

Utilização para compartilhar sessões do ASP.NET entre mais de uma instânciaAté 8Mb por objeto (serializado) cacheadoAtenção às cotas do cache

MemóriaTransaçõesLargura de bandaConexões concorrentes

Page 61: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Pontos de Atenção do AppFabric Caching

Utilização para compartilhar sessões do ASP.NET entre mais de uma instânciaAté 8Mb por objeto (serializado) cacheadoAtenção às cotas do cache

MemóriaTransaçõesLargura de bandaConexões concorrentes

Page 62: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

SQL Azure Praticamente o SQL Server 2008 R2 que você está acostumado a trabalhar

Local Store O “C:\Temp” que cada instância de computação possui

Blob Storage Sistema de arquivos distribuido acessado via REST ou SDK

CDN Sistema de replicação de blobs em servidores mais próximos do usuário final

Azure Drive VHD montado como um drive de rede e persistido num Page Blob

Table Storage Sistema de tabelas distribuido acessado via REST ou SDK

Queue Storage Sistema de fila distribuido acessado via REST ou SDK

AppFabric Caching Sistema de cache distribuido acessado via SDK

Resumão

Page 63: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Conteúdo RelacionadoSite do Windows Azure: http://www.microsoft.com/windowsazure/pt/br/

Centro de Treinamento do Windows Azure no MSDNhttp://msdn.microsoft.com/pt-br/hh292576

Training Kit: http://www.microsoft.com/download/en/details.aspx?id=8396

Exame de certificação: 70-583PRO: Designing and Developing Windows Azure Applicationshttp://www.microsoft.com/learning/en/us/exam.aspx?ID=70-583

Me encontre em: http://vic.ms

Page 64: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Palestras RelacionadasCOS304 | Novidades do Windows Azure AppFabric

COS305 | Migrando uma aplicação para Windows Azure

COS402 | Criando aplicação de alta escala e baixa latência com a plataforma Windows Azure

DBP202 | Conhecendo e Migrando para SQL Azure

QS8 | Migrando uma aplicação para o Windows Azure

Page 65: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Recursos

Recursos para IT Pros

Recursos para Desenvolvedores

http://technet.microsoft.com/pt-br

http://msdn.microsoft.com/pt-br

Getthefreemobileappforyourphone

http://gettag.mobi

Getthefreemobileappforyourphone

http://gettag.mobi

Page 66: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

Não esqueça de preencher sua

avaliação onlinewww.teched.com.br/

avaliacao

Getthefreemobileappforyourphone

http://gettag.mobi

Page 67: Computação Armazenamento Rede Virtual Business Inteligence Banco de Dados Rede de Entrega de Conteúdo Barramento de Serviços Marketplace Máquinas

© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after

the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.