TechEd Brasil 2009 - Estruturas de Dados no Azure: preparado para Milhões de usuários? (AZP401)
Pessoal,
Como prometido, segue meu post sobre a sessão que apresentei falando de estruturas de dados no Azure. Vamos começar falando um pouco mais sobre a track AZP.
A track AZP - Plataforma de Serviços do Windows Azure do TechEd Brasil 2009 teve como objetivo mostrar que, com a nova Plataforma de Serviços Azure será possível desenvolver aplicações e serviços a serem hospedados nos Data Centers da Microsoft sem que você se preocupe em comprar máquinas ou fazer instalações. Nesta track os participantes puderam compreender os principais componentes da Plataforma Azure e como utilizá-lo. Nela foram respondidas perguntas como: o que é o Windows Azure? como programar para ele? como utilizar o SQL Services, o .NET Services e o Live Services? como tratar de autorização e autenticação na nuvem? Etc.
As sessões apresentadas na track AZP foram:
- Quando usar o Azure? Controle versus Economia de Escala (AZP201)
Essa sessão esclarece os cenários de uso da Plataforma Azure, mostrando que se trata de uma questão de opção entre controle e economia de escala. Serão mostrados os principais aspectos que devem ser levados em consideração no momento da análise de funcionalidades candidatas para uma plataforma na nuvem, como o Windows Azure. De ordem econômica ou arquiteturais, a compreensão destes aspectos pode ser a diferença entre o sucesso ou insucesso na aplicação da computação na nuvem. - Compreendendo e utilizando a Plataforma Azure (AZP301)
Essa sessão apresenta os principais conceitos da Plataforma Azure, dando uma visão geral do que é um sistema operacional na nuvem, seus serviços e no como desenvolver para ele. Prepare-se para rodar seus aplicativos nos Data Centers da Microsoft visando de milhares a milhões de usuários. - Compreendendo e utilizando o .Net Services (AZP302)
Essa sessão apresenta mais um dos recursos importantes da plataforma de serviços do Windows Azure: o .NET Services. O .NET Services é responsável pelas capacidades de controle de acesso, workflows e barramento de serviços, recursos importantes para a construção de soluções sofisticadas na nuvem, tanto para o suporte de aplicações colaborativas para consumidores, como para soluções de negócio e integração entre empresas. - Compreendendo e utilizando o SQL Data Services (AZP402)
Essa sessão apresenta as principais capacidades do SQL Services, que é a camada responsável pela persistência de dados na nuvem sobre a plataforma de serviços do Windows Azure. Durante a sessão, vamos mostrar o uso dos recursos do SQL Data Services, o principal componente do SQL Services, responsável pela construção de um banco de dados na nuvem para aplicações on-premise e off-premise. - Identidade na Nuvem (AZP403)
Essa sessão apresenta os principais aspectos de autenticação e autorização na nuvem, focando os recursos do projeto Geneva da Microsoft. Compatível com o modelo CBA - Claim-Based Authentication, o Geneva oferece recursos para uma completa integração de identidades entre as soluções no enterprise e as aplicações na nuvem. - Estruturas de Dados no Azure: preparado para Milhões de usuários? (AZP401)
Essa sessão apresenta as estruturas de dados do Windows Azure - Table, Queue e Blob. Ela descreve os benefícios e limitações de cada tipo de armazenamento e mostra exemplos de uso. Ao final você estará preparado para escolher e usar a estrutura adequada para o seu aplicativo na nuvem.
Como vocês perceberam, tivemos várias sessões sobre a Plataforma de Serviços do Windows Azure e uma delas eu tive a honra de apresentar que foi a sessão Estruturas de Dados no Azure: preparado para Milhões de usuários? (AZP401).
Pontos importantes que mostrei na sessão AZP401:
- Windows Azure Storage e o SQL Azure são diferentes tipos de ofertas de armazenamento para a Plataforma de Serviços do Azure.
- O objetivo é fornecer para usuários e serviços acesso de qualquer lugar a qualquer momento; armazenar dado de qualquer tamanho de modo escalável; dar garantias de que os dados não serão perdidos; e pagar apenas pelo que for usado ou armazenado.
- Fornece estruturas de dados ricas para itens c/ grande volume de dados: blobs; serviços de estado: tabelas; serviços de comunicação: filas; com interfaces de programação simples e familiar: REST (HTTP e HTTPS) e .NET; e versionamento. Todo verbo REST contém agora uma informação sobre versão.
- Abstrações de Dados
- Blobs – Provêem uma interface simples para armazenar arquivos – com nome e metadado.
- Tabelas – Provêem um storage estruturado. Uma Tabela é um conjunto de entidades que contém um conjunto de propriedades.
- Filas – Provêem armazenamento confiável e a entrega de mensagens para uma aplicação.
- A imagem abaixo resume muito bem a proposta do Windows Azure Data Storage, onde cada tipo de abstração de dado possui uma conta, que container é um conjunto de blobs, tabela é um conjunto de entidades com propriedades, e fila é um conjunto de mensagens.
Leitura obrigatória para entender melhor o que é Windows Azure Data Storage são os 3 artigos abaixo dentro do Centro de Desenvolvimento da Plataforma Azure do MSDN Brasil:
Segue abaixo o link para o PPT e a Demo que utilizei na sessão.
Aproveitando a oportunidade, segue abaixo os passos para você começar a desenvolver para o Windows Azure e utilizar o Data Storage:
- Você precisa do Visual Studio 2008 ou 2010. Caso não tenha instalado ainda segue o link para instalação do Visual Web Developer 2008 Express e do Visual Studio 2010 Beta 1;
- IIS 7.0 ativado com ASP.NET, WCF HTTP Activation e CGI;
- Instale o Windows Azure Tools for Microsoft Visual Studio;
- Instale o Windows Azure Software Development Kit;
- Faça download do Windows Azure Training Kit, onde você encontrará muito conteúdo sobre o Azure como hands-on lab, demonstrações e apresentações.
- Para publicar o seu projeto no Azure você precisa de um token de acesso. Caso você não tenha, se inscreva no Microsoft Connect.
Se tiver mais dúvidas de como começar com o Windows Azure o ponto inicial é o Centro de Desenvolvimento da Plataforma Azure do MSDN Brasil.
Bons códigos e até o próximo post!