Alta utilização da CPU por mariadb mesmo depois de ter alocado mais memória para mariadb?

1

Estou usando o servidor aws r4.4xlarge e alocado mais de 60GB para o banco de dados, mas ainda estou enfrentando problemas de alto uso da cpu.

Tenho cerca de 10 tabelas grandes, cada uma com tamanho aproximado de 18 GB, com chave primária inteira. Todas as tabelas são innodb e eu otimizei o innodb também adicionando isso ao arquivo de configuração padrão.

innodb_buffer_pool_size=60G #(max 60 % of your Memory if and only if Memory >= 8G)
innodb_log_file_size=15G #(min 25% of innodb_buffer_pool_size)
innodb_flush_log_at_trx_commit=2

também durante a depuração no mysql eu tenho dúvidas sobre alguma consulta, mas ainda quero mariadb utilizar instância corretamente. a maior parte do processo no estado de suspensão, mas alguns estão em estado de consulta por um período bastante longo.

+---------+-----------------+-----------------+------------------+---------+------+----------------+-----------------+----------+
| Id      | User            | Host            | db               | Command | Time | State          | Info            | Progress |
+---------+-----------------+-----------------+------------------+---------+------+----------------+-----------------+----------+
| 5415663 | root            | localhost       | test_db          | Query   |    0 | Sorting result | SELECT XXXXX    |    0.000 |

Eu preciso de sugestão sobre se eu ainda tenho que otimizar alguma coisa, tirar melhor proveito do mariadb.

Tasks: 339 total,   1 running, 338 sleeping,   0 stopped,   0 zombie
%Cpu(s): 13.0 us,  0.1 sy,  0.0 ni, 86.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem : 12582731+total, 40068792 free, 72185768 used, 13572756 buff/cache
KiB Swap:        0 total,        0 free,        0 used. 51496540 avail Mem 

   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                    
126064 mysql     20   0 65.336g 0.063t   8968 S 205.6 53.5  51004:26 mysqld                                                                     
  1346 rabbitmq  20   0 9804208 1.022g   4228 S   2.3  0.9   1336:27 beam.smp                                                                   
  1488 redis     20   0  604496 513216   2236 S   1.0  0.4 389:01.86 redis-server                                                               
  7064 www-data  20   0  450464  38604  30744 S   0.3  0.0   0:00.93 php-fpm7.0                                                                 
  9226 www-data  20   0  383204  37932  29336 S   0.3  0.0   0:00.66 php-fpm7.0                                                                 
  9404 www-data  20   0  376000  36820  29016 S   0.3  0.0   0:00.57 php-fpm7.0 
    
por rajesh6115 03.04.2018 / 07:03

2 respostas

1

200% não é muito CPU quando você tem 16 núcleos. 200% são dois núcleos completos (entre os 16 que você tem em um r4.4xlarge). Considerando a quantidade de memória que você tem em uso, o MariaDB certamente está aprontando alguma coisa. O fato de você estar usando apenas 2 de seus 16 núcleos, eu diria que você estava utilizando CPU.

Use o utilitário htop para ver melhor o uso dos núcleos pelo mariaDB.

    
por 03.04.2018 / 12:46
0

Houve um erro link . Esse bug foi corrigido. Use a versão mais recente (10.2.13, 10.3.5) e verifique se tudo está OK novamente.

    
por 05.04.2018 / 00:37