Blog

Dimensionamento do banco de dados

No processo de desenvolvimento dos negócios, o volume de dados necessários e as operações com eles aumentam. Em um determinado momento, um servidor não consegue mais lidar com a carga, e então é necessário dimensionar o banco de dados. Como esse processo é realizado?

Dimensionamento vertical

O dimensionamento vertical envolve o aumento da capacidade do servidor. A principal vantagem do método é sua simplicidade. Não há necessidade de reescrever o código ao adicionar capacidade, e é muito mais fácil gerenciar um servidor grande do que um sistema inteiro. Essa também é a principal desvantagem: o dimensionamento dos recursos de um servidor tem limitações de hardware bastante específicas. Também vale a pena considerar o custo dessa solução: um servidor com vários recursos computacionais, na maioria dos casos, é mais caro do que vários servidores menos potentes que oferecem o mesmo desempenho no total.

Escalonamento horizontal

O escalonamento horizontal significa aumentar o desempenho dividindo os dados em vários servidores. Esse método envolve aumentar o desempenho sem diminuir a tolerância a falhas. Há três tipos principais de escalonamento horizontal.

Replicação

Esse termo implica a cópia de dados entre servidores. Ao usar esse método, há dois tipos de servidores: mestre e escravo. O mestre é usado para gravar ou alterar informações, e os escravos são usados para copiar informações do mestre e lê-las. Na maioria das vezes, são usados um mestre e vários escravos, pois geralmente há mais solicitações de leitura do que de alteração. A principal vantagem da replicação é um grande número de cópias de dados. Portanto, se até mesmo o servidor mestre falhar, qualquer outro servidor poderá substituí-lo. No entanto, a replicação não é muito conveniente como mecanismo de dimensionamento. O motivo para isso é a dessincronização e os atrasos na transferência de dados entre os servidores. A replicação é mais frequentemente usada como um meio de fornecer tolerância a falhas em conjunto com outros métodos de dimensionamento.

Particionamento/Seccionamento

Esse método de dimensionamento envolve o particionamento de dados em partes com base em algum recurso. Por exemplo, uma tabela pode ser particionada em duas com base na paridade. O motivo para usar o particionamento é melhorar o desempenho. Isso ocorre porque a pesquisa não é realizada em toda a tabela, mas apenas em uma parte dela. Outra vantagem desse método é a capacidade de excluir rapidamente um fragmento irrelevante da tabela.

Sharding/sharding/segmentação

Sharding é um princípio de design de banco de dados no qual partes de uma tabela são armazenadas separadamente, em diferentes servidores físicos. A fragmentação é a solução mais adequada para operações em grande escala, especialmente quando combinada com a replicação. Mas vale a pena observar que é bastante difícil de organizar, pois a comunicação entre servidores deve ser levada em conta.

Resumo

Devido à criação de sistemas corporativos de alta carga, em que o volume de informações e de usuários cresce a cada dia, a capacidade de dimensionar o sistema é um dos principais fatores na sua seleção. Afinal, se cada estágio do desenvolvimento dos negócios for acompanhado por um longo e complexo processo de otimização do suporte de informações, vale a pena pensar na exatidão da escolha do sistema de informações.

Você ainda tem dúvidas?
Temos um time de consultores especializados nas melhores práticas de mercado
Ao usar este site, você concorda com o uso de cookies