pergunta de cluster do MySQL

1
  1. Estou pensando em usar o cluster MySQL, mas estou curioso para saber se ele suporta bancos de dados grandes - em torno de 50 a 60 GB ou qual é o limite (principalmente a contabilidade de telecomunicações da Radius é armazenada).
    1. O que seria arquitetura então (contagem de RAM e servidores)?

Obrigado.

    
por John 28.12.2010 / 16:39

2 respostas

0

Costumava ser que seu banco de dados tinha que caber na memória para usar o cluster MySQL. Eu acredito que agora é o caso que seus índices devem caber na memória, mas os dados podem ser vinculados ao disco. Se você tem memória suficiente em seus servidores (64gb é bem possível), então você está pronto.

O cluster MySQL é um nicho, e acho que na maioria dos casos, existem soluções melhores para problemas. Se você me der mais detalhes, responderei em espécie.

resposta ao primeiro comentário O cluster é um nicho por causa dessas limitações de memória. Muitas vezes, em casos em que a redundância é necessária para algo grande, a velocidade não é. Os requisitos de hardware do cluster são excessivamente exagerados para lidar com inserções de linhas de 5,500 RADIUS por dia. Eu sugiro que você use shard sua configuração. Use o cluster para as entradas atuais e, em seguida, copie-as para um servidor regular que tenha backup normal e tempos de serviço / offline para manipular dados históricos. Isso fornecerá a estabilidade do cluster, garantindo que você não perderá nenhum dado ou sofrerá o tempo de inatividade.

    
por 28.12.2010 / 17:16
2

Um único servidor mysql pode lidar com 50-60GB de dados. Isso realmente depende da configuração do banco de dados e da complexidade das suas consultas.

Quero dizer que você pode fazer o mysql voar escrevendo um aplicativo que não faz junções .. ou você pode fazê-lo rastrear fazendo consultas muito complexas.

Eu iria com um cluster se você quiser redundância fácil antes de tudo.

Editar para a matemática da RAM de cluster

Use a seguinte fórmula para calcular a quantidade de RAM necessária em cada nó de armazenamento:

(Size of database * NumberofReplicas * 1.1) / Number of storage nodes

NumberofReplicas é definido como dois por padrão. Você pode alterá-lo no config.ini, se quiser. Por exemplo, para executar um banco de dados de 4 GB em dois servidores com NumbeOfReplicas definido como dois, você precisa de 4,4 GB de RAM em cada nó de armazenamento. Para os nós SQL e nós de gerenciamento, você não precisa de muita RAM. Para executar um banco de dados de 4 GB em 4 servidores com NumberOfReplicas definido como dois, você precisaria de 2,2 GB por nó.

    
por 28.12.2010 / 16:51