Esses são os principais pontos
que devem ser observados quando da construção de uma base de dados, porque
alguns erros podem simplesmente transformar a performance numa verdadeira
carroça, e acelerar uma carroça pode até funcionar, mas nãos será por muito
tempo que ela vai aguentar o tranco. Vamos ver algumas ações que devemos evitar
para garantir um bom desempenho de nossa base de dados.
#1: Desenho de Estrutura Ruim
Boa parte do sucesso de uma aplicação se
sustenta nos dados que serão providos e nas velocidades em que eles estarão disponíveis.
Por isso é importantíssimo a excelente na construção de uma estrutura do banco
de dados, porque ela será a espinha dorsal para tudo que for construído em
volta, listamos alguns erros que devem ser evitados para garantir um desenho
funcional.
• Normalização Baixa
• Redundância de informações no banco de dados
• Baixa integridade de referência entre tabelas (chaves primárias e estrangeiras)
• Chaves primárias complexas demais (muitos campos)
• Falta de teste de stress no desenho (cenários de crescimento dos dados)
#2: Queries e Códigos Ineficientes
Se você tem uma base sólida e bem construída,
agora chegou a parte de criar as principais estruturas que transportaram e
transformarão os dados, essas partes são muito importantes, porque será através
delas que os dados serão coletados e entregues nas pontas, esses erros devem ser
evitados:
• Utilizar [NOT IN] ou [IN] em vez de [NOT EXISTS] ou [EXISTS]
• Usar cursores ou loop fakes em vez de [INSERT… SELECT] ou [SELECT… INTO TABLE]
• Usar [SELECT *] em vez de apenas os nomes de coluna necessários
• Esquecendo de usar parênteses ao usar operadores lógicos [OR] ou [AND]
• Alinhamento de subconsultas criando um plano de execução complexo
• Usando funções na coluna indexada na cláusula [WHERE]
• Uso excessivo de funções escalares definidas pelo usuário
• Uso desnecessário de [DISTINCT] em qualquer lugar
• SQL dinâmico
#3: Estratégia de Indicies Pobre
Os índices podem ser considerados aceleradores
de um banco de dados, porém a criação, definição e utilização deve ser estudada
e mensurada para que eles possam oferecer ganhos, porque indicies mal
dimensionados à revelia podem acabar tendo um efeito contrário, por isso esses erros
devem ser evitados:
• Indexar todas chaves estrangeiras
• Indexar todas as colunas de uma tabela
• Muitos índices para uma simples coluna
• Preferir tabelas sem índice clusterizado
• Subindexiar suas tabelas
• Não efetuar manutenção dos índices
#4: Baixo Provisionamento de Equipamento
Mesmo que você utilize todas as boas práticas
para a construção do seu banco de dados, nada disso surtirá efeito caso você
não tenha recursos suficientes para as estruturas sejam utilizadas com uma
folga no servidor, ou seja, é importante a metrificação do tamanho do
equipamento ou instância que rodará o banco de dados, entre as principais
métricas CPU, Memória, Espaço em Disco. Os erros listados devem ser evitados a
qualquer custo:
• CPU funcionando mais de 90% constantemente
• 95% da memória sendo utilizadas
• Leitura e escrita (I/O) em disco muito alta
#Conhecimento
A palavra chave para criação de um
banco de dados performático é conhecimento.
Um profissional de TI, deve
continuar aprendendo e se desenvolvendo para ficar à frente de todos os novos
desafios futuros, e através dessas informações poderá aplicar mais práticas
relevantes para melhorar a qualidade final de seu trabalho.
A cada novo dia, novas
ferramentas, metodologias e ferramentas são criadas, sendo disponibilizadas para auxiliar na criação de
melhores soluções.
Mantenha-se atualizado sempre.