O documento discute o uso do MySQL para gerar relatórios gerenciais sobre falta de materiais em um processo de produção, incluindo informações sobre analistas, grupos de compra, áreas impactadas e status de compras. Ele também fornece lições aprendidas sobre modelagem e otimização de bancos de dados.
3. O relatório
• Controle de falta de material num processo produtivo
• Material é comprado por um analista
• Analista se reportava a uma supervisão
• Faltas eram reportadas pelo chão de fábrica
• Era avaliado o motivo da falta, sua gravidade e status da compra e
prazo de disponibilidade para chão de fábrica
4. Em números
• ~10 mil ocorrências analisadas por semana
• 45 analistas
• 60 grupos de compras
• 5 áreas
• Mais de 80 áreas solicitantes
• 4 níveis de gravidade
• 9 possíveis status (fases do processo de compra)
10. Lições aprendidas
• Avalie se a normalização vai te ajudar ou atrapalhar
• Crie e altere a modelagem conforme a necessidade do projeto
• Considere utilizar views
• Procure utilizar index nos locais corretos
• Entenda o execution plan das queries executadas pela aplicação
Ainda sim foi preciso duas tabelas com agregações para simplificar as queries da aplicação.
Agora todas as combinações de relatórios eram possível pela interface web