Data Warehouse
Origem: Wikipédia, a enciclopédia livre.
Um data warehouse (ou armazém de dados, ou depósito de dados no Brasil) é um sistema de computação utilizado para armazenar informações relativas às atividades de uma organização em bancos de dados, de forma consolidada. O desenho da base de dados favorece os relatórios, a análise de grandes volumes de dados e a obtenção de informações estratégicas que podem facilitar a tomada de decisão.
O data warehouse possibilita a análise de grandes volumes de dados, coletados dos sistemas transacionais (OLTP). São as chamadas séries históricas que possibilitam uma melhor análise de eventos passados, oferecendo suporte às tomadas de decisões presentes e a previsão de eventos futuros. Por definição, os dados em um data warehouse não são voláteis, ou seja, eles não mudam, salvo quando é necessário fazer correções de dados previamente carregados. Os dados estão disponíveis somente para leitura e não podem ser alterados.
A ferramenta mais popular para exploração de um data warehouse é a Online Analytical Processing OLAP ou Processo Analítico em Tempo Real, mas muitas outras podem ser usadas.
Os data warehouse surgiram como conceito acadêmico na década de 80. Com o amadurecimento dos sistemas de informação empresariais, as necessidades de análise dos dados cresceram paralelamente. Os sistemas OLTP não conseguiam cumprir a tarefa de análise com a simples geração de relatórios. Nesse contexto, a implementação do data warehouse passou a se tornar realidade nas grandes corporações. O mercado de ferramentas de data warehouse, que faz parte do mercado de Business Intelligence, cresceu então, e ferramentas melhores e mais sofisticadas foram desenvolvidas para apoiar a estrutura do data warehouse e sua utilização.
Atualmente, por sua capacidade de sumarizar e analisar grandes volumes de dados,o data warehouse é o núcleo dos sistemas de informações gerenciais e apoio à decisão das principais soluções de business intelligence do mercado.
Índice |
[editar] Arquitetura
[editar] O Armazenamento
O armazenamento se dá num depósito único mas que seja de rápido acesso para as análises. Tal armazenamento tem que ser histórico com todos os dados possíveis para que possa se ter uma análise mais bem apurada.
[editar] Modelagem Multidimensional
Os sistemas de base de dados tradicionais utilizam a normalização [1] no formato de dados para garantir consistência dos dados e uma minimização do espaço de armazenamento necessário. Entretanto, algumas transações e consultas em bases de dados normalizadas podem se tornar lentas devido às operações de junção entre tabelas. Um Data Warehouse utiliza dados em formato de-normalizados[2]. Isto aumenta o desempenho das consultas e, como benefício adicional, o processo torna-se mais intuitivo para os utilizadores [3] comuns.
[editar] Metadado
O conceito Metadado é considerado como sendo os "dados sobre dados", isto é, os dados sobre os sistemas que operam com estes dados. Um repositório de metadados é uma ferramenta essencial para o gerenciamento de um Data Warehouse no momento de converter dados em informações para o negócio. Entre outras coisas, um repositório de metadados bem construído deve conter informações sobre a origem dos dados, regras de transformação, nomes e alias, formatos de dados, etc. Ou seja, esse "dicionário" deve conter muito mais do que as descrições de colunas e tabelas: deve conter informações que adicionem valor aos dados.
Tipo de Informação considerada Metadado
Os metadados são utilizados normalmente como um dicionário de informações e, sendo assim, devem incluir:
- ORIGEM DOS DADOS - Todo elemento de dado precisa de identificação, sua origem ou o processo que o gera. Esta identificação é muito importante no caso da necessidade de saber informações sobre a fonte geradora do dado. Esta informação deve ser única, ou seja, cada dado deve ter uma e somente uma fonte de origem.
- FLUXO DE DADOS - Todo elemento de dado precisa ter identificado os fluxos nos quais sofre transformações. É importante saber que dados servem de base para que processos.
- FORMATO DOS DADOS - Todo elemento de dados deve ter identificado seu tamanho e tipo de dado.
- NOMES E ALIAS - Todo elemento de dados deve ser identificado por um nome. Este nome pode ser da Área de Negócios ou um nome técnico. No caso de serem usados alias para os nomes, pode-se ter os dois. Devem existir padrões para criação de nomes e alias (ex.: convenções para abreviações), evitando assim ambigüidades.
- DEFINIÇÕES DE NEGÓCIO - Estas definições são as informações mais importantes contidas nos metadados. Cada elemento de dado deve ser suportado por uma definição do mesmo no contexto da Área de Negócio. O método de manutenção destas informações também deve ser muito consistente, de forma que o usuário possa obter facilmente definições para as informações desejadas. Nestas definições devem ser evitadas referências a outros metadados que necessitem de uma segunda pesquisa para melhor entendimento.
- REGRAS DE TRANSFORMAÇÃO - São consideradas como sendo as Regras de Negócio codificadas. Estas regras são geradas no momento da extração, limpeza e agrupamento dos dados dos Sistemas Operacionais. Cada regra de transformação codificada deve estar associada a um elemento de Metadado. Se mais de uma aplicação contiver a mesma regra de transformação, deverá ser garantido que estas sejam idênticas.
- ATUALIZAÇÃO DE DADOS - O histórico das atualizações normalmente é mantido pelo próprio banco de dados, mas definir um elemento de metadado, indicando as datas de atualização dos dados, pode ajudar o usuário no momento de verificar a atualidade dos dados e a consistência da dimensão tempo do Data Warehouse.
- REQUISITOS DE TESTE - Identifica os critérios de julgamento de cada elemento de dado. Valores possíveis e intervalos de atuação. Deve conter também padrões para procedimentos de teste destes dados.
- INDICADORES DE QUALIDADE DE DADOS - Podem ser criados índices de qualidade baseados na origem do dado, número de processamentos feito sobre este dado, valores atômicos X valores sumariados [4], nível de utilização do dado, etc.
- TRIGGERS AUTOMÁTICOS - Podem existir processos automáticos associados aos metadados definidos. Estes processos ou triggers devem estar definidos de forma que possam ser consultados por usuário e desenvolvedores, para que os mesmos não venham a criar situações conflitantes entre as regras definidas nestes processos.
- RESPONSABILIDADE SOBRE INFORMAÇÕES - Deve ser identificado o responsável por cada elemento de dados do Data Warehouse e também o responsável pela entrada de metadados.
- ACESSO E SEGURANÇA - Os metadados devem conter informação suficiente para que sejam determinados os perfis de acesso aos dados. Deve-se poder identificar que usuários podem ler, atualizar, excluir ou inserir dados na base. Deve haver, também, informações sobre quem gerencia estes perfis de acesso e como se fazer contato com o Administrador da Base de Dados.
Data Marts
O Data Warehouse é normalmente acedido [5] através de Data Marts, que são pontos específicos de acesso a subconjuntos do Data Warehouse. Os Data Marts são construídos para responder prováveis perguntas de um tipo específico de usuário [6]. Por exemplo: um Data Mart financeiro poderia armazenar informações consolidadas dia-a-dia para um usuário gerencial e em periodicidades maiores (semana, mês, ano) para um usuário no nível da diretoria. Um Data Mart pode ser composto por um ou mais cubos de dados.
Hoje em dia, os conceitos de Data warehouse e Data Mart fazem parte de um conceito muito maior chamado de Corporate Performance Management.
[editar] Extração de Dados
Os dados introduzidos num Data Warehouse geralmente passam por uma área conhecida como área de stage. O stage de dados ocorre quando existem processos periódicos de leitura de dados de fontes como sistemas OLTP. Os dados podem passar então por um processo de qualidade, de normalização [7] e gravação dos dados no Data Warehouse. Esse processo geralmente é realizado por ferramentas ETL.
[editar] Ferramentas
[editar] OLAP
As ferramentas OLAP (do inglês, Online Analytical Processing) são geralmente desenvolvidas para trabalhar com banco de dados de-normalizados[2], embora existam ferramentas que trabalham com esquemas especiais de armazenamento, com dados (informações) normalizados.
Essas ferramentas são capazes de navegar pelos dados de um Data Warehouse, possuindo uma estrutura adequada tanto para a realização de pesquisas como para a apresentação de informações.
Nas ferramentas de navegação OLAP, é possível navegar entre diferentes níveis de granularidades (detalhamento) de um cubo de dados. Através de um processo chamado Drill o usuário pode aumentar (Drill down[8]) ou diminuir (Drill up[9]) o nível de detalhamento dos dados. Por exemplo, se um relatório estiver consolidado por países, fazendo um Drill down[8], os dados passarão a ser apresentados por Estados, cidades, bairros e assim sucessivamente até o menor nível de detalhamento possível. O processo contrário, o Drill up[9], faz com que os dados sejam consolidados em níveis superiores de informação.
Outra possibilidade apresentada pela maioria das ferramentas de navegação OLAP é o recurso chamado Slice and dice. Esse recurso é usado para criar visões dos dados por meio de sua reorganização, de forma que eles possam ser examinados sob diferentes perspectivas.
O uso de recursos para manipular, formatar e apresentar os dados de modo rápido e flexível é um dos pontos fortes de um data warehouse. Essa característica faz com que a apresentação de relatórios na tela[10] seja mais comum do que imprimi-los. Além disso, o usuário[11] tem liberdade para examinar as informações que quiser de diversas maneiras e, ao final, pode imprimir e até mesmo salvar as visões mais importantes para uma futura consulta.
[editar] Data mining
Data mining, ou mineração de dados, é o processo de descoberta de padrões implícitos existentes em grandes massas de dados. Apesar de existirem ferramentas que ajudam na execução do processo, o Data mining não tem automatização simples (muitos discutem se é sequer factível) e precisa ser conduzido por uma pessoa, preferencialmente com formação em Estatística ou áreas afins.
[editar] Exemplo teórico
Um site de vendas quer que quando seu cliente entre no site ele veja produtos similares ao que ele já havia comprado ou olhado. Então ele deverá armazenar o trajeto do cliente pelo site para que consiga traçar o perfil do cliente.
Notas
- ↑ No Brasil, pode-se usar também o termo "padronização"
- ↑ 2,0 2,1 Formato livre, sem padrão definido. No Brasil, é comum usar o termo "desnormalizados"
- ↑ No Brasil,usa-se o termo "usuário"
- ↑ No Brasil, o termo equivale a "sintetizados".
- ↑ No Brasil, esse termo não é usado. O termo usado é "acessado"(do verbo acessar).
- ↑ Em Portugal, o termo usado é "utilizador".
- ↑ Mudança de padrão ou norma de organização.
- ↑ 8,0 8,1 Detalhar, expor minuciosamente
- ↑ 9,0 9,1 sumarizar, condensar, resumir
- ↑ em Portugal:Ecran
- ↑ em Portugal: utilizador
[editar] Referências
- Carlos Pampulim Caldeira [1]
- Ralph Kimball