Preparando bancos de dados para o crescimento

databaseFrequentemente atuamos em casos de sites cujo desempenho esta sendo impactado pela lentidão de acesso ao banco de dados. Via de regra, esses problemas ocorrem quando a base de dados cresce demasiadamente ou quando existe um elevado número de transações simultâneas.

A solução tradicional para esses casos é o uso de database cluster. Contudo, essa alternativa tem um custo elevado de licenciamento e manutenção, por isso, só deve ser usada em último caso.

Por outro lado, existem boas práticas de programação que possibilitam cenários de grande escalabilidade do banco de dados. Veja as recomendações a seguir:

  • A principal ação a ser tomada pelo programador do site é a separação dos métodos e escrita e leitura de dados nos scripts. Isso permite a expansão futura com o uso de balanceamento de carga e replicação master/slave.
  • Outra ação recomendada é a segmentação de dados legados que consiste em criar bases adicionais para guardar os dados menos acessados. Nesse modelo, mantém-se na base principal somente as informações mais recentes (ex.: histórico de pedidos de 2012-2013). Já as informações que vão “esfriando” são passadas para bases adicionais (ex.: histórico de pedidos de 2010-2011, e assim por diante). A nível de aplicação, a pesquisa do “histórico de pedidos” pode trazer os resultados mais recentes, seguidos de um link do tipo “Pesquisar pedidos anteriores a 2012”.
  • Existe ainda o modelo de particionamento conhecido como sharding. Ele consiste em dividir os dados em várias bases usando determinados critérios (ex.: base A com informações de usuários, base B com informações de pedidos) e criar uma lógica de programação que decida para qual base direcionar as consultas. Quando se usa sharding, o método de conexão inicial dos scripts passa ser algo como InformaBancoDadosPara(ID_Usuario).

O uso dessas técnicas aliadas à flexibilidade da computação em nuvem permite a expansão contínua da capacidade do banco de dados.

Caso deseje avaliar o melhor cenário para crescimento do seu site, entre em contato conosco.

Gostou desse conteúdo?

Fique atualizado recebendo gratuitamente nossos artigos diretamente no seu email

Também pode lhe interessar

x

Peraí... Você segue uma rotina de backup confiável?

Saiba como manter seus dados seguros, acessíveis e íntegros.

Acesse aqui o seu Guia prático!