10. Data Warehouse: Estado da Arte e Estado da Prática No cenário atual em que as empresas reagem mais rapidamente às mudanças no mercado e, ao mesmo tempo, reduzem suas camadas intermediárias de gerência, as informações tornam-se cada vez mais críticas ao próprio negócio. É necessário construir mecanismos que circulem informações vitais por toda a organização, permitindo a tomada de decisões mais rápidas e certeiras. Alguns segmentos de indústria, como o varejo, bancos, seguros e empresas aéreas e de telecomunicações, fornecem exemplos típicos de obtenção de vantagens competitivas com a aplicação de um data warehouse. Em breve, essa tecnologia vai se tornar uma ferramenta estratégica para a maioria das organizações. Mas o que realmente é um data warehouse? Como toda tecnologia nova (o termo surgiu em 1990), seus conceitos e definições ainda são um tanto fluidos. Muitas vezes, simples e restritos projetos de suporte à decisão (DSS) são apelidados de data warehouse. Mas, uma boa e sucinta definição é: “Data warehouse é um banco de dados voltado para suporte à decisão de usuários finais, derivado de diversos outros bancos de dados operacionais”. Criar um data warehouse não é uma simples questão de tecnologia de bancos de dados ou processadores paralelos. Envolve: planejamento e modelagem, aspectos muitas vezes deixados em segundo plano, mas que garantem a qualidade dos dados, fator crítico para o seu sucesso; a integração de diferentes produtos de software; uma contínua atualização e refinamento. Uma bem desenhada solução de data warehouse objetiva satisfazer as necessidades de análise de informações dos usuários, como monitorar e comparar as operações atuais com as passadas, e prever situações futuras. Ao transformar, consolidar e racionalizar as informações dispersas por diversos bancos de dados e plataformas, permite que sejam feitas análises estratégicas bastante eficazes, em informações antes inacessíveis ou subaproveitadas. Usar os arquivos das aplicações tradicionais, com seus dados operacionais e muitas vezes redundantes, para análises de tendências, é simplesmente impossível. As tecnologias do data warehouse Um data warehouse é um conjunto de diversas tecnologias, como ferramentas de extração e conversão, bancos de dados voltados para consultas complexas, ferramentas inteligentes de prospecção e análise de dados e ferramentas de administração e gerenciamento. Nem todas estão no mesmo nível de evolução tecnológica, sendo que algumas tecnologias ainda são bastante imaturas. Isso dificulta a sua implementação. Não se pode demorar muito, pois a concorrência poderá sair na frente. Por outro lado, algumas tecnologias, por serem ainda imaturas, não nos garantem estabilidade futura. Riscos do negócio... Erroneamente, muitos projetos de data warehouse concentram-se no banco de dados e sua plataforma operacional. Mas as questões da contínua extração de dados das bases de dados operacionais e a administração do ambiente são igualmente importantes. O valor do data warehouse não pode ser medido pela quantidade de dados que armazena, mas sim pelo seu fluxo de informações. Talvez o termo mais correto seja data warehousing (distribuição de informações), e não data warehouse (estoque de informações). Implementando um projeto de data warehouse Um data warehouse não pode, nem deve ser um projeto exclusivo da área de sistemas. O verdadeiro conhecimento das necessidades de análise de informações do negócio está com os usuários. A área de sistemas deve ter o papel de consultor de tecnologia, resolvendo as questões tecnológicas do projeto, como escolha de plataformas e definição das estruturas físicas dos bancos de dados, e obviamente implementar essas soluções. Mas as decisões sobre modelos de dados devem ser dos usuários e dos analistas de negócio. São eles que vão identificar que informações são necessárias e onde obtê-las. Um projeto de data warehouse ainda é uma novidade na maioria das empresas. Portanto, devem ser considerados fatores como curva de aprendizado e inexperiência crônica. Sendo assim, os projetos extremamente ambiciosos, que pretendem abraçar o mundo com as mãos, devem ser repensados. Deve ser implementado gradualmente, sendo constantemente refinado à medida que a área de tecnologia e a própria organização aprendam a usá-lo. Com certeza, alguns problemas inesperados vão aparecer. É comum surgirem gargalos nas plataformas dos bancos de dados operacionais, que não foram configuradas para um aumento significativo no download de dados, geralmente de muitos gigabytes. A própria plataforma do data warehouse pode ter mecanismos ineficientes de backup/restore, o que pode levar a demoras significativas para disponibilizar as queries nos horários adequados. Uma má modelagem inunda os usuários com overdose de dados irrelevantes. Essa é uma área onde a capacitação ainda é bastante escassa. A maior parte dos analistas consegue modelar um processo operacional, como, por exemplo, compras ou contas a pagar, mas responder a questões como “Qual a lucratividade deste produto, no tempo, por revendedor?” exige técnicas diferentes. A modelagem de um data warehouse não é voltada para decomposição funcional, mas para fatos, dimensões e hierarquias entre os dados. O data warehouse deve ser projetado para análises de tendências e prospecções de dados, buscando identificar relacionamentos até então ignorados. A modelagem é crítica ao seu sucesso e deve merecer bastante atenção. Os projetos que não considerarem as diferenças em modelar bancos de dados operacionais e de data warehouse poderão se transformar em fracasso. Além disso, os arquivos operacionais podem conter dados “contaminados”, que devem ser filtrados antes de serem migrados. Se não houver uma filtragem adequada, o data warehouse pode ficar muito “poluído” e inútil. No aspecto tecnologia, um fator muito importante é a escalabilidade. As tecnologias de hardware e software devem permitir o crescimento em volume e consultas de uma maneira bastante significativa. O data warehouse não pode ser planejado como algo relativamente estático, voltado para poucos usuários ou departamentos. Desenvolvendo o projeto Algumas recomendações baseadas em casos de sucesso podem ser usadas. Primeiro, é importante fazer uma auto-análise da capacitação interna. Existe expertise suficiente para implementar com sucesso um data warehouse? Se não, será interessante requisitar ajuda externa. Segundo, não tentar um projeto muito ambicioso. O primeiro projeto não deve levar mais de nove meses para estar operacional. O data warehouse deve ser construído inicialmente nas áreas de negócio mais importantes e que tragam retorno direto e tangível. Com o tempo, deve ser refinado e aumentado em sua abrangência. O projeto deve demonstrar um alto retorno sobre o investimento. Uma empresa só vai se lançar em novas tecnologias se o retorno sobre o investimento e os benefícios forem bastante visíveis. Isso significa possibilidades concretas de redução de custos e melhoria nos resultados do negócio. Um terceiro fator é que o projeto deve ser bastante realista em seus objetivos. Os resultados não devem ser superestimados, nem podem ser considerados como solução para todos os problemas da organização. Adotar um enfoque conservador nas expectativas é uma boa estratégia. A arquitetura deve ser bem desenhada. Isso equivale a um modelo de dados adequado e uma definição de ambiente operacional compatível com a cultura e recursos da organização. A seguir, hardware e software devem ser selecionados. Um erro muito comum é selecionar primeiro as tecnologias e depois projetar o data warehouse. A próxima etapa é desenhar as soluções de extração dos dados. Como e onde obtê-los e que transformações serão necessárias são quesitos importantes. E, finalmente, desenhar as soluções de administração e gerenciamento. Como mantê-lo funcionando, à luz do dinamismo dos negócios e da própria evolução tecnológica? A obsolescência tecnológica deve ser considerada no projeto. Além disso, o budget alocado deve ser o mais preciso possível. Deve incluir todas as ferramentas e as plataformas necessárias, bem como os custos de consultoria e pessoal alocado nas atividades de análise e integração. Geralmente, esses custos são bem maiores que os custos de aquisição das próprias tecnologias. Conclusões Qualquer empresa pode se beneficiar significativamente de um data warehouse. É uma ferramenta que permite fazer análise de tendências e identificar relacionamentos muitas vezes desconhecidos. Com certeza, em tempos de intensa competitividade, é uma ferramenta estratégica. Entretanto, construir um data warehouse não é simplesmente uma atividade técnica, mas principalmente de negócios. A tecnologia permite sua implementação, mas não deve ser a direcionadora do projeto. As soluções tecnológicas devem aparecer depois que o data warehouse for modelado, e não antes. O seu próprio sucesso pode representar um grande risco, sem planejamento adequado. Por exemplo, o crescimento explosivo no número de consultas e no volume de informações pode levar a um verdadeiro colapso do desempenho. Alguns casos relatam crescimento de seis a sete vezes em pouco mais de 18 meses! Autor: Cezar Taurion Biografia: Faz parte do Conselho Editorial da DevMag.