Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

O InnoDB (MySQL 5.5.8) é a escolha certa para vários bilhões de linhas?


Uma resposta simples para sua pergunta seria sim InnoDB seria a escolha perfeita para um conjunto de dados de vários bilhões de linhas.

Há uma série de otimização que é possível.

As otimizações mais óbvias seriam definir um grande buffer pool, pois o buffer pool é a coisa mais importante quando se trata de InnoDB porque o InnoDB armazena os dados em buffer, bem como o índice no buffer pool. Se você tem um servidor MySQL dedicado com apenas tabelas InnoDB, então você deve configurar até 80% da RAM disponível para ser usada pelo InnoDB.

Outra otimização mais importante é ter índices adequados na tabela (tendo em mente o padrão de acesso/atualização de dados), tanto primário quanto secundário. (Lembre-se de que os índices primários são anexados automaticamente aos índices secundários).

Com o InnoDB, existem algumas vantagens extras, como proteção contra corrupção de dados, recuperação automática, etc.

Quanto ao aumento do desempenho de gravação, você deve configurar seus arquivos de log de transações para um total de 4G.

Outra coisa que você pode fazer é particionar a tabela.

Você pode obter mais desempenho, definindo o formato bin-log como "row" e definindo o auto_inc_lock_mode como 2 (isso garantirá que o innodb não mantenha bloqueios de nível de tabela ao inserir em colunas de incremento automático).

Se você precisar de algum conselho específico, pode entrar em contato comigo, estarei mais do que disposto a ajudar.