Re: [FUG-BR] ZFS vs UFS para MySQL

2018-02-15 Por tôpico Edinilson J. Santos

Em 15/02/2018 03:15, Paulo Henrique escreveu:

Em 15 de fev de 2018 01:58, "Willy Romão" 
escreveu:

Olá Pessoal.

Gostaria da opinião de vocês quanto a performance do ZFS e do UFS para os
seguintes cenários.

Tenho dois ambientes em H.A. (CARP + HAST) rodando em homologação nos
seguintes hardwares:

2x Dell PowerEdge R410:
8Gb RAM;
2x Xeon E5620;
Controladora RAID PERC H330 Mini;
1x 300GB 15K RPM SAS 6Gbps;

Configurações de Hardware/S.O. dos ambientes:
Sistema Operacional: FreeBSD 11.1-RELEASE-p4;
Modo de uso da controladora RAID: HBA (http://www.dell.com/support/
manuals/us/en/19/poweredge-rc-h730/perc9ugpublication/
switching-the-controller-to-hba-mode?guid=guid-1fcc87e1-
d534-451a-9947-56f1175886c5=en-us );
Driver da controladora utilizado: mrsas (https://www.freebsd.org/
releases/11.1R/hardware.html#disk );

Ambiente/Cenário 1 (ZFS):
Opções do Filesystem: noatime, compression=lz4;
Configurações do serviço MySQL: my.cnf default da instalação do MySQL no
FreeBSD;

*Obs. 1: A partição onde há atuação do HAST para replicação dos dados é a
partição do MySQL;
*Obs. 2: houveram tentativas de tuning no ZFS específico para o MySQL, mas
que não mudaram em grandes fatores os resultados dos testes. (
https://www.patpro.net/blog/index.php/2014/03/09/2617-mysql-on-zfs-on-freebsd/
);

Ambiente/Cenário 2 (UFS):
Opções no Filesystem: noatime;
Configurações do serviço MySQL: my.cnf default da instalação do MySQL no
FreeBSD;

*Obs. 1: A partição onde há atuação do HAST para replicação dos dados é a
partição do MySQL;


Testes de desempenho cenário 1 (ZFS):
Tempo de execução da Query1 pela primeira vez: ~1,99 s
Tempo de execução da Query1 pela enésima vez: ~734 ms
Tempo de execução da Query2 pela primeira vez: ~3,73 s
Tempo de execução da Query2 pela enésima vez: ~1,16 s
*Obs. 1: As queries executadas nos testes, serão largamente utilizadas no
sistema em produção;
*Obs. 2: Foram executadas também lotes de queries
(SELECTs/INSERTs/UPDATEs), mas não há diferença significante
proporcionalmente se tratando dos tempos de execução.


Testes de desempenho cenário 2 (UFS):
Tempo de execução da Query1 pela primeira vez: ~560 ms
Tempo de execução da Query1 pela enésima vez: ~490 ms
Tempo de execução da Query2 pela primeira vez: ~1,16 s
Tempo de execução da Query2 pela enésima vez: ~734 ms
*Obs. 1: As queries executadas nos testes, serão largamente utilizadas no
sistema em produção;
*Obs. 2: Foram executadas também lotes de queries
(SELECTs/INSERTs/UPDATEs), mas não há diferença significante
proporcionalmente se tratando dos tempos de execução.


Após muita leitura sobre comparações entre ZFS e UFS, entendo que para a
maioria dos casos o UFS parece ser mais rápido, mas é claro, não há todas
as features e nem a flexibilidade que há no ZFS.
Essas features e flexibilidade são muito importantes neste ambiente, logo,
provavelmente eu usarei ZFS em produção.
De qualquer forma, entendo que a diferença de perfomance entre ZFS e UFS
neste caso foi significativamente grande em comparação com os testes de
performance que eu consegui analisar na internet.
Por este motivo, gostaria da opinião de vocês sobre o ambiente utilizando
cada um desses filesystems, ou até uma possível correção que poderia fazer
com que o ZFS chegasse um pouco mais perto do desempenho do UFS.

Desculpem pelo textão, mas foi a melhor forma que encontrei de passar todas
essas informações.

Grato pela atenção,

Willy Romão G. França

Contatos / Contacts:
+55 (31) 3069-8109
+55 3003-5410 - Ramal / Extension: 7090
E-mail / Hangout: willyr.goncal...@gmail.com 
LinkedIn: https://www.linkedin.com/in/willyrgf/
Twitter: @willyrgf


-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd



O ZFS só vai ter diferença quando se tem muita memoria para manter cache de
leitura no ARC/L2ARC e o principal fator que melhora é com relação a
escrita pois a concorrência entre leitura e escrita do disco diminuira com
blocos destinados a leitura sendo entregue atravéz do cache de memoria.

Att.
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Não sou especialista em ZFS, mas pelas informações que passou as minhas 
observações seria:


Na parte do ZFS:
1o) Memoria RAM: ZFS precisa de *MUITA* memória RAM. Te digo que, com 
8gb, não irá atender nem os requisitos minimos do MySQL, quem dirá do ZFS;
2o) Dependendo do seu cenario, utilizar SSD para o cache do ZFS irá 
fazer MUITA diferença;
3o) O paragrafo que transcrevo aqui foi 

Re: [FUG-BR] ZFS vs UFS para MySQL

2018-02-15 Por tôpico Paulo Henrique
Em 15 de fev de 2018 01:58, "Willy Romão" 
escreveu:

Olá Pessoal.

Gostaria da opinião de vocês quanto a performance do ZFS e do UFS para os
seguintes cenários.

Tenho dois ambientes em H.A. (CARP + HAST) rodando em homologação nos
seguintes hardwares:

2x Dell PowerEdge R410:
8Gb RAM;
2x Xeon E5620;
Controladora RAID PERC H330 Mini;
1x 300GB 15K RPM SAS 6Gbps;

Configurações de Hardware/S.O. dos ambientes:
Sistema Operacional: FreeBSD 11.1-RELEASE-p4;
Modo de uso da controladora RAID: HBA (http://www.dell.com/support/
manuals/us/en/19/poweredge-rc-h730/perc9ugpublication/
switching-the-controller-to-hba-mode?guid=guid-1fcc87e1-
d534-451a-9947-56f1175886c5=en-us );
Driver da controladora utilizado: mrsas (https://www.freebsd.org/
releases/11.1R/hardware.html#disk );

Ambiente/Cenário 1 (ZFS):
Opções do Filesystem: noatime, compression=lz4;
Configurações do serviço MySQL: my.cnf default da instalação do MySQL no
FreeBSD;

*Obs. 1: A partição onde há atuação do HAST para replicação dos dados é a
partição do MySQL;
*Obs. 2: houveram tentativas de tuning no ZFS específico para o MySQL, mas
que não mudaram em grandes fatores os resultados dos testes. (
https://www.patpro.net/blog/index.php/2014/03/09/2617-mysql-on-zfs-on-freebsd/
);

Ambiente/Cenário 2 (UFS):
Opções no Filesystem: noatime;
Configurações do serviço MySQL: my.cnf default da instalação do MySQL no
FreeBSD;

*Obs. 1: A partição onde há atuação do HAST para replicação dos dados é a
partição do MySQL;


Testes de desempenho cenário 1 (ZFS):
Tempo de execução da Query1 pela primeira vez: ~1,99 s
Tempo de execução da Query1 pela enésima vez: ~734 ms
Tempo de execução da Query2 pela primeira vez: ~3,73 s
Tempo de execução da Query2 pela enésima vez: ~1,16 s
*Obs. 1: As queries executadas nos testes, serão largamente utilizadas no
sistema em produção;
*Obs. 2: Foram executadas também lotes de queries
(SELECTs/INSERTs/UPDATEs), mas não há diferença significante
proporcionalmente se tratando dos tempos de execução.


Testes de desempenho cenário 2 (UFS):
Tempo de execução da Query1 pela primeira vez: ~560 ms
Tempo de execução da Query1 pela enésima vez: ~490 ms
Tempo de execução da Query2 pela primeira vez: ~1,16 s
Tempo de execução da Query2 pela enésima vez: ~734 ms
*Obs. 1: As queries executadas nos testes, serão largamente utilizadas no
sistema em produção;
*Obs. 2: Foram executadas também lotes de queries
(SELECTs/INSERTs/UPDATEs), mas não há diferença significante
proporcionalmente se tratando dos tempos de execução.


Após muita leitura sobre comparações entre ZFS e UFS, entendo que para a
maioria dos casos o UFS parece ser mais rápido, mas é claro, não há todas
as features e nem a flexibilidade que há no ZFS.
Essas features e flexibilidade são muito importantes neste ambiente, logo,
provavelmente eu usarei ZFS em produção.
De qualquer forma, entendo que a diferença de perfomance entre ZFS e UFS
neste caso foi significativamente grande em comparação com os testes de
performance que eu consegui analisar na internet.
Por este motivo, gostaria da opinião de vocês sobre o ambiente utilizando
cada um desses filesystems, ou até uma possível correção que poderia fazer
com que o ZFS chegasse um pouco mais perto do desempenho do UFS.

Desculpem pelo textão, mas foi a melhor forma que encontrei de passar todas
essas informações.

Grato pela atenção,

Willy Romão G. França

Contatos / Contacts:
+55 (31) 3069-8109
+55 3003-5410 - Ramal / Extension: 7090
E-mail / Hangout: willyr.goncal...@gmail.com 
LinkedIn: https://www.linkedin.com/in/willyrgf/
Twitter: @willyrgf


-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd



O ZFS só vai ter diferença quando se tem muita memoria para manter cache de
leitura no ARC/L2ARC e o principal fator que melhora é com relação a
escrita pois a concorrência entre leitura e escrita do disco diminuira com
blocos destinados a leitura sendo entregue atravéz do cache de memoria.

Att.
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd