Uma introdução sobre o SQL Azure...

40
1 Uma introdução sobre o SQL Azure Database Waldemir Cambiucci Arquiteto de Soluções Microsoft Brasil twitter.com/wcamb blogs.msdn.com/wcamb

Transcript of Uma introdução sobre o SQL Azure...

Page 1: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

1

Uma introdução sobre o SQL Azure Database

Waldemir CambiucciArquiteto de SoluçõesMicrosoft Brasil

twitter.com/wcambblogs.msdn.com/wcamb

Page 2: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

2

Agenda

O que é o SQL Azure Database (SAD)?

Modelo de acesso do SAD

Arquitetura e capacidades do SAD

Modelo de conexão do SAD

Conclusões

Recurdos

Publicação: Outubro/2009

Page 3: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

3

Objetivos da Sessão

Conhecer o novo SQL Azure e seus recursos.

Entender o modelo de serviço do SQL Azure Database e sua arquitetura.

Page 4: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

4

O SAD é um serviço da plataforma Azure Services Platform, que está fisicamente nos Datacenters da Microsoft pelo mundo.

O que é SQL Azure Database?

Page 5: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

5

O que o SAD elimina?

Compra de repositórios para seu datacenter

Configuração física e lógica de repositórios

Dimensionamento de servidores

Instalação e atualização de software de bancos de dados

Diagnóstico e resolução de falhas de hardware

Permite que a empresa tenha foco no negócio.

Page 6: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

6

Cenários de aplicação do SADArquivamento de conteúdo sindicalizado

Limitações correntes

Alocação de repositórios caros e capacidade de I/O para pequenos volumes de dados.

Alto risco para servidores locais.

Benefícios do SAD

Armazenamento mais barato.

Baixo risco com recuperação e distribuição geográfica.

SQL AzureDatabase

Upload conteúdo

Dados com mais de 30 dias

News feeds

Dados correntes

Large disk arrays

Conteúdo

Page 7: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

7

Cenários de aplicação do SADCompartilhamento de dados B2B

Limitações

Dificuldade para se obter acesso a dados

Velocidade no acesso aos dados finais

Benefícios com SSDS

Facilidade para compartilhar dados em tempo real

Transferência de dados B2B

Consumidor Dados

Contratante

Dados Real-timeResultados

Compartilhamento

Dados Real-time Resultados finais

Relatórios

SQL AzureDatabase

Page 8: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

8

Cenários de aplicação do SADAplicações corporativas com dados relacional

Limitações correntes

Alocação de repositórios caros e capacidade de I/O.

Alto risco para servidores locais.

Benefícios do SAD

Suporte a T-SQL e TDS via ADO.NET, ODBC, etc.

Armazenamento mais barato.

Baixo risco com recuperação e distribuição.

Consumidor

Banco de dados on-premise

Acesso a dados locais

SQL AzureDatabase

Acesso a dados na nuvem

Page 9: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

9

Cenários para bases de dadosR

ecu

rso

s

Dedicado

Compartilhado

Baixo AltoFriction/Control

SQL Azure Database

Proposta de Valor:

Proposta de Valor:

HA/DR/scale

HostedHosted SQL Server

Resource governance @ VM

Security @ DB Server/OS

On-premiseSQL Server ou outro Software on-premise

Resource governance @ machine

Security @ DB Server/OS

Proposta de Valor:

O SQL Azure Database endereça os principais cenários para dados na nuvem

Page 10: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

10

Plataforma de Serviços AzureComputação:

Ambiente de computação virtualizadobaseado em Windows Server

Armazenamento:Durável, escalável e disponível

Base de Dados: Processamento relacional para dados estruturados/não-estruturados

Service Bus: Barramento de aplicações de propósitogeral

Access Control: Rules-driven, claims-based access control

Page 11: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

11

Capacidades do SQL Azure

Modelo de Programação Simétrico

Capacidades de dados através do SQL Azure Database (SAD) e sincronização de dados

Suporte ao modelo de dados relacional

Ofertas futurasCapacidades de BI, DSS, DW, Reporting, etc.

Novos serviços como Reference Data, Secure Data Hub, etc.

Hub de Agregação de Dados

Page 12: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

12

O novo SQL Azure Database

Modelo relacional já conhecido do SQL Server

Suporte ao Transact-SQL (T-SQL)

Utiliza as APIs e ferramentas existentes

Provisionamento facilitado e gerenciamento reduzido

Construído para a nuvem com disponibilidade e escala

Feedback claro: “Eu quero um banco SQL na nuvem”

Foco em combinar as melhores capacidades do SQL Server num ambiente de alta escala na nuvem

Page 13: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

13

Cenários de utilização do SQL Azure

Aplicações locaisacessando via ADO.NET, ODBC ou PHP

Aplicações Web acessando via ADO.NET Data Services, Silverlight, .NET RiaServices, etc.

Suporte aos protocolos:TDS+SSL, HTTP, HTTPS

Page 14: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

14

Arquitetura do SQL Azure

Client LayerPHP, SQL Server Application and Tools, ADO.NET Data Services

Services Layer Provisioning

Billing and Metering

Connection Routing

Platform LayerSQL Server

SQL Azure Fabric

Management Services

Page 15: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

15

SQL Azure ServerSQL Azure Server

Modelo de Provisionamento do Serviço

Azure Services Platform Account

SQL Azure Server

SQL Azure ServerSQL Azure ServerBancos de Dados

servername.ctp.database.windows.net

myDatabase

myAzureAccount

Page 16: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

16

Modelo de Provisionamento do Serviço

Cada account tem zero ou mais serversIntegração Azure, provisionado através de um portal

Instrumento para Billing

Cada server tem 1 ou mais bancos de dadosContém metadata sobre base de dados e uso

Unidade de autenticação e Geo-localização

Geração de nome baseado em DNS

Cada database tem objetos SQL padrãoUnidade de consistência e multi-tenancy

Contém Users, Tables, Views, Indices, etc.

Maior unidade em granularidade para billing

Account

Server

Database

Page 17: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

17

Compatibilidade SQL

Tables, indexes e views

Stored Procedures

Triggers

Constraints

Constantes

Table variables, session temp tables (#t)

Dentro do escopo v1 Fora do escopo v1

Distributed Transactions

Distributed Query

CLR

Service Broker

Spatial

Physical server or catalog DDL and views

System tables

Trace Flags

Page 18: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

18

SQL Azure: https://sql.azure.com/

Page 19: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

19

SQL Azure: https://sql.azure.com/

Page 20: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

20

Sharing Databases

1 x 10GB database

1 Instância

10 x 1GB databases

10 Instâncias

Page 21: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

21

Administração Lógica vs. Física

O SQL Azure Database foca na administração lógica

Criação de schemas e gerenciamento

Otimização de consultas

Gerenciamento de segurança (Logins, Users, Roles)

O serviço trata o gerenciamento físico

Replicação automática com HA (High Availability)

Balanceamento de carga para garantir o SLA (Service Level Agreement)

O DBA coloca mais foco no gerenciamento lógico.

Page 22: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

22

Modelo de Deployment

Suporte para opções básicas de deploymentSQL scripts e Geo-location de Windows Azure para as bases SAD – SQL Azure Database

Suporte para aplicações e modelo de gerenciamentomulti-servidor

Nuvem ou “on-premise” é uma escolha em tempo de deployment

Mesma visibilidade de dados através da nuvem e do “on-premise”

Suporta novas e atuais formas de deployment

Page 23: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

23

Modelo de Segurança

Suporta o padrão SQL Server AuthenticationO usuário deve fornecer Username + Password para todaconexão com o SQL Azure.

Autorização de usuários e papéis para objetvos SQL

No futuro, suporte para AD Federation(“Geneva”), LiveID, etc. assim como protocolos de autenticaçãoalternativos.

Modelo de Segurança é 100% compatível com o SQL on-premise

Page 24: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

24

Modelo de Conexão

Utiliza bibliotecas clientes existentesADO.NET, ODBC, PHP

Clientes conectam diretamente para o banco de dados

Não pode chavear entre bancos (sem “USE”)

Conexão via sqlcmd.exe e ADO.NET.SQL Server Management Studio não é suportadopor enquanto na versão v1.0.

Mas já é possível usá-lo em alguns cenários.

Page 25: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

25

Conectando ao SQL Azure via sqlcmd.exe

Opções do sqlcmd.exe

Page 26: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

26

Acesso via sqlcmdCriando 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 Utilityhttp://msdn.microsoft.com/en-us/library/ms170207.aspx

Page 27: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

27

Acesso via sqlcmdCriando 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> GO3> QUIT

Tutorial: sqlcmd Utilityhttp://msdn.microsoft.com/en-us/library/ms170207.aspx

Page 28: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

28

Exemplo de conexão via sqlcmd

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“

Page 29: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

29

Exemplo de conexão via sqlcmd

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

Page 30: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

30

Administrando via SSMSSQL Server Management Studio

Azure Training Kit de Agosto / 2009C:\AzureServicesKit_August2009\Labs\IntroToSQLAzure

Page 31: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

31

Conexão via ADO.NET

Uma aplicação se conecta ao SQL Azure Database da mesma forma que se conecta com um SQL Server local.

Utilize SqlConnectionStringBuilder class

Proteja sua ConnectionString

Connecting to SQL Azure Using ADO.NET http://msdn.microsoft.com/en-us/library/ee336243.aspx

Page 32: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

32

Acesso via ADO.NETCriando base de dados e tabelas

Page 33: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

33

Acesso via ADO.NETCriando base de dados e tabelas

Page 34: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

34

Limitações de conexão durante o CTP

As conexões com o serviço SQL Azure Database serão derrubadas quando:

Uso excessivo de recursos

Long-running queries / Consultas de longa duração

Long-running single transactions, entre as declarações “BEGIN TRAN” e “END TRAN”

Idle connections / Conexões osciosas

Page 35: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

35

Pricing & Licensing http://www.microsoft.com/azure/pricing.mspx

Valores já publicados para

o SQL Azure

Page 36: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

36

Page 37: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

37

Conclusões

O SQL Azure Database (SAD) oferece um banco de dados relacional na nuvem, pronto para uso.

Lançamento comercial previsto para o PDC 2009

Aplicações corporativas consomem o SAD da mesmaforma que consomem bancos locais.

Uma arquitetura Software + Serviços envolve a combinação do mundo “cloud” com o mundo“on-premise”, também para os dados.

Page 38: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

38

Recursos

Posts sobre Azure Services Platform

http://blogs.msdn.com/wcamb/archive/tags/Azure+Services+Platform/

Posts sobre SQL Azure Database

http://blogs.msdn.com/wcamb/archive/tags/SQL+Data+Services/

SQL Azure Team Blog

http://blogs.msdn.com/ssds/

SQL Azure Database Labs

http://www.microsoft.com/azure/sqllabs.mspx

SQL Azure MSDN

http://msdn.microsoft.com/en-us/library/ee336279.aspx

Page 39: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

39

Recursos (cont.)

ArqBR.Groupshttp://arqbr.groups.live.com/

ArqCasts no Channel9/Brasilhttp://channel9.msdn.com/brasil/

ebook Arquitetura de Soluçõeshttp://blogs.msdn.com/wcamb/archive/2009/10/01/ebook-sobre-arquitetura-de-solu-es.aspx

Centro de Arquitetura MSDNhttp://msdn.microsoft.com/pt-br/architecture/default.aspx

Page 40: Uma introdução sobre o SQL Azure Databasedownload.microsoft.com/download/8/2/8/828313A8-585E-4BD0... · 2018-10-15 · dados na nuvem. 9 Cenários para bases de dados s Dedicado

40

© 2008 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.