SlideShare una empresa de Scribd logo
1 de 57
SQL Server em
Máquinas Virtuais
do Windows Azure
Vítor Tomaz
2
Vítor Tomaz
@vitortomaz
vitor.tomaz@safira.pt
Software Engineer
Comunidades
3
Agenda
 Porquê Windows Azure
 Máquinas Virtuais Windows Azure
 Requisitos do SQL Server
 Melhores Práticas
 Monitorização
Porquê Windows Azure?
Cloud Computing
Escalabilidade
Elasticidade
Baixo Investimento Inicial
Pago o que Uso
Não há (demasiados) recursos desperdiçados
Escalabilidade
Custos
Cloud Computing
Automação em Windows Azure
Recursos
necessários
Agent
Switches
Load-balancers
Fabric
Controller
Agent
Agent
Faz
acontecer
Windows Azure
Windows Azure é um SO para o datacenter
 Modelo: Trata o datacenter como uma única máquina
 Trata a gestão dos recursos, aprovisionamento e monitorização
 Gere o ciclo de vida das aplicações
 Permite aos programadores concentrarem-se na lógica de negócio
Fornece serviços para aplicações distribuídas
 Filas de mensagens, armazenamento estruturado, armazenamento
relacional
 Serviços de controlo de acesso e conectividade
Windows Azure – Escala Global
South Central US
West US East US
Windows Azure Virtual Machines
Máquinas Virtuais Windows Azure
Discos Persistentes e Durabilidade
Discos Persistentes e Durabilidade
Terminologia em Máquina Virtuais
• Virtual Networks
• Local Networks
• DNS Servers
• Access Keys
• Containers
• Images
• Disks
18
Cloud Services (Serviços de Núvem)
Tamanhos e Discos
Virtual Machine
Size
CPU Cores Memory
Maximum data
disks (each up to
1 TB)
Maximum
IOPS
ExtraSmall Shared 768 MB 1 1 x 500
Small 1 1.75 GB 2 2 x 500
Medium 2 3.5 GB 4 4 x 500
Large 4 7 GB 8 8 x 500
ExtraLarge 8 14 GB 16 16 x 500
A5 2 14GB 4 4 x 500
A6 4 28 GB 8 8 x 500
A7 8 56 GB 16 16 x 500
20
Imagens
Imagens com SQL Server
Imagens com Windows Server
Criar a nossa própria imagem
 Construída na Cloud
 Construída On-Prem
Imagens
Escolhida da Galeria de Imagens
Imagens
A partir do nosso VHD
Service Level Agreement
SLA para SQL Server
Sem SLA SLA 99.95%
Dentro de uma Máquina Virtual
Virtual Machine
C:
OS Disk
E:, F:, etc.
Data Disks
D:
Temp Disk
(Dynamic VHD)
RAM Cache
Local Disk
Cache
Disco do Sistema Operativo
Exemplo: arranque
Virtual Machine
C:
OS Disk
E:, F:, etc.
Data Disks
D:
Temp Disk
(Dynamic VHD)
RAM Cache
Local Disk
Cache
Disco Local Temporário
Contém page files do sistema operativo
Disco attached ao host físico
Disco físico, partilhado com outras VM
Apagado após falha ou recycling da VM
Virtual Machine
C:
OS Disk
E:, F:, etc.
Data Disks
D:
Temp Disk
(Dynamic VHD)
RAM Cache
Local Disk
Cache
Disco de Dados
Attached VHDs
Em Azure Storage
Para guardar dados
Até 1TB de tamanho
Até 16 discos em VMs XL
Virtual Machine
C:
OS Disk
E:, F:, etc.
Data Disks
D:
Temp Disk
(Dynamic VHD)
RAM Cache
Local Disk
Cache
Sistema de IO
Performance pode variar
- Host machines
- Network bandwidth
- Operações de manutenção
Cost vs control trade-off
3 cópias no mesmo datacenter
Geo-redundante
- Opcional
- 6 cópias
Storage Stamp
Stream Layer
Partition Layer
Front-ends
LB
Intra-stamp replication
Stream Layer
Partition Layer
Front-ends
LB
Intra-stamp replication
Storage Stamp
Geo-replication
Storage Location Service
VM disk caching
Reduz o número de transacções de storage
Cache na RAM da host machine
Cache no Disco da host machine
Tamanho da cache baseado no tamanho da máquina
Cache setting – read only
Cache setting – read write
Persistido para local cache primeiro se "write through“ não for especificado
Outras escritas (SQL Server) são persistidas directamente para storage
Cache setting - none
Atenção aos custos das transacções de storage
VM cache settings options
Disk type Read Only Read Write None (disabled)
OS disk Supported Default Not supported
Data disks Supported (up to 4) Supported (up to 4) Default
Temporary disk N/A
WA
Gateway
On-premises
Your datacenter
Hardware VPN or
Windows RRAS
Virtual Network
<subnet 1> <subnet 2> <subnet 3>
DNS
Server
Virtual Networks – Site-to-Site
On-premises
Your datacenter
Individual
computers behind
corporate firewall
Virtual Networks – Point-to-Site
Virtual Network
<subnet 1> <subnet 2> <subnet 3>
DNS
Server
Hardware VPN or
Windows RRAS
WA
Gateway
Requisitos do SQL Server
Requisitos do SQL Server
Cada vez mais
Latência
IOPs
Taxa de Transferência (Throughput)
As questões relacionadas com CPU e Memória
são semelhantes em Windows Azure
39
Requisitos de I/O – OLTP
Metric Requirements
Mix of reads vs writes Mostly reads
Nature of writes Mostly asynchronous
Average rows per I/O Low
I/O size 8 to 64 KB common
I/O pattern Mostly random
Concurrent users High
40
Requisitos de I/O – log files
Metric Requirements
Mix of reads vs writes Mostly writes
Nature of writes Mostly synchronous (low latency critical)
Average rows per I/O Low
I/O size 8 to 64 KB common
I/O pattern Mostly sequential
Melhores Práticas
42
Latência
Latência de Rede mais alta
 Virtualização, segurança, balanceamento de carga, proximidade
 Reduzir round trips pode ter grande impacto
Criar VMs no mesmo cloud service
 Permite comunicação através de endreços IP internos (DIPs)
 Usar Windows Azure Virtual Network para VMs em cloud services diferentes
 Fazer load balance de multiplas VMs no mesmo cloud service via endreço IP
público
Consolidar camadas “muito faladoras” na mesma
máquina
43
IOPs – Usar múltiplos discos
SQL Server Files and Filegroups
Apresenta a melhor performance
Windows Server 2012 Storage Spaces
No Windows Server 2012 R2 é ainda melhor
Striped Volumes
Windows Server 2008 (evitar se possível)
44
IOPs - Storage Account
Limites de escalabilidade de uma Azure Storage Account
20 000 IOPs por conta
Limites de escalabilidade de um blob (VHD)
60 MBytes/s por blob
É recomendável manter tudo numa única conta de Storage
É a unidade de recuperação em caso de falha
Não usar geo-replicação com vários discos
Não é garantida uma ordem escrita consistente em vários discos
Apenas disco do Sistema Operativo
BDs pequenas < 10GB
Read-write cache
tempdb
System databases
User databases
Um disco de dados
Perfomance aceitável
Pouca complexidade
Recuperação simples
Read-write cache
tempdb
User databases
Random I/O
(8KB Pages)
Sequential I/O
(64KB Extents)
Sequential I/O
(256KB Blocks)
Reads Writes Reads Writes Reads Writes
IOPS 500 500 500 300 300 300
Bandwidth 4 MB/s 4 MB/s 30 MB/s 20 MB/s 70 MB/s 70 MB/s
Vários discos de dados
Apresenta a melhor performance nos testes
Striping (avoid)
WS2012 storage spaces
Testes com vários discos
4 disks Random I/O (8KB Pages) Sequential I/O (64KB Extents) Sequential I/O (256KB Blocks)
Reads Writes Reads Writes Reads Writes
IOPS 2000 2000 2000 1300 700 1100
Bandwidth 20 MB/s 20 MB/s 120 MB/s 80 MB/s 170 MB/s 270 MB/s
16 disks Random I/O (8KB Pages) Sequential I/O (64KB Extents) Sequential I/O (256KB Blocks)
Reads Writes Reads Writes Reads Writes
IOPS 8000 8000 2500 5000 700 2400
Bandwidth 60 MB/s 60 MB/s 150 MB/s 300 MB/s 170 MB/s 600 MB/s
8 disks Random I/O (8KB Pages) Sequential I/O (64KB Extents) Sequential I/O (256KB Blocks)
Reads Writes Reads Writes Reads Writes
IOPS 4000 4000 2500 2600 700 2200
Bandwidth 30 MB/s 30 MB/s 150 MB/s 160 MB/s 170 MB/s 550 MB/s
tempdb
(Apesar de recomendações anteriores)
Discos de SO e dados apresentam a mesma ou melhor performance
Drive D é partilhada e pode ter uma performance variável
SQL Server precisa de criar a tempdb num restart
São necessárias permissões de administrador para criar pastas no disco D
Particularly number of files
tempDB IO best practices
50
Caching
OS Disk
“Read Write” (default)
• DBs (<=10GB)
• Reduz latência em IO intensivo
• Working set cabe na cache ou memória
Data disks
• DBs > 10GB
• Depende do IO
• Usar “None” (disable) para random IOs
(e.g. OLTP)
• Read cache para workloads com muitas
leituras e requisitos de latência baixa
51
Disk warm-up
Particionamento adaptativo e balanceado (ajusta à carga)
 As partições espalham-se se a carga aumentar
 Podem condensar-se se a carga diminuir
 As leituras são distribuídas pelas 3 réplicas
52
‹#›
Monitorização
Ferramentas de monitorização
psping
Traceroute (tracert)
SQL Server Management Studio (client statistics)
Process(SQLServ)% Processor Time (max and avg)
Processor(_Total)% Processor Time (max and avg)
SQLServer:SQL StatisticsBatch Requests/sec (max and avg)
Gráficos no Portal
VM Dashboard
Monitor tab for storage
Enabled under the Configure tab
Métricas de Windows Azure storage
analytics
Monitors BLOBs, tables and queues
Access via storage account namespace
https://<accountname>.table.core.windows.net/Tables("$MetricsTransactionsBlob")
Capacity: number of containers, BLOBs
Requests: number of requests, total ingress/egress, average end-to-end latency, server latency, total
failures
57
Conclusões
As principais diferenças estão nos discos e I/O
Optimizar para reduzir I/O e numero de pedidos
Identificar o melhor tamanho para as VMs
Usar Filegroups e vários discos para bases de dados grandes
Rever as decisões de optimização à medida que a carga muda
Começar por planear a VPN
Referências
Questões?
Obrigado

Más contenido relacionado

La actualidad más candente

Performance e disponibilidade ‐ Um estudo de caso: website dos Correios
Performance e disponibilidade ‐ Um estudo de caso: website dos CorreiosPerformance e disponibilidade ‐ Um estudo de caso: website dos Correios
Performance e disponibilidade ‐ Um estudo de caso: website dos CorreiosAlex Hübner
 
Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...
Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...
Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...Daniel Donda - MVP
 
PostgreSQL: Performance Tuning
PostgreSQL: Performance TuningPostgreSQL: Performance Tuning
PostgreSQL: Performance TuningFernando Ike
 
Virtualização com Hyper-V
Virtualização com Hyper-VVirtualização com Hyper-V
Virtualização com Hyper-VCDS
 
Alta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDAlta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDFrederico Madeira
 
Alta Disponibilidade em Linux com Heartbeat e Drbd
Alta Disponibilidade em Linux com Heartbeat e DrbdAlta Disponibilidade em Linux com Heartbeat e Drbd
Alta Disponibilidade em Linux com Heartbeat e DrbdFrederico Madeira
 
Tcvb2 diogo mendes_sistemas operativos servidor_v1
Tcvb2 diogo mendes_sistemas operativos servidor_v1Tcvb2 diogo mendes_sistemas operativos servidor_v1
Tcvb2 diogo mendes_sistemas operativos servidor_v1diogomendes99
 
planejamento pre-instalacao win server 2012
 planejamento pre-instalacao win server 2012 planejamento pre-instalacao win server 2012
planejamento pre-instalacao win server 2012Yan Ferrari Ferreira
 
Simulado traduzido 70 410
Simulado traduzido 70   410Simulado traduzido 70   410
Simulado traduzido 70 410dionilson lemos
 
Introdução ao Windows Server 2012
Introdução ao Windows Server 2012Introdução ao Windows Server 2012
Introdução ao Windows Server 2012Danilo Augusto Leite
 
Windows server 2012 e suas distribuições -SENAI Jandira
Windows server 2012 e suas distribuições  -SENAI JandiraWindows server 2012 e suas distribuições  -SENAI Jandira
Windows server 2012 e suas distribuições -SENAI JandiraJésus Lima
 
Windows server 2012 active directory e server manager fabio hara
Windows server 2012 active directory e server manager fabio haraWindows server 2012 active directory e server manager fabio hara
Windows server 2012 active directory e server manager fabio haraFabio Hara
 
Configurando o serviço dhcp no windows server 2012
Configurando o serviço dhcp no windows server 2012Configurando o serviço dhcp no windows server 2012
Configurando o serviço dhcp no windows server 2012Mario Kleber
 
Redes de computadores módulo 3
Redes de computadores módulo 3Redes de computadores módulo 3
Redes de computadores módulo 3ruitavares998
 
1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...
1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...
1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...Zabbix BR
 

La actualidad más candente (20)

Performance e disponibilidade ‐ Um estudo de caso: website dos Correios
Performance e disponibilidade ‐ Um estudo de caso: website dos CorreiosPerformance e disponibilidade ‐ Um estudo de caso: website dos Correios
Performance e disponibilidade ‐ Um estudo de caso: website dos Correios
 
Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...
Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...
Disaster Recovery usando Windows Server 2012 R2, Microsoft System Center 2012...
 
PostgreSQL: Performance Tuning
PostgreSQL: Performance TuningPostgreSQL: Performance Tuning
PostgreSQL: Performance Tuning
 
GlusterFs
GlusterFsGlusterFs
GlusterFs
 
Virtualização com Hyper-V
Virtualização com Hyper-VVirtualização com Hyper-V
Virtualização com Hyper-V
 
Alta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDAlta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBD
 
Alta Disponibilidade em Linux com Heartbeat e Drbd
Alta Disponibilidade em Linux com Heartbeat e DrbdAlta Disponibilidade em Linux com Heartbeat e Drbd
Alta Disponibilidade em Linux com Heartbeat e Drbd
 
Tcvb2 diogo mendes_sistemas operativos servidor_v1
Tcvb2 diogo mendes_sistemas operativos servidor_v1Tcvb2 diogo mendes_sistemas operativos servidor_v1
Tcvb2 diogo mendes_sistemas operativos servidor_v1
 
planejamento pre-instalacao win server 2012
 planejamento pre-instalacao win server 2012 planejamento pre-instalacao win server 2012
planejamento pre-instalacao win server 2012
 
SQL Server over SMB3
SQL Server over SMB3SQL Server over SMB3
SQL Server over SMB3
 
Simulado traduzido 70 410
Simulado traduzido 70   410Simulado traduzido 70   410
Simulado traduzido 70 410
 
Palestra Hyper-V
Palestra Hyper-VPalestra Hyper-V
Palestra Hyper-V
 
Introdução ao Windows Server 2012
Introdução ao Windows Server 2012Introdução ao Windows Server 2012
Introdução ao Windows Server 2012
 
Windows server 2012 e suas distribuições -SENAI Jandira
Windows server 2012 e suas distribuições  -SENAI JandiraWindows server 2012 e suas distribuições  -SENAI Jandira
Windows server 2012 e suas distribuições -SENAI Jandira
 
Windows server 2012 active directory e server manager fabio hara
Windows server 2012 active directory e server manager fabio haraWindows server 2012 active directory e server manager fabio hara
Windows server 2012 active directory e server manager fabio hara
 
Configurando o serviço dhcp no windows server 2012
Configurando o serviço dhcp no windows server 2012Configurando o serviço dhcp no windows server 2012
Configurando o serviço dhcp no windows server 2012
 
Hyper-V
Hyper-VHyper-V
Hyper-V
 
Redes de computadores módulo 3
Redes de computadores módulo 3Redes de computadores módulo 3
Redes de computadores módulo 3
 
1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...
1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...
1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...
 
Clusters
ClustersClusters
Clusters
 

Destacado

[GWAB] Testing Scenarios with Windows Azure and Visual Studio Online
[GWAB] Testing Scenarios with Windows Azure and Visual Studio Online[GWAB] Testing Scenarios with Windows Azure and Visual Studio Online
[GWAB] Testing Scenarios with Windows Azure and Visual Studio OnlineVitor Tomaz
 
[NetPonto] NoSQL em Windows Azure Table Storage
[NetPonto] NoSQL em Windows Azure Table Storage[NetPonto] NoSQL em Windows Azure Table Storage
[NetPonto] NoSQL em Windows Azure Table StorageVitor Tomaz
 
Running your Dev&Test environment on the Cloud: Visual Studio Online
Running your Dev&Test environment on the Cloud: Visual Studio OnlineRunning your Dev&Test environment on the Cloud: Visual Studio Online
Running your Dev&Test environment on the Cloud: Visual Studio OnlineVitor Tomaz
 
Working as a Team with Team Foundation Server 2010
Working as a Team with Team Foundation Server 2010Working as a Team with Team Foundation Server 2010
Working as a Team with Team Foundation Server 2010gueste6f731
 
Visual Studio 2015 / Visual Studio Team Services Overview
Visual Studio 2015 / Visual Studio Team Services OverviewVisual Studio 2015 / Visual Studio Team Services Overview
Visual Studio 2015 / Visual Studio Team Services OverviewHimanshu Desai
 
[Programar2013] Introdução ao Cloud Computing e ao Windows Azure
[Programar2013] Introdução ao Cloud Computing e ao Windows Azure[Programar2013] Introdução ao Cloud Computing e ao Windows Azure
[Programar2013] Introdução ao Cloud Computing e ao Windows AzureVitor Tomaz
 
Hands on Windows Azure
Hands on Windows AzureHands on Windows Azure
Hands on Windows AzureVitor Tomaz
 

Destacado (7)

[GWAB] Testing Scenarios with Windows Azure and Visual Studio Online
[GWAB] Testing Scenarios with Windows Azure and Visual Studio Online[GWAB] Testing Scenarios with Windows Azure and Visual Studio Online
[GWAB] Testing Scenarios with Windows Azure and Visual Studio Online
 
[NetPonto] NoSQL em Windows Azure Table Storage
[NetPonto] NoSQL em Windows Azure Table Storage[NetPonto] NoSQL em Windows Azure Table Storage
[NetPonto] NoSQL em Windows Azure Table Storage
 
Running your Dev&Test environment on the Cloud: Visual Studio Online
Running your Dev&Test environment on the Cloud: Visual Studio OnlineRunning your Dev&Test environment on the Cloud: Visual Studio Online
Running your Dev&Test environment on the Cloud: Visual Studio Online
 
Working as a Team with Team Foundation Server 2010
Working as a Team with Team Foundation Server 2010Working as a Team with Team Foundation Server 2010
Working as a Team with Team Foundation Server 2010
 
Visual Studio 2015 / Visual Studio Team Services Overview
Visual Studio 2015 / Visual Studio Team Services OverviewVisual Studio 2015 / Visual Studio Team Services Overview
Visual Studio 2015 / Visual Studio Team Services Overview
 
[Programar2013] Introdução ao Cloud Computing e ao Windows Azure
[Programar2013] Introdução ao Cloud Computing e ao Windows Azure[Programar2013] Introdução ao Cloud Computing e ao Windows Azure
[Programar2013] Introdução ao Cloud Computing e ao Windows Azure
 
Hands on Windows Azure
Hands on Windows AzureHands on Windows Azure
Hands on Windows Azure
 

Similar a [24HOP] SQL Server em maquinas virtuais do Windows Azure

Sistemas operativos servidor
Sistemas operativos servidorSistemas operativos servidor
Sistemas operativos servidorsimoesflavio
 
Sistemas operativos servidor
Sistemas operativos servidorSistemas operativos servidor
Sistemas operativos servidorAndré bogas
 
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...iMasters
 
SSD no banco de dados é bom mesmo?
SSD no banco de dados é bom mesmo?SSD no banco de dados é bom mesmo?
SSD no banco de dados é bom mesmo?pichiliani
 
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...Rodrigo Immaginario
 
Forefront TMG - Planejando corretamente
Forefront TMG - Planejando corretamenteForefront TMG - Planejando corretamente
Forefront TMG - Planejando corretamenteUilson Souza
 
PostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoPostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoFabio Telles Rodriguez
 
Soluções Oracle Para Segurança e Continuidade de Negócios
Soluções Oracle Para Segurança e Continuidade de NegóciosSoluções Oracle Para Segurança e Continuidade de Negócios
Soluções Oracle Para Segurança e Continuidade de NegóciosRegis Araujo
 
Cloud Server Embratel
Cloud Server EmbratelCloud Server Embratel
Cloud Server EmbratelAlex Hübner
 
Desenvolvendo para o Windows Azure e SQL Azure
Desenvolvendo para o Windows Azure e SQL AzureDesenvolvendo para o Windows Azure e SQL Azure
Desenvolvendo para o Windows Azure e SQL AzureLuciano Condé
 
Introdução à computação na nuvem e Windows Azure
Introdução à computação na nuvem e Windows AzureIntrodução à computação na nuvem e Windows Azure
Introdução à computação na nuvem e Windows AzureGiovanni Bassi
 
Windows Server 2008 R2
Windows Server 2008 R2Windows Server 2008 R2
Windows Server 2008 R2Fabio Hara
 
Desenvolvendo aplicações Web escaláveis
Desenvolvendo aplicações Web escaláveisDesenvolvendo aplicações Web escaláveis
Desenvolvendo aplicações Web escaláveiselliando dias
 
Performance tunning de servidores ColdFusion MX
Performance tunning de servidores ColdFusion MXPerformance tunning de servidores ColdFusion MX
Performance tunning de servidores ColdFusion MXAlex Hübner
 

Similar a [24HOP] SQL Server em maquinas virtuais do Windows Azure (20)

SQL over SMB3
SQL over SMB3SQL over SMB3
SQL over SMB3
 
Sistemas operativos servidor
Sistemas operativos servidorSistemas operativos servidor
Sistemas operativos servidor
 
Sistemas operativos servidor
Sistemas operativos servidorSistemas operativos servidor
Sistemas operativos servidor
 
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
 
Introducao ao Amazon Redshift
Introducao ao Amazon RedshiftIntroducao ao Amazon Redshift
Introducao ao Amazon Redshift
 
SSD no banco de dados é bom mesmo?
SSD no banco de dados é bom mesmo?SSD no banco de dados é bom mesmo?
SSD no banco de dados é bom mesmo?
 
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
Dicas e Truques de Performance: Como obter o maximo do Windows Server 2008 R2...
 
Forefront TMG - Planejando corretamente
Forefront TMG - Planejando corretamenteForefront TMG - Planejando corretamente
Forefront TMG - Planejando corretamente
 
PostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardoPostgreSQL Tuning: O elefante mais rápido que um leopardo
PostgreSQL Tuning: O elefante mais rápido que um leopardo
 
Redes e Servidores
Redes e ServidoresRedes e Servidores
Redes e Servidores
 
Soluções Oracle Para Segurança e Continuidade de Negócios
Soluções Oracle Para Segurança e Continuidade de NegóciosSoluções Oracle Para Segurança e Continuidade de Negócios
Soluções Oracle Para Segurança e Continuidade de Negócios
 
01 planejamento pre-instalacao
01 planejamento pre-instalacao01 planejamento pre-instalacao
01 planejamento pre-instalacao
 
Cloud Server Embratel
Cloud Server EmbratelCloud Server Embratel
Cloud Server Embratel
 
Desenvolvendo para o Windows Azure e SQL Azure
Desenvolvendo para o Windows Azure e SQL AzureDesenvolvendo para o Windows Azure e SQL Azure
Desenvolvendo para o Windows Azure e SQL Azure
 
Introdução à computação na nuvem e Windows Azure
Introdução à computação na nuvem e Windows AzureIntrodução à computação na nuvem e Windows Azure
Introdução à computação na nuvem e Windows Azure
 
Windows Server 2008 R2
Windows Server 2008 R2Windows Server 2008 R2
Windows Server 2008 R2
 
Amazon EC2 avançado
Amazon EC2 avançadoAmazon EC2 avançado
Amazon EC2 avançado
 
Desenvolvendo aplicações Web escaláveis
Desenvolvendo aplicações Web escaláveisDesenvolvendo aplicações Web escaláveis
Desenvolvendo aplicações Web escaláveis
 
Performance tunning de servidores ColdFusion MX
Performance tunning de servidores ColdFusion MXPerformance tunning de servidores ColdFusion MX
Performance tunning de servidores ColdFusion MX
 
NoSQL Livre
NoSQL LivreNoSQL Livre
NoSQL Livre
 

Último

ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx2m Assessoria
 

Último (6)

ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 

[24HOP] SQL Server em maquinas virtuais do Windows Azure

  • 1. SQL Server em Máquinas Virtuais do Windows Azure Vítor Tomaz
  • 3. 3 Agenda  Porquê Windows Azure  Máquinas Virtuais Windows Azure  Requisitos do SQL Server  Melhores Práticas  Monitorização
  • 5. Cloud Computing Escalabilidade Elasticidade Baixo Investimento Inicial Pago o que Uso Não há (demasiados) recursos desperdiçados Escalabilidade Custos
  • 7. Automação em Windows Azure Recursos necessários Agent Switches Load-balancers Fabric Controller Agent Agent Faz acontecer
  • 8. Windows Azure Windows Azure é um SO para o datacenter  Modelo: Trata o datacenter como uma única máquina  Trata a gestão dos recursos, aprovisionamento e monitorização  Gere o ciclo de vida das aplicações  Permite aos programadores concentrarem-se na lógica de negócio Fornece serviços para aplicações distribuídas  Filas de mensagens, armazenamento estruturado, armazenamento relacional  Serviços de controlo de acesso e conectividade
  • 9. Windows Azure – Escala Global South Central US West US East US
  • 12. Discos Persistentes e Durabilidade
  • 13. Discos Persistentes e Durabilidade
  • 14. Terminologia em Máquina Virtuais • Virtual Networks • Local Networks • DNS Servers • Access Keys • Containers • Images • Disks
  • 16. Tamanhos e Discos Virtual Machine Size CPU Cores Memory Maximum data disks (each up to 1 TB) Maximum IOPS ExtraSmall Shared 768 MB 1 1 x 500 Small 1 1.75 GB 2 2 x 500 Medium 2 3.5 GB 4 4 x 500 Large 4 7 GB 8 8 x 500 ExtraLarge 8 14 GB 16 16 x 500 A5 2 14GB 4 4 x 500 A6 4 28 GB 8 8 x 500 A7 8 56 GB 16 16 x 500
  • 17. 20 Imagens Imagens com SQL Server Imagens com Windows Server Criar a nossa própria imagem  Construída na Cloud  Construída On-Prem
  • 19. Imagens A partir do nosso VHD
  • 21. SLA para SQL Server Sem SLA SLA 99.95%
  • 22. Dentro de uma Máquina Virtual Virtual Machine C: OS Disk E:, F:, etc. Data Disks D: Temp Disk (Dynamic VHD) RAM Cache Local Disk Cache
  • 23. Disco do Sistema Operativo Exemplo: arranque Virtual Machine C: OS Disk E:, F:, etc. Data Disks D: Temp Disk (Dynamic VHD) RAM Cache Local Disk Cache
  • 24. Disco Local Temporário Contém page files do sistema operativo Disco attached ao host físico Disco físico, partilhado com outras VM Apagado após falha ou recycling da VM Virtual Machine C: OS Disk E:, F:, etc. Data Disks D: Temp Disk (Dynamic VHD) RAM Cache Local Disk Cache
  • 25. Disco de Dados Attached VHDs Em Azure Storage Para guardar dados Até 1TB de tamanho Até 16 discos em VMs XL Virtual Machine C: OS Disk E:, F:, etc. Data Disks D: Temp Disk (Dynamic VHD) RAM Cache Local Disk Cache
  • 26. Sistema de IO Performance pode variar - Host machines - Network bandwidth - Operações de manutenção Cost vs control trade-off 3 cópias no mesmo datacenter Geo-redundante - Opcional - 6 cópias Storage Stamp Stream Layer Partition Layer Front-ends LB Intra-stamp replication Stream Layer Partition Layer Front-ends LB Intra-stamp replication Storage Stamp Geo-replication Storage Location Service
  • 27. VM disk caching Reduz o número de transacções de storage Cache na RAM da host machine Cache no Disco da host machine Tamanho da cache baseado no tamanho da máquina
  • 28. Cache setting – read only
  • 29. Cache setting – read write Persistido para local cache primeiro se "write through“ não for especificado Outras escritas (SQL Server) são persistidas directamente para storage
  • 30. Cache setting - none Atenção aos custos das transacções de storage
  • 31. VM cache settings options Disk type Read Only Read Write None (disabled) OS disk Supported Default Not supported Data disks Supported (up to 4) Supported (up to 4) Default Temporary disk N/A
  • 32. WA Gateway On-premises Your datacenter Hardware VPN or Windows RRAS Virtual Network <subnet 1> <subnet 2> <subnet 3> DNS Server Virtual Networks – Site-to-Site
  • 33. On-premises Your datacenter Individual computers behind corporate firewall Virtual Networks – Point-to-Site Virtual Network <subnet 1> <subnet 2> <subnet 3> DNS Server Hardware VPN or Windows RRAS WA Gateway
  • 35. Requisitos do SQL Server Cada vez mais Latência IOPs Taxa de Transferência (Throughput) As questões relacionadas com CPU e Memória são semelhantes em Windows Azure
  • 36. 39 Requisitos de I/O – OLTP Metric Requirements Mix of reads vs writes Mostly reads Nature of writes Mostly asynchronous Average rows per I/O Low I/O size 8 to 64 KB common I/O pattern Mostly random Concurrent users High
  • 37. 40 Requisitos de I/O – log files Metric Requirements Mix of reads vs writes Mostly writes Nature of writes Mostly synchronous (low latency critical) Average rows per I/O Low I/O size 8 to 64 KB common I/O pattern Mostly sequential
  • 39. 42 Latência Latência de Rede mais alta  Virtualização, segurança, balanceamento de carga, proximidade  Reduzir round trips pode ter grande impacto Criar VMs no mesmo cloud service  Permite comunicação através de endreços IP internos (DIPs)  Usar Windows Azure Virtual Network para VMs em cloud services diferentes  Fazer load balance de multiplas VMs no mesmo cloud service via endreço IP público Consolidar camadas “muito faladoras” na mesma máquina
  • 40. 43 IOPs – Usar múltiplos discos SQL Server Files and Filegroups Apresenta a melhor performance Windows Server 2012 Storage Spaces No Windows Server 2012 R2 é ainda melhor Striped Volumes Windows Server 2008 (evitar se possível)
  • 41. 44 IOPs - Storage Account Limites de escalabilidade de uma Azure Storage Account 20 000 IOPs por conta Limites de escalabilidade de um blob (VHD) 60 MBytes/s por blob É recomendável manter tudo numa única conta de Storage É a unidade de recuperação em caso de falha Não usar geo-replicação com vários discos Não é garantida uma ordem escrita consistente em vários discos
  • 42. Apenas disco do Sistema Operativo BDs pequenas < 10GB Read-write cache tempdb System databases User databases
  • 43. Um disco de dados Perfomance aceitável Pouca complexidade Recuperação simples Read-write cache tempdb User databases Random I/O (8KB Pages) Sequential I/O (64KB Extents) Sequential I/O (256KB Blocks) Reads Writes Reads Writes Reads Writes IOPS 500 500 500 300 300 300 Bandwidth 4 MB/s 4 MB/s 30 MB/s 20 MB/s 70 MB/s 70 MB/s
  • 44. Vários discos de dados Apresenta a melhor performance nos testes Striping (avoid) WS2012 storage spaces
  • 45. Testes com vários discos 4 disks Random I/O (8KB Pages) Sequential I/O (64KB Extents) Sequential I/O (256KB Blocks) Reads Writes Reads Writes Reads Writes IOPS 2000 2000 2000 1300 700 1100 Bandwidth 20 MB/s 20 MB/s 120 MB/s 80 MB/s 170 MB/s 270 MB/s 16 disks Random I/O (8KB Pages) Sequential I/O (64KB Extents) Sequential I/O (256KB Blocks) Reads Writes Reads Writes Reads Writes IOPS 8000 8000 2500 5000 700 2400 Bandwidth 60 MB/s 60 MB/s 150 MB/s 300 MB/s 170 MB/s 600 MB/s 8 disks Random I/O (8KB Pages) Sequential I/O (64KB Extents) Sequential I/O (256KB Blocks) Reads Writes Reads Writes Reads Writes IOPS 4000 4000 2500 2600 700 2200 Bandwidth 30 MB/s 30 MB/s 150 MB/s 160 MB/s 170 MB/s 550 MB/s
  • 46. tempdb (Apesar de recomendações anteriores) Discos de SO e dados apresentam a mesma ou melhor performance Drive D é partilhada e pode ter uma performance variável SQL Server precisa de criar a tempdb num restart São necessárias permissões de administrador para criar pastas no disco D Particularly number of files tempDB IO best practices
  • 47. 50 Caching OS Disk “Read Write” (default) • DBs (<=10GB) • Reduz latência em IO intensivo • Working set cabe na cache ou memória Data disks • DBs > 10GB • Depende do IO • Usar “None” (disable) para random IOs (e.g. OLTP) • Read cache para workloads com muitas leituras e requisitos de latência baixa
  • 48. 51 Disk warm-up Particionamento adaptativo e balanceado (ajusta à carga)  As partições espalham-se se a carga aumentar  Podem condensar-se se a carga diminuir  As leituras são distribuídas pelas 3 réplicas
  • 51. Ferramentas de monitorização psping Traceroute (tracert) SQL Server Management Studio (client statistics) Process(SQLServ)% Processor Time (max and avg) Processor(_Total)% Processor Time (max and avg) SQLServer:SQL StatisticsBatch Requests/sec (max and avg)
  • 52. Gráficos no Portal VM Dashboard Monitor tab for storage Enabled under the Configure tab
  • 53. Métricas de Windows Azure storage analytics Monitors BLOBs, tables and queues Access via storage account namespace https://<accountname>.table.core.windows.net/Tables("$MetricsTransactionsBlob") Capacity: number of containers, BLOBs Requests: number of requests, total ingress/egress, average end-to-end latency, server latency, total failures
  • 54. 57 Conclusões As principais diferenças estão nos discos e I/O Optimizar para reduzir I/O e numero de pedidos Identificar o melhor tamanho para as VMs Usar Filegroups e vários discos para bases de dados grandes Rever as decisões de optimização à medida que a carga muda Começar por planear a VPN

Notas del editor

  1. The OS and Data Disks are stored in Windows Azure storage. So in addition to the data being persistent you also get the benefits of storage which means your VHD is replicated 3X’s locally and also 3X’s in a separate data center in the same region (geo-replication)
  2. This slide simply highlights that if the physical hardware backing your VM goes down a new server will start and pick up the same VHD.
  3. Slide Objective:Multiple virtual machines grouped in an availability set are required to have an SLA
  4. Slide ObjectivesUnderstand the Windows Azure Storage scalability modelVALUE PROPWindows Azure Storage scales automatically to provide the best performanceSpeaker NotesFanout is automatic, handles by Windows AzureThe key here is “elasticity”. The ability to automatically scale based on load.Fanout is based on the load. Fanout isn’t immediate…Windows Azure will wait several seconds to ensure that the load is a true load and not just a temporary spikePartitioning is based on Partition Key – the choice of the partition key is criticalPartitions can be condensed when load increasesReads are load balanced against the three replicasNotes