Desempenho do banco de dados

Ao projetar um banco de dados, você deve certificar-se de que o banco de dados executa todas as funções importantes correta e rapidamente. Alguns problemas de desempenho podem ser resolvidos depois que o banco de dados estiver em produção. Entretanto, outros problemas de desempenho podem ser resultado de um mau projeto de banco de dados, só podendo ser resolvidos pela alteração da estrutura e projeto do banco de dados.

Ao projetar e implementar um banco de dados, você deve identificar as tabelas grandes no banco de dados e os processos mais complexos que o banco de dados executará. Você também deve reservar consideração especial ao desempenho quando projetar essas tabelas. Além disso, você deve considerar o efeito sobre o desempenho ao aumentar o número de usuários que podem acessar o banco de dados.

Exemplos de alterações de projeto que melhoram desempenho incluem os seguintes:

  • Se a tabela que contém centenas de milhares de linhas precisar ser resumida em um relatório diário, você pode adicionar uma coluna ou colunas à tabela que contém os dados previamente agregados a serem usados apenas para o relatório.

  • Bancos de dados podem ser sobrenormalizados. Isso significa que o banco de dados está definido com várias pequenas tabelas inter-relacionadas. Quando o banco de dados estiver processando os dados nessas tabelas, ele deverá executar muito mais trabalho para combinar os dados relacionados. Esse processamento adicional pode reduzir o desempenho do banco de dados. Nessas situações, desnormalizar o banco de dados ligeiramente para simplificar processos complexos pode melhorar o desempenho.

Considerações de hardware

Geralmente, quanto maior o banco de dados, mais haverá requisitos de hardware. Entretanto, outros fatores determinantes incluem o número de usuários e sessões concorrentes, transferência de transações e os tipos de operações no banco de dados. Por exemplo, um banco de dados que contém dados atualizados não freqüentemente de uma biblioteca escolar em geral tem menos requisitos de hardware que um data warehouse de 1 terabyte que contém informações analisadas com freqüência sobre vendas, produtos e clientes de uma grande empresa. Além dos requisitos de armazenamento em disco, o data warehouse pode exigir mais memória e processadores mais rápidos de modo que mais dados possam ser colocados em cache na memória, dessa maneira a referência a lotes de dados pode ser processada rapidamente.

O subsistema de E/S, ou mecanismo de armazenamento, é o componente principal de qualquer banco de dados relacional e requer mais planejamento. Uma implementação de banco de dados bem-sucedida geralmente requer planejamento cuidadoso nos primeiros estágios de um projeto. Esse planejamento deve incluir a consideração dos seguintes assuntos: