Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

32
Padrões de Aplicações para Azure SQL Database berto Fonseca T, MCSE Data Platform | MVP Data Platform oberto_mct [email protected]

Transcript of Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Page 1: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Padrões de Aplicações para Azure SQL Database

Roberto FonsecaMCT, MCSE Data Platform | MVP Data Platform@[email protected]

Page 2: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

PATROCINADORES

Page 3: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

O que é Cloud Computing?

Page 4: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

O que é Cloud Computing?

Uso de:- Memória- Armazenamento - Poder de processamento

Como?- Servidores compartilhados- Internet- Serviços!

Page 5: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Serviços

Page 6: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Cloud ServicesInfrastructure

IaaSOn

PremissesOn Prem

Aplicações

Dados

Execução

SOVirtualizaçã

oHardware

Storage

Rede/Links

PlatformPaaS

Aplicações

Dados

Execução

SO

Virtualização

Hardware

Storage

Rede/Links

SoftwareSaaS

Aplicações

Dados

Execução

SO

Virtualização

Hardware

Storage

Rede/Links

Você Gerencia

Parceiro Gerencia

Aplicações

Dados

Execução

SO

Virtualização

Hardware

Storage

Rede/Links

Page 7: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Pizza As A Service

Page 8: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Pizza As A ServiceInfrastructure

IaaS

Mesa

Bebidas

Forno

Fogo/Gás

Massa

Molho

Recheios

Queijo

On Premisses

On PremMesa

Bebidas

Forno

Fogo/Gás

Massa

Molho

Recheios

Queijo

PlatformPaaS

Mesa

Bebidas

Forno

Fogo/Gás

Massa

Molho

Recheios

Queijo

SoftwareSaaS

Mesa

Bebidas

Forno

Fogo/Gás

Massa

Molho

Recheios

Queijo

Feito em Casa Congelada Delivery Jantar Fora

Você Gerencia

Parceiro Gerencia

Page 9: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Cloud ServicesInfrastructure

IaaSOn

PremissesOn Prem

Aplicações

Dados

Execução

SOVirtualizaçã

oHardware

Storage

Rede/Links

PlatformPaaS

Aplicações

Dados

Execução

SO

Virtualização

Hardware

Storage

Rede/Links

SoftwareSaaS

Aplicações

Dados

Execução

SO

Virtualização

Hardware

Storage

Rede/Links

Você Gerencia

Parceiro Gerencia

Aplicações

Dados

Execução

SO

Virtualização

Hardware

Storage

Rede/Links

Page 10: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Opções para dados relacionais na nuvem

Page 11: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

- Cloud-first mas não Cloud-only- Usando Azure SQL Database para utilizar o melhor das funcionalidades

Como desenvolver para a nuvem

Page 12: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Usando a nuvem para obter o máximo de benefícios

Page 13: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Usando a nuvem para obter o máximo de benefícios

Azure é muito mais do que um servidor

Page 14: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database
Page 15: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Presença Global

Page 16: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Qual é o meio mais fácil de migrar?

Mover

• Migração sem alterações

• Redução de custo de infraestrutura (Capex)

• Mover aplicações não certificadas/testadas para a nuvem

• Gerenciado e controlado internamente

• Controle de SO e instâncias do SQL

Remodelar

• Modernização de aplicações

• Redução de custo, redução de gerenciamento de infraestrutura (Opex)

• Exige desenvolvimento

• Gerenciado e controlado internamente

Build for cloud

• Novos desenvolvimentos

• Grande escala• Permite iniciar com

poucos recursos e ampliar conforme o crescimento

• Mudança de conceitos (DevOps)

• Crescimento Imprevisível

Page 17: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Azure SQL Database

• Serviço de banco de dados totalmente gerenciado • Permite manter o foco na aplicações e no banco de

dados e não na infraestrutura

• Performance para grandes empresas• Elastic database pools para cargas de

dados imprevisíveis• SLA de 99,99%• Geo-replicação para proteção de dados• Seguro e compliant para proteção de

dados sensíveis• V12 compatível com SQL Server 2016

Page 18: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Escalável

• Bases de dados isoladas em recursos isolados• Performance baseada em camadas (Basic, Standard

e Premium) para melhores níveis de performance• Aumento e redução de recursos em resposta a

mudanças previstas na carga de trabalho• Bases de dados sempre online (mesmo durante

operações de aumento e redução de recursos• Pago por hora

5 10

20

50

100

250

1750

DTUs

BS0

S1

S2

S3

P2

P11

P1

125

P4

500

P6

1000

Page 19: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Elastic Database Pool• Compatilhamento de recursos dinamicamente entre databases no mesmo

conjunto de recursos dedicados• Gerenciado pelo cliente para cargas de dados imprevisíveis e esporádicas• Sem custo “per Database”• Permite centenas de DBs por pool

https://weblogs.asp.net/scottgu/better-density-and-lower-prices-for-azure-s-sql-elastic-database-pools

Page 20: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Modelos de camada de dados utilizados por clientes

Aplicações usando um único DB

Aplicações com dados

particionados entre vários DBs

SaaS com único DB multi-inquilino

SaaS com muitos DBs

multi-inquilino

Page 21: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Elementos críticos que contribuem para a decisão da camada de dados

Modelo de Aplicações

Propriedade dos dados

Escalabilidade

Modelo do negócio

Requisitos técnicos de

sizing e throughput

Page 22: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Propriedade dos Dados

Dados da CompanhiaDados dos Clientes

Use múltiplos DBs quando os requisitos exigirem mais de um DB.

Apenas Gerencia Dados dos Clientes

Use um DB por cliente para gerenciar o isolamento dos dados

Page 23: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Escalabilidade

SaaS servindo dados com potencial de milhares de

clientes

Use um DB por cliente com elastic pool para balanceamento de recursos.

SaaS servindo dados com potencial de milhões de

clientes

Use bases multi-inquilino para pequenos clientes e balanceamento de dados

Page 24: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Modelo de Negócio

Aplicações de alto valor Use elastic pool com premium DBs

Aplicações de baixo valor

Elastic pool de alta densidade e DBs de multi-inquilino para melhor custo-benefício

Page 25: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Requisitos Técnicos de Sizing e Throughput

Aplicações adequadas para um único DB

Use SaaS com Single DB por cliente

Aplicações para múltiplos DBsUse vários DBs com particionamento (Sharding)

Page 26: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Lição de Casa• Propriedade dos dados pode ser um

fator complicador para a escolha do modelo

• Multi-inquilino é difícil, depende do desenvolvimento da aplicação e muitos clientes não utilizam

• Elastic pool é uma grande chance de atingir objetivos de modelos de negócio complexos

Atingir objetivos de performanceManter os custos sob controle

• Use premium DBs para o maior nível de performance e isolação para uma aplicação

Page 27: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Leia sobre:

azure.com Azureaka.ms/azuretour Azure Touraka.ms/sqldb Azure SQL Databaseaka.ms/findsearch Azure Searchaka.ms/documentdb Azure DocumentDBaka.ms/intelligentapps Azure HDInsight

Page 28: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Lição de Casa

• Azure SQL Database

Page 29: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Dúvidas?!

Page 30: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database
Page 31: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

PATROCINADORES

Page 32: Sql saturday #570 - Padrões de Aplicações para o Azure SQL Database

Precisando de Emprego?

[email protected]