comparando o desempenho do disco no sgbd: hd, sdd, ramdrive e cloud

30
1 Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud Dr. Mauro Pichiliani ([email protected]) @pichiliani @databasecast

Upload: mauro-pichiliani

Post on 18-Jan-2017

1.566 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

1

Comparando o desempenho do disco no SGBD: HD, SDD,

Ramdrive e Cloud

Dr. Mauro Pichiliani ([email protected])@pichiliani

@databasecast

Page 2: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

2

Quem sou eu

• Mestre e doutor em computação pelo ITA

• Escritor da SQL Magazine, Fórum Access, Java Magazine, SQLServerCentral.com e outras

• Colaborador do iMasters há 15 anos

• Autor do livro “Conversando sobre banco de dados”

• Co-produtor do DatabaseCast

• Consultor independente e autor de cursos on-line

Page 3: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

3

Tópicos

Opções de armazenamento Por quê comparar? Escopo da comparação Ambientes de testes Testes de taxas de transferência Análise dos resultados Conclusão

Page 4: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

4

Opções de armazenamento Subsistema de armazenamento de dados

permanente possui diversos componentes

Simplificando: Tecnologia de transferência Hardware/Sofware

Tecnologias de transferência comuns: USB 2.0 (Universal Serial Bus): 480 Mbit/s SATA (Seria AT Attachment): 6 Gbit/s SAS (Serial Attached SCSI): 12 Gbit/s

Page 5: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

5

Hardware – HD magnética HD (Hard Disk) magnética

Componentes mecânicos (sujeito a falhas) Grande quantidade de dados (Terabytes) Memória cache interna Característica RPM (rotações por minuto):

5.400 rpm: notebooks 7.200 rpm: desktops 15.000 (15k) rpm: servidores

Page 6: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

6

Hardware – SSD SSD (Solid State Drive): “revolução” na área

Sem componentes mecânicos: memória flash + memória cache interna

Média quantidade de dados (Gigabytes) Alta taxa de transferência de dados Requer alguns cuidados especiais Velocidades variam muito de acordo com cada

fabricante Relação custo x benefício

Page 7: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

7

Hardware/Software – Ramdrive Ramdrive: mapear memória RAM em um drive Tecnologia “antiga”, mas com novidades Reserva memória RAM de forma exclusiva Reduz memória para processos do SO Volátil, porém pode-se exportar drive (ISO) Alta velocidade (barramento interno) Baixa quantidade de armazenamento (gigabytes) Não é limitado pela tecnologia de transferência Exemplo: SoftPerfect RAM Disk

Page 8: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

8

Hardware/Software – Nuvem Diversos fornecedores de opções na nuvem Utilizam ambiente virtualizado: hypervisor (Xen, KVM,

Virtual PC, etc) Custo por uso ou valor fixo mensal Possibilidade de adição de recursos (modelo de

escalonamento horizontal/banco distribuído) Componentes virtualizados Ambiente com recursos compartilhados Baixa velocidade Quantidade de armazenamento variável SLA de IOPS em alguns casos Fornecedores:

Page 9: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

9

Por quê comparar? Tecnologias de armazenamento geram dúvidas em relação a

performance Comparação pode ajudar a tomada de decisão Um dos principais aspectos na escolha da opção: taxa de

transferência de dados (leitura e gravação)

A comparação deve: Ter metodologia clara Ser baseada em um cenário específico Suportada por rigor científico Possuir critérios e valores comparativos Incluir tratamento estatístico

Comparações ‘informais’ não formam um argumento válido: Não descrevem o ambiente, metodologia e protocolo de experimento Não há tratamento estatístico Replicação e auditoria dificuldada Muito viés e dados qualitativos Não é representativo do cenário comum de uso do BD

Page 10: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

10

Escopo da comparação Medir taxa de acesso para importar/exportar dados, backup/restore e

executar transações

Comparação justa e prática: ambientes devem realizar a mesma tarefa (ler e gravar dados por meio do banco de dados)

Opções comparadas: HD magnética 5400 rpm mSATA (notebook): HD 5400 HD magnética 7200 rpm SATA (desktop): HD 7200 SSD 250 GB SATA (desktop): SSD Ramdrive 10 GB (desktop): ramdrive Nuvem fornecedor X com HD normal: Cloud normal Nuvem fornecedor X com HD SSD: Cloud SSD

Comparação apenas com uma instância (sem ambiente distribuído) Testes realizados sem opções de paralelismo e RAID

Page 11: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

11

Ambiente de testes – Hardware e Software

Hardware: Desktop Intel Core i950 (4 cores @ 3.06 GHZ), 16GB RAM: HD

7200, SSD, ramdrive Notebook Dell Inspiron 14 (i3, 2 cores @ 1.7Ghz), 4 GB RAM: HD

5400 CPU virtual (Intel Xeon 2 cores @ 2.6 Ghz): Cloud normal e

Cloud SSD

Software: Crystal Disk Mark 64 bits (baseline) SQL Server 2014 Standard Windows Server 2008 Sistema de arquivos NTFS com opções padrão

Ambiente, protoloco do experimento, dados e análises disponíveis futuramente no site da revista SQL Magazine

Page 12: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

12

Ambiente de testes – Dados

Arquivos/Tabela com 11 colunas: 1 int + 10 float Coluna int (sequêncial) + valores float aleatórios (entre 1,00 e

100.000,00) Arquivo CSV com linhas (N) variando de 1.000.000 a 10.000.000 Quantidade de transações (N) variando de 10.000 a 100.000 Medição da taxa de transferência em Megabytes por segundo (MB/s):

Crystal Disk Mark: informado pela ferramenta Backup/Restore: informado pelo comando Importação/Exportação: tamanho do arquivo dividido pelo tempo

Medição de transações pelo tempo total gasto em segundos Cada teste foi realizado 10 vezes e obtida a média Arquivos de dados, transaction log e arquivos CSV no mesmo drive Espaço em disco alocado previamente para arquivos de dados e log Sem configurações de cache, lock, e parâmetros específicos Recovery model: bulk-logged

Page 13: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

13

Testes com o Crystal Disk Mark Testes com o Crystal Disk Mark mediram taxa de transferência de

dados em MB/s: quanto maior, melhor 4 testes internos para leitura e gravação:

Seq Q32T1: Leitura/Gravação sequencial (tam. bloco = 128KB) com múltiplas filas (queues) e threads

4K Q32T1: Leitura/Gravação randômica (tam. do bloco = 4KB) com múltiplas filas (queues) e threads

Seq: Leitura/Gravação sequencial (tam. do bloco = 1MB) com uma única thread

4K: Leitura/Gravação randômica (tam. do bloco = 4KB) com uma thread e uma fila (queue).

Page 14: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

Na média geral ramdrive foi 25 vezes mais rápido que SSD14

Testes Crystal Disk Mark – Resultado Leitura

Page 15: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

Na média geral ramdrive foi 29 vezes mais rápido que SSD15

Testes Crystal Disk Mark – Resultado Gravação

Page 16: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

16

Testes de backup/restore

Testes de backup/restore mediram taxa de transferência de dados em MB/s: quanto maior, melhor

Backup e restore completo (full) do banco com o arquivo importado Somente um backup por arquivo (backup device) Checagem de arquivo não computada no valor de MB/s retornado

Page 17: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

Na média geral ramdrive foi 31 vezes mais rápido que SSD17

Testes de Restore (leitura)

Page 18: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

Na média geral ramdrive foi 26 vezes mais rápido que SSD 18

Testes de Backup (gravação)

Page 19: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

19

Testes de importação/exportação

Testes de importação/exportação mediram taxa de transferência de dados em MB/s: quanto maior, melhor

Testes de importação/exportação divididos em dois grupos: Importação/exportação linha a linha de arquivos CSV (BCP) Importação/exportação direta binária dos arquivos (BULK)

Importação CSV: utilitário de linha de comando bcp Importação BULK: SELECT com função OPENROWSET()

Exportação CSV: utilitário de linha de comando bcp Exportação BULK: utilitário de linha de comando bcp com parâmetro

–c

A cada operação de importação/exportação: Limpeza do cache Backup de transaction log

Page 20: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

Na média geral ramdrive foi apenas 1,5% mais rápido que SSD20

Testes de importação BCP (leitura)

Page 21: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

Na média geral ramdrive foi apenas 0,2% mais rápido que HD 720021

Testes de exportação BCP (gravação)

Page 22: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

Na média geral ramdrive foi 21 vezes mais rápido que SSD22

Testes de importação BULK (leitura)

Page 23: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

Na média geral ramdrive foi aprox. 30% mais rápido que SSD23

Testes de exportação BULK (gravação)

Page 24: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

24

Testes de transações Testes de transações mediram o tempo de execução: quanto menor,

melhor

Testes de transação divididos em dois grupos: Individuais: cada instrução é uma transação Agrupadas: todas as instruções dentro de uma única transação

Uso do comando INSERT dentro de script com loop: mesmos dados dos arquivos CSV

N variando de 10.000 a 100.000 por motivos de duração de testes

A cada teste de transação: Limpeza do cache Backup de transaction log

Page 25: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

Na média geral tempos de ramdrive foram 30% menores que HD 720025

Testes de transações individuais

Page 26: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

Na média geral tempos de SSD, HD 7200 e ramdrive ficaram iguais26

Testes de transações agrupadas

Page 27: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

27

Análise dos resultados - Geral ramdrive teve melhor desempenho seguido de SSD

Opções na nuvem deixaram muito a desejar: Em alguns casos, resultados piores que HD 5400 Diferença de preço de Cloud SSD para Cloud HD não possui boa

relação custo x benefício

Opções na nuvem apresentaram muita variações nos testes (fatores externos?)

Memória virtual não foi usada em nenhum dos cenários de testes Processamento e memória não foram gargalos

Críticas: Poucas opções de nuvem testadas Sem uso de RAID, storage específico e SAS Ambiente Windows apenas

Page 28: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

Análise dos resultados - ValoresTipo de teste Detalhe do

testeÚltimo

colocado 

ValorMédio último

colocado (MB/s)

Primeirocolocado

 

Valor médioprimeiro

colocado (MB/s)

Crystal Disk Mark -Leitura

4K HD 5400 0,3 ramdrive 1.216,4SEQ Cloud SSD 25,2 ramdrive 5.778,6

4K Q32T1 HD 5400 0,5 ramdrive 1.079,1SEQ Q32T1 Cloud SSD 25,2 ramdrive 3.905,8

Crystal Disk Mark -

Gravação

4K HD 5400 0,7 ramdrive 937SEQ Cloud SSD 25,2 ramdrive 6.592,5

4K Q32T1 HD 5400 0,7 ramdrive 910,7SEQ Q32T1 Cloud SSD 25,2 ramdrive 5.504,1

Restore(leitura)

Restore  Cloud SSD 3,5 ramdrive 1.024,7

Backup(gravação)

Backup  Cloud SSD 13 ramdrive 2.332,2

Importação(leitura)

BCP HD 5400 5,8 ramdrive 20,4Bulk insert Cloud SSD 52,3 ramdrive 4.071,5

Exportação(gravação)

BCP HD 5400 5,5 ramdrive 11,2Bulk export Cloud SSD 8,8 ramdrive 115,9

Transações Individual Cloud SSD 37,3s ramdrive 1,7s

Agrupado HD 5400 0,6sSSD,

HD 7200,ramdrive

0,4s

Page 29: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

29

Conclusão Comparações práticas de opções fornecem evidências sobre

desempenho de subsistema de armazenamento Sempre considerar ambiente de software, hardware, dados e

características das opções em comparações Há evidências que sugerem melhor desempenho de opções

em memória (ramdrive e SSD) em relação às demais Há evidência que sugerem que opção na nuvem não é a mais

“rápida” Muitas técnicas podem ser aplicadas para melhorar taxas de

transferências e tempos de execução Não concorda com os resultados?

Replique o experimento Me contrate para uma consultoria!

Page 30: Comparando o desempenho do disco no SGBD: HD, SDD, Ramdrive e Cloud

30

Perguntas?

Dr. Mauro Pichiliani ([email protected])@pichiliani

@databasecast•