Este documento fornece um resumo sobre o SQL Azure Database. Ele discute brevemente a arquitetura do Windows Azure, os recursos do SQL Azure Database e modelos como provisionamento, compatibilidade, segurança, conexão e administração.
1. Uma introdução sobre o SQL
Azure Database
Waldemir Cambiucci
Arquiteto de Soluções twitter.com/wcamb
Microsoft Brasil blogs.msdn.com/wcamb
1
2. Objetivos da Sessão
Por que computação na nuvem?
Arquitetura do Windows Azure
A plataforma de serviços do Windows
Azure
Recursos do SQL Azure Database
Resumo
2
4. Desafios das Empresas Hoje
1 Custos da infra-estrutura são fixos
ou crescentes, distraindo a TI de
sua missão de reduzir problemas e
5 Manter a segurança ao mesmo
tempo que aumentando o acesso e
a transparência dentro e fora da
melhor adequar a TI com os organização.
processos de negócio.
Segurança, acesso e transparência
2 Alavancar investimentos passados
para prover valor futuro.
6 através da cadeia de valor:
provedores, parceiros, etc.
3 Muitos data centers funcionando
no limite. 7 Falta de platforma comum.
4 Adequar a capacidade à demanda.
4
6. O que é a nuvem?
Datacenters com alta disponibilidade, computação
escalar e armazenamento, acessíveis via Web.
6
7. Benefícios do Cloud Computing
PAGA PELO QUE USA! COMPARTILHA OS CUSTOS DE MELHORA O TIME-TO-MARKET
MENOS INVESTIMENTOS INFRA-ESTRUTURA COM PARA NOVAS APLICAÇÕES,
INICIAIS GANHOS DEVIDO A ECONOMIA SERVIÇOS E SOLUÇÕES
DE ESCALA
ESCALAR RECURSOS QUANDO
NECESSARIO – PLANEJADO OU NÃO
PLANEJADO
7
8. Simplificando o Cloud Computing
BENEFÍCIOS
FLEXIBILIDADE: Serviços hospedados na
nuvem integrados com os aplicativos on-
COMPUTAÇÃO ESCALÁVEL premises
ARMAZENAMENTO SEGURO AGILIDADE: Responder rapidamente ao
mercado com a integração de software e
serviços.
GERÊNCIA DES SERVIÇOS
EFICIÊNCIA: Adicionar e remover
AZURE SERVICES INTEGRAÇÃO capacidades por demanda, pagando só
DA PLATAFORMA pelo que usa.
FOCO: Investir na entrega de valor e
serviços e não na gerência da infra-
estrutura.
8
9. Cloud Computing
Modelo em camadas
PaaS
Platform as a Service
9
12. Arquitetura do Windows Azure
Fabric
Fabric controller
Compute Storage
Controle da Malha de
Servidores
12
13. Capacidades do Windows Azure
Gerência de Serviços realizada pelo Fabric
Controller, o coração do Windows Azure
Services Management. O Fabric Controller é o
responsável pelo balanceamento e a
escalabilidade da aplicação. Adicionalmente, as
capacidades computacionais virtualizadas são
definidas e controladas aqui.
Segurança e Controle com a
criptografia do conteúdo armazenado,
a autenticação do acesso e a
criptografia do dado na rede, seus
Computação Virtualizada Storage Services permite que dados e aplicativos ficam seguros. A
provê a escalabilidade os usuários escalem o Microsoft tem os certificados da
massiva da aplicação. Os armazenamento para qualquer Indústria no seu roadmap e procura
usuários podem construir quantidade de dados – em também certificações relativas a
uma combinação de papéis qualquer formato – pelo tempo compliance, como o SAS 70.
web e worker, e estes necessário, pagando apenas
Estado-da-arte em data centers
podem ser replicados para pelo que for usado.
localizados ao redor do mundo– ou no
aumentar a escalabilidade Tipos de dados: Queues, Tables
seu site – hospede seus aplicativos e
do aplicativo. e Blobs.
dados de modo seguro, no lugar que
você desejar, acessível de qualquer
lugar que você permitir.
13
14. A plataforma de serviços do
Windows Azure
Capacidades e serviços online para aplicações
on-premise e off-premise.
14
15. Plataforma de Serviços Azure
Computação:
Ambiente de computação virtualizado
baseado em Windows Server
Armazenamento:
Durável, escalável e disponível (blobs,
queues, tables)
Base de Dados:
Processamento relacional para dados
persistidos na nuvem.
Service Bus:
Barramento de aplicações de propósito
geral
Access Control:
Rules-driven, claims-based access control
15
16. Capacidades do SQL Azure
Modelo de Programação Simétrico Hub de Agregação de Dados
Hoje:
Suporte ao modelo de dados relacional (T-SQL) a partir do
CTP 1 (Agosto).
No futuro:
Capacidades de BI, DSS, DW, Reporting, etc.
Novos serviços como Reference Data, Secure Data Hub, etc.
16
17. Cenários de aplicação do SAD
Arquivamento de conteúdo
Limitações correntes Conteúdo
Alocação de repositórios News
feeds
caros e capacidade de I/O Upload
para pequenos volumes de dados. conteúdo
Alto risco para servidores locais.
Benefícios do SAD Dados com
Armazenamento mais barato. mais de
Dados
30 dias
correntes
Baixo risco com
recuperação e
distribuição geográfica.
SQL Azure
Database Large disk
arrays
17
18. Cenários de aplicação do SAD
Compartilhamento de dados B2B
Limitações Relatórios
Consumidor Dados
Dificuldade para se obter
acesso a dados Dados Real-time
Resultados
Velocidade no acesso aos
SQL Azure
dados finais Database
Benefícios com SSDS Comparti Dados Real-time
lhamento
Facilidade para compartilhar Resultados finais
dados em tempo real
Contratante
Transferência de dados B2B
18
19. Cenários de aplicação do SAD
Soluções LOB SaaS na nuvem
Limitações correntes
Alocação de repositórios Consumidor
caros e capacidade de I/O.
Acesso a
Alto risco para servidores locais. dados locais
Acesso a
Benefícios do SAD dados na Banco de dados
nuvem on-premise
Suporte a T-SQL e TDS via
ADO.NET, ODBC, etc.
Armazenamento mais barato.
Baixo risco com
recuperação e distribuição. SQL Azure
Database
Facilidade de construção de um
19 modelo multi-inquilino.
20. Recursos do SQL Azure
Database
Atualizações do
SQL Azure Database October CTP (CTP 2)
20
21. Principais questões sobre o SAD
Modelo de Provisionamento
Modelo de Compatibilidade
Modelo de Segurança
Modelo de Conexão
Modelo de Administração
Modelo de Replicação
Modelo de Sharding/Particionamento
Modelo de Migração
Modelo de Subscrição
21
22. Modelo de Provisionamento
Azure Services
Platform Account
myAzureAccount
servername.ctp.database.windows.net
SQL Azure Server
SQL Azure Server
SQL Azure Server
myDatabase
SQL Azure Server
SQL Azure Server
Bancos de Dados
22
23. Modelo de Provisionamento
Cada account tem zero ou mais servers
Account Integração Azure, provisionado através de um
portal
Instrumento para Billing
Cada server tem 1 ou mais bancos de dados
Server Contém metadata sobre base de dados e uso
Unidade de autenticação e Geo-localização
Geração de nome baseado em DNS
Database Cada database tem objetos SQL padrão
Unidade de consistência e multi-tenancy
Contém Users, Tables, Views, Indices, etc.
Limitação de 1G ou 10 GB por base de dados
Maior unidade em granularidade para billing
23
28. Modelo de Provisionamento
O novo CTP 2 de Outubro para o SQL Azure
Database foi liberado, contemplando o
conjunto completo de funcionalidades para o
PDC 2009
As bases criadas para o CTP1 de Agosto
continuam disponíveis no link:
https://ctpportal.database.windows.net
28
29. Modelo de Provisionamento e Portal
CPT 1 Agosto 2009
As bases geradas no
CTP1 continuam
disponíveis para testes.
https://ctpportal.database.windows.net
29
30. CTP 2 Outubro 2009 – SQL Azure Database
Suporte a Firewall
Definição de IP cliente para consumo do serviço
Suporte para Bulk Insert e SqlBulkCopy (ADO.NET)
Para carga de grandes volumes de dados no serviço.
Seleção da edição da base de dados
CREATE DATABASE foo (MAXSIZE = 1GB) - Web Edition
CREATE DATABASE foo (MAXSIZE = 10GB) - Business Edition
Atualizações gerais
SQL Azure Server Properties e SQL Azure Error Messages
Atualizações no portal de administração do SQL Azure
Criação de bases, visualização de tamanhos, firewall
support, entre outras novidades.
30
31. Modelo de Compatibilidade
Dentro do escopo v1 Fora do escopo v1
Tables, indexes e views Distributed Transactions
Stored Procedures Distributed Query
Triggers CLR
Constraints Service Broker
Constantes Spatial
Table variables, Physical server or catalog
session temp tables (#t) DDL and views
… System tables
Trace Flags
Try SQL Azure Database CTP Today (August, 2009)
Ref.: http://blogs.msdn.com/ssds/archive/2009/08/18/9874133.aspx
31
32. Modelo de Segurança
Suporta o padrão SQL Server Authentication
O usuário deve fornecer Username + Password para
toda conexão com o SQL Azure.
Suporta a configuração de uma lista de IP’s que
podem acessar o servidor do SQL Azure Database
O SQL Azure está acessível apenas através da porta
TCP 1433.
Primeiro, faça a configuração da lista de Ips clientes
para o firewall, através do portal de administração
do SQL Azure.
32
33. Modelo de
Conexão
Provedores suportados
para aplicações clientes:
.NET Framework Data
Provider for SQL Server
(System.Data.SqlClient)
do .NET 3.5 SP 1
SQL2008 Native Client
ODBC driver.
SQL2008 Driver for PHP
version 1.1.
TDS (tabular data stream)
v7.3 ou superior.
OLE DB não é
suportado!
33
36. Modelo de administração via sqlcmd.exe
Criando uma base de dados a partir da master
sqlcmd -S “b64kyk7bd.ctp.database.windows.net”
-U “MyUser@b64kyk7bd”
-P “MyPassword”
-d “master“
Criando tabelas para a base recém criada
sqlcmd -S “b64kyk7bd.ctp.database.windows.net”
-U “MyUser@b64kyk7bd”
-P “MyPassword”
-d “TechEdBrasil“
36
37. Modelo de administração via sqlcmd.exe
Criando tabelas para a base recém criada
sqlcmd -S “b64kyk7bnd.ctp.database.windows.net”
-U “MyUser@b64kyk7bnd”
-P “MyPassword”
-d “TechEdBrasil“
-i “~/MyDatabaseScript.sql”
Utilize a opção –i para indicar o script
de criação da base de dados no
SQL Azure Database
37
38. Exemplo de administração via sqlcmd.exe
Criando uma base de dados
C:>sqlcmd -U <ProvideLogin@Server>
-P <ProvidePassword>
-S <ProvideServerName>
-d master
1> CREATE DATABASE <ProvideDatabaseName>;
2> GO
3> QUIT
Tutorial: sqlcmd Utility
http://msdn.microsoft.com/en-us/library/ms170207.aspx
38
39. Exemplo de administração via sqlcmd.exe
Criando uma tabela
C:>sqlcmd -U <ProvideLogin@Server>
-P <ProvidePassword>
-S <ProvideServerName>
-d <ProvideDatabaseName>
1> CREATE TABLE table1 (Col1 int primary key,
Col2 varchar(20));
2> GO
3> QUIT
Tutorial: sqlcmd Utility
http://msdn.microsoft.com/en-us/library/ms170207.aspx
39
40. Modelo de administração via SSMS 2008
Hands-On Lab : Introduction to SQL Azure
C:Azure Training Kit - CTP October
2009LabsIntroToSQLAzure SQL Server
Management
Studio
40
41. Modelo de administração via
SQL Azure Explorer
Ferramenta de administração de objetos do SQL sobre
o SQL Azure Database, a partir do Visual Studio 2010
http://sqlazureexplorer.codeplex.com/
41
42. Modelo de Replicação
Tratado internamente pelo serviço SQL Azure
Database.
Replica 1
Replica 2
DB
Replica 3
42
43. Modelo de Sharding / Particionamento
1 x 10GB databases
1 Instância
10 x 1GB databases
10 Instâncias
Um database para cada
subconjunto de dados:
Scaling Out SQL Azure with Database
Sharding (Training Kit Out/2009)
C:Azure Training Kit - CTP October
2009Demos
SQLAzureScalingOutWithDbSharding
43
44. Modelo de Migração
Hands-on Lab do training kit de outubro:
Hands-On Lab - Migrating Databases to SQL Azure
C:Azure Training Kit - CTP October 2009Labs
MigratingDatabasesToSQLAzure
44
45. Modelo de Migração
SQL Azure Migration Wizard v1.4
O SQLAzureMW é uma ferramenta para ajudar o DBA
na migração de bases SQL Server 2005/2008 para o
SQL Azure.
http://sqlazuremw.codeplex.com/
45
46. Modelo de Subscrição
http://www.microsoft.com/azure/pricing.mspx
Valores já
publicados para
o SQL Azure
46
48. Quando usar o Azure?
[Blog do Otávio] Quando usar o Azure?
http://blogs.msdn.com/otavio/archive/2009/10/21/quando-usar-o-azure.aspx
48
49. Resumo
Conferir o Azure Training Kit de Outubro de 2009.
Conferir os laboratórios e exercícios sobre migração e
particionamento sobre o SQL Azure Database.
Conferir as novidades do CTP2 de Outubro de 2009
para o SQL Azure Database.
Avaliar seu cenário de aplicação on-premise, antes da
migração para a nuvem.
Conferir o SQL Azure Migration Wizard v1.4
Trabalhar em seu banco de dados local, antes da migração
para a nuvem.
49
50. Recursos
Windows Azure Tools for Microsoft Visual Studio (July 2009 CTP)
http://www.microsoft.com/downloads/details.aspx?FamilyID=8d75d4f7-
77a4-4adf-bce8-1b10608574bb&displaylang=en
Windows Azure Software Development Kit (July 2009 CTP)
http://www.microsoft.com/downloads/details.aspx?familyid=AA40F3E2-
AFC5-484D-B4E9-6A5227E73590&displaylang=en
Windows Azure Platform Training Kit – October Update
http://www.microsoft.com/downloads/details.aspx?FamilyID=413E88F8-
5966-4A83-B309-53B7B77EDF78&displaylang=en
SQL Azure Database CTP – October Update
http://blogs.msdn.com/ssds/archive/2009/10/14/9907238.aspx
SQL Azure Migration Wizard v1.4
http://sqlazuremw.codeplex.com/
50
51. Recursos (cont.)
Artigo: Uma introdução ao SQL Azure Database – Um
banco relacional na nuvem
http://msdn.microsoft.com/pt-br/library/ee620562.aspx
Blog: TAG [SQL Azure Database]
http://blogs.msdn.com/wcamb/archive/tags/SQL+Azure+Dat
abase/default.aspx
Azure Services Br - Windows Azure (Lucas A. Romão)
http://azureservicesbr.ning.com/group/windowsazureb
Azure Services Br - SQL Azure Database
http://azureservicesbr.ning.com/group/microsoftsqldataserv
ices
51
52. Recursos (cont.)
ArqBR.Groups
http://arqbr.groups.live.com/
ArqCasts no Channel9/Brasil
http://channel9.msdn.com/brasil/
ebook Arquitetura de Soluções
http://blogs.msdn.com/wcamb/archive/2009/10/01/ebook-
sobre-arquitetura-de-solu-es.aspx
Centro de Arquitetura MSDN
http://msdn.microsoft.com/pt-br/architecture/default.aspx
52