Escolar Documentos
Profissional Documentos
Cultura Documentos
Integração
Esta característica talvez seja a mais importante do DW. É através dela que iremos padronizar uma
representação única para os dados de todos os sistemas que formarão a base de dados do DW. Por
isso, grande parte do trabalho na construção de um DW está na análise dos sistemas transacionais e
dos dados que eles contêm. Esses dados geralmente encontram-se armazenados em vários padrões de
codificação, isso se deve aos inúmeros sistemas existentes nas empresas, e que eles tenham sido
codificados por diferentes analistas. Isso quer dizer que os mesmos dados podem estar em formatos
diferentes. Vejamos agora um exemplo clássico referentes aos gêneros masculino e feminino.
Num sistema OLTP, o analista convencionou que o sexo seria 1 para masculino e 0 para feminino, já em
outro sistema outro analista usou para guardar a mesma informação a seguinte definição, M para
masculino e F para feminino, e por fim outro programador achou melhor colocar H para masculino e M
para feminino. Como podemos ver, são as mesmas informações, mas estão em formatos diferentes, e
isso num DW jamais poderá acontecer. Portanto é por isso que deverá existir uma integração de dados,
convencionando-se uma maneira uniforme de guardarmos os mesmos, e isso gera bastante trabalho, se
forem poucos sistemas transacionais não causará grandes problemas, mas se tiverem muitos então as
coisas ficam um pouco complicadas e bem mais trabalhosas.
Figura 1
Variação no Tempo
Segundo W.H.Inmon, os Data Warehouses são variáveis em relação ao tempo, isso nada mais é do que
manter o histórico dos dados durante um período de tempo muito superior ao dos sistemas
transacionais, vejamos abaixo mais algumas características.
Num DW é normal mantermos um horizonte de tempo bem superior ao dos sistemas transacionais,
enquanto no OLTP mantemos um histórico curto dos dados, no DW guardamos esses dados num
período maior. Isso é bastante lógico porque num sistema transacional a finalidade é de fornecer as
informações no momento exato, já no Data Warehouse, o principal objetivo é analisar o comportamento
das mesmas durante um período de tempo maior. Fundamentados nessa variação, os gerentes tomam
as decisões em cima de fatos e não de intuições.
Seguindo a mesma linha de raciocínio é válido dizer que os dados nos sistemas transacionais estão
sendo atualizados constantemente, cuja exatidão é válida somente para o momento de acesso. Os
dados existentes num DW são como fotografias que refletem os mesmos num determinado momento do
tempo. Essas fotografias são chamadas de snapshots.
A dimensão tempo, sempre estará presente em qualquer fato de um DW, isso ocorre porque, como
falamos anteriormente, sempre os dados refletirão num determinado momento de tempo, e
obrigatoriamente deverá conter uma chave de tempo para expressar a data em que os dados foram
extraídos. Portanto podemos dizer que os dados armazenados corretamente no DW não serão mais
atualizados tendo-se assim uma imagem fiel da época em que foram gerados.
Assim como os dados, é importante frisar que os metadados, também possuem elementos temporais,
porque mantêm um histórico das mudanças nas regras de negócio da empresa. Os metadados são
responsáveis pelas informações referentes ao caminho do dado dentro do DW. Daremos uma definição
melhor sobre metadados mais adiante.
Não Volatilidade
No DW existem somente duas operações, a carga inicial e as consultas dos front-ends aos dados. Isso
pode ser afirmado porque a maneira como os dados são carregados e tratados é completamente
diferente dos sistemas transacionais. Enquanto nesses sistemas temos vários controles e updates de
registros, no DW temos somente inserts e selects de dados. Por exemplo, num sistema de contabilidade
podemos fazer alterações nos registros. Já no DW, o que acontece é somente ler os dados na origem e
gravá-los no destino, ou seja, no banco modelado multidimensional.
Deve-se considerar que os dados sempre passam por filtros antes de serem inseridos no DW. Com isso
muitos deles jamais saem do ambiente transacional, e outros são tão resumidos que não se encontram
fora do DW. "Em outras palavras, a maior parte dos dados é física e radicalmente alterada quando
passam a fazer parte do DW. Do ponto de vista de integração, não são mais os mesmos dados do
ambiente operacional. À luz destes fatores, a redundância de dados entre os dois ambientes raramente
ocorre, resultando em menos de 1 por cento de duplicações", essa definição é dada por Inmon, e é muito
válida.
Localização
Os dados podem estar fisicamente armazenados de três formas:
Num único local centralizando o banco de dados em um DW integrado, procurando maximizar o poder de
processamento e agilizando a busca dos dados. Esse tipo de armazenagem é bastante utilizada, porém
há o inconveniente do investimento em hardware para comportar a base de dados muito volumosa, e o
poderio de processamento elevado para atender satisfatoriamente as consultas simultâneas de muitos
usuários.
Os distribuídos são Data Marts, armazenados por áreas de interesse. Por exemplo, os dados da
gerência financeira num servidor, dados de marketing noutro e dados da contabilidade num terceiro
lugar. Essa pode ser uma saída interessante para quem precisa de bastante performance, pois isso não
sobrecarrega um único servidor, e as consultas serão sempre atendidas em tempo satisfatório.
Armazenados por níveis de detalhes, em que as unidades de dados são mantidas no DW. Pode-se
armazenar dados altamente resumidos num servidor, dados resumidos noutro nível de detalhe
intermediário no segundo servidor e os dados mais detalhados (atômicos), num terceiro servidor. Os
servidores da primeira camada podem ser otimizados para suportar um grande número de acessos e um
baixo volume de dados, enquanto alguns servidores nas outras camadas podem ser adequados para
processar grandes volumes de dados, mas baixo número de acesso.
Para mudar de nível é necessário que ocorra um dos seguintes eventos: os dados são sintetizados,
arquivados ou eliminados.
O processo de sintetização interage no nível mais alto de detalhamento (dados detalhados atuais) para
os níveis seguintes (levemente e altamente resumidos). Quando termina determinado período de tempo
(semana, mês, trimestre, ano), os dados são indexados por estes períodos e armazenados nos seus
respectivos níveis de detalhamento. Para facilitar o acesso aos dados, estes devem estar sintetizados e
indexados de várias maneiras. Portanto, ao mesmo tempo que ocorre o agrupamento por datas, também
pode ocorrer a sintetização por grupos e subgrupos.
Cada nível possui um horizonte de tempo definido para a permanência dos dados. Então o fato de os
dados serem transportados para níveis mais elevados não implica na exclusão do nível anterior. Um
processo denominado processo de envelhecimento ocorre quando este limite é ultrapassado, e portanto
os dados podem ser transferidos para meios de armazenamentos alternativos ou passar de dados
detalhados atuais para dados detalhados antigos.
Tabela 2
Granularidade
Granularidade nada mais é do que o nível de detalhe ou de resumo dos dados existentes num DW.
Quanto maior for o nível de detalhes, menor será o nível de granularidade. O nível de granularidade afeta
diretamente o volume de dados armazenados no DW, e ao mesmo tempo o tipo de consulta que pode
ser respondida.
Quando se tem um nível de granularidade muito alto o espaço em disco e o número de índices
necessários, tornam-se bem menores, porém há uma correspondente diminuição da possibilidade de
utilização dos dados para atender a consultas detalhadas.
A Figura 3 exemplifica o conceito acima, utilizando os dados históricos das vendas de um produto. O
nível de granularidade muito baixo pode ser caracterizado pelo armazenamento de cada uma das
vendas ocorridas para este produto, e um nível muito alto de granularidade seria o armazenamento dos
somatórios das vendas ocorridas por mês.
Figura 3
Com o nível de granularidade muito baixo, é possível responder a praticamente qualquer consulta, mas
uma grande quantidade de recursos computacionais é necessária para responder perguntas muito
específicas. No entanto, no ambiente de DW, dificilmente um evento isolado é examinado, é mais
provável que ocorra a utilização da visão de conjunto dos dados.
Os dados levemente resumidos compreendem um nível intermediário na estrutura do DW, são derivados
do detalhe de baixo nível encontrado nos dados detalhados atuais. Este nível do DW é quase sempre
armazenado em disco. Na passagem para este nível os dados sofrem modificações. Por exemplo, se as
informações nos dados detalhados atuais são armazenadas por dia, nos dados levemente resumidos
estas informações podem estar armazenadas por semanas. Neste nível o horizonte de tempo de
armazenamento normalmente fica em cinco anos e após este tempo os dados sofrem um processo de
envelhecimento e podem passar para um meio de armazenamento alternativo.
Os dados altamente resumidos são compactos e devem ser de fácil acesso, pois fornecem informações
estatísticas valiosas para os Sistemas de Informações Executivas (EIS), enquanto que nos níveis
anteriores ficam as informações destinadas aos Sistemas de Apoio a Decisão (SAD), que trabalham com
dados mais analíticos procurando analisar as informações de forma mais ampla.
O balanceamento do nível de granularidade é um dos aspectos mais críticos no planejamento de um
DW, pois na maior parte do tempo há uma grande demanda por eficiência no armazenamento e no
acesso aos dados, bem como pela possibilidade de analisar dados em maior nível de detalhes. Quando
uma organização possui grandes quantidades de dados no DW, faz sentido pensar em dois ou mais
níveis de granularidade, na parte detalhada dos dados. Na realidade, a necessidade de existência de
mais de um nível de granularidade é tão grande, que a opção do projeto que consiste em duplos níveis
de granularidade deveria ser o padrão para quase todas as empresas.
O chamado nível duplo de granularidade, ilustrado na Tabela 3, se enquadra nos requisitos da maioria
das empresas. Na primeira camada de dados ficam os dados que fluem do armazenamento operacional
e são resumidos na forma de campos apropriados para a utilização de analistas e gerentes. Na segunda
camada, ou nível de dados históricos, ficam todos os detalhes vindos do ambiente operacional. Como há
uma verdadeira montanha de dados neste nível, faz sentido armazenar os dados em um meio alternativo
como fitas magnéticas.
Com a criação de dois níveis de granularidade no nível detalhado do DW, é possível atender a todos os
tipos de consultas, pois a maior parte do processamento analítico dirige-se aos dados levemente
resumidos que são compactos e de fácil acesso. E para ocasiões em que um maior nível de detalhe
deve ser investigado existe o nível de dados históricos. O acesso aos dados do nível histórico de
granularidade é caro, incômodo e complexo, mas caso haja necessidade de alcançar esse nível de
detalhe, lá estará ele.
Business Intelligence
O grande desafio de todo indivíduo que gerencia qualquer processo é a análise dos fatos relacionados a
seu dever. Ela deve ser feita de modo que, com as ferramentas e dados disponíveis, o gerente possa
detectar tendências e tomar decisões eficientes e no tempo correto. Com essa necessidade surgiu então
o conceito de Business Intelligence.
Há milhares de anos atrás, Fenícios, Persas, Egípcios e outros Orientais já faziam, a seu modo,
Business Intelligence, ou seja, cruzavam informações provenientes da natureza, tais como
comportamento das marés, períodos de seca e de chuvas, posição dos astros, para tomar decisões que
permitissem a melhoria de vida de suas comunidades.
A história do Business Intelligence que conhecemos hoje, começa na década de 70, quando alguns
produtos de BI forma disponibilizados para os analistas de negócio. O grande problema era que esses
produtos exigiam intensa e exaustiva programação, não disponibilizavam informação em tempo hábil
nem de forma flexível, e além de tudo tinham alto custo de implantação.
Com o surgimento dos bancos de dados relacionais, dos PC’s e das interfaces gráficas como o
Windows, aliados ao aumento da complexidade dos negócios, começaram a surgir os primeiros produtos
realmente direcionados aos analistas de negócios, qu possibilitavam rapidez e uma maior flexibilidade de
análise.
Os sistemas de BI têm como características:
- Extrair e integrar dados de múltiplas fontes
- Fazer uso da experiência
- Analisar dados contextualizados
- Trabalhar com hipóteses
- Procurar relações de causa e efeito
- Transformar os registros obtidos em informação útil para o conhecimento empresarial
São ferramentas de Business Intelligence:
Data Warehouses
Planilhas Eletrônicas
Geradores de Consultas e Relatórios
EIS
Data Marts
Data Mining
Ferramentas OLAP
Data Mart
A criação de um data warehouse requer tempo, dinheiro e considerável esforço gerencial. Muitas
companhias ingressam num projeto de data warehouse focando necessidades especiais de pequenos
grupos dentro da organização. Estes pequenos armazenamentos de dados são chamados de Data Mart.
Um data mart é um pequeno data warehouse que fornece suporte à decisão de um pequeno grupo de
pessoas.
Algumas organizações são atraídas aos data marts não apenas por causa do custo mais baixo e um
tempo menor de implementação, mas também por causa dos correntes avanços tecnológicos. São elas
que fornecem um SAD customizado para grupos pequenos de tal modo que um sistema centralizado
pode não estar apto a fornecer. Data marts podem servir como veículo de teste para companhias que
desejam explorar os benefícios do data warehouse.
Há um consenso entre os fornecedores de soluções de data warehouse. A idéia é começar pequeno mas
pensando grande. E é o que está acontecendo. Na maioria dos casos, as empresas que optam pelo data
warehouse iniciam o processo a partir de uma área específica da empresa para depois ir crescendo aos
poucos. Mesmo nos casos de “Full Warehouse” ou data warehouse completos - como o da Previdência
Social da Holanda e Noruega - o processo costuma ser organizado a partir dos data marts.
A variação de custo e duração de um projeto de data warehouse depende do tamanho e da infra-
estrutura da base de dados a ser trabalhada e também da necessidade de “poder de fogo” (do quão
estratégico e eficiente tem que ser o sistema para o cliente). Acima de tudo, a empresa tem que saber
identificar quais são os tipos de informações mais valiosos.
O data warehouse pode ser uma decisão estratégica, mas não pode ser encarado com imediatismo, ou
seja, não é apenas algo que se realiza aos poucos, mas também é um processo contínuo de atualização
e consolidação dos dados corporativos. Por isso, os investimentos em um sistema desse tipo não devem
nem podem ser feitos de uma única vez, mas de forma gradual ao longo do tempo.
1.1) A estatística
O Data Mining descende fundamentalmente de 3 linhagens. A mais antiga delas é a estatística clássica.
Sem a estatística não seria possível termos o DM, visto que a mesma é a base da maioria das
tecnologias a partir das quais o DM é construído.
A Estatística Clássica envolve conceitos como distribuição normal, variância, análise de regressão,
desvio simples, análise de conjuntos, análises de discriminantes e intervalos de confiança, todos usados
para estudar dados e os relacionamentos entre eles.
Esses são as pedras fundamentais onde as mais avançadas análises estatísticas se apóiam. E sem
dúvida, no coração das atuais ferramentas e técnicas de DM, a análise estatística clássica desempenha
um papel fundamental.
1.2) Inteligência Artificial
A segunda linhagem do DM é a Inteligência Artificial, ou IA. Essa disciplina, que é construída a partir dos
fundamentos da heurística, em oposto à estatística, tenta imitar a maneira como o homem pensa na
resolução dos problemas estatísticos.
Em função desse “approach”, ela requer um impressionante poder de processamento, que era
impraticável até os anos 80, quando os computadores começaram a oferecer um bom poder de
processamento a preços mais acessíveis.
A IA desenvolveu algumas aplicações para o alto escalão do governo/cientistas americanos, sendo que
os altos preços não permitiram que ela ficasse ao alcance de todos. As notáveis exceções foram
certamente alguns conceitos de IA adotados por alguns produtos de ponta, como módulos de otimização
de consultas para SGBDs.
1.3) Machine Learning
E a terceira e última linhagem do DM é a chamada machine learning, que pode ser melhor descrita como
o casamento entre a estatística e a IA. Enquanto a IA não se transformava em sucesso comercial, suas
técnicas foram sendo largamente cooptadas pela machine learning, que foi capaz de se valer das
sempre crescentes taxas de preço/performance oferecidas pelos computadores nos anos 80 e 90,
conseguindo mais e mais aplicações devido às suas combinações entre heurística e análise estatística.A
machine learning tenta fazer com que os programas de computador “aprendam” com os dados que eles
estudam, tal que esses programas tomem decisões diferentes baseadas nas características dos dados
estudados, usando a estatística para os conceitos fundamentais, e adicionando mais heurística
avançada da IA e algoritmos para alcançar os seus objetivos.
De muitas formas, o DM é fundamentalmente a adaptação das técnicas da Machine Learning para as
aplicações de negócios. Desse modo, podemos descreve-lo como a união dos históricos e dos recentes
desenvolvimentos em estatística, em IA e Machine Learning. Essas técnicas são usadas juntas para
estudar os dados e achar tendências e padrões nos mesmos. Hoje, o DM tem experimentado uma
crescente aceitação nas ciências e nos negócios que precisam analisar grandes volumes de dados e
achar tendências que eles não poderiam achar de outra forma.
2 – Um resumo das principais técnicas de Data Mining
Existem inúmeras ramificações de Data Mining, sendo algumas delas:
REDES NEURAIS
INDUÇÃO DE REGRAS
ÁRVORES DE DECISÃO
ANÁLISES DE SÉRIES TEMPORAIS
VISUALIZAÇÃO
Visão geral das tecnologias de DM
O DM é um campo que compreende atualmente muitas ramificações importantes. Cada tipo de
tecnologia tem suas próprias vantagens e desvantagens, do mesmo modo que nenhuma ferramenta
consegue atender todas as necessidades em todas as aplicações.
Redes Neurais
Essa tecnologia é a que oferece o mais profundo poder de mineração, mas é também a mais difícil de
entender. As redes neurais tentam construir representações internas de modelos ou padrões achados
nos dados, mas essas representações não são apresentadas para o usuário. Com elas, o processo de
descoberta de padrões é tratado pelos programas de DM dentro de um processo “caixa-preta”.
As ferramentas deveriam, contudo, ser construídas para fazer as decisões ficarem visíveis para os
usuários. O problema com esse “approach” é que as decisões são feitas na caixa-preta, o que as faz
inexplicáveis.
Embora seja verdadeiro que as redes neurais apresentem o mais avançado poder de mineração, muitos
analistas de negócio não podem fazer uso delas porque os resultados finais não podem ser explicados.
Bancos MOLAP
Por Daniel Fujiwara
O que aconteceria se um banco de dados contivesse dados sumarizados resultantes de cálculos
matemáticos, estatísticos de tempo e financeiros; além de não possuir relacionamentos?
Bancos de Dados Multidimensionais
Breves Definições:
Banco de dados multidimensional: multidimensional data base (MDB);
Fato: Tabela de valores. Nesta tabela temos os valores que serão analisados no nosso Data
Warehouse/Data Mart;
Ferramenta MOLAP: Ferramenta OLAP que utiliza um MDB;
Ferramenta ROLAP: OLAP que utiliza um Banco de Dados Relacional.
MDB é um banco que dá suporte e otimiza manipulações matemáticas (como quantidade total vendida
em determinado espaço de tempo), financeiras (como cálculos com valores, conversões financeiras),
estatísticas e de tempo (como quantos dias há entre 2 datas, por exemplo). Um MDB oferece um
ambiente muito recomendado para usuários que necessitem habilidade de analisar “fatias” dos dados em
um único local.
Para podermos enxergar de forma um pouco mais didática, veremos abaixo um Data Mart com 3
dimensões em um MDB:
Neste caso acima, temos então uma implementação MOLAP para sua empresa acessar. Cada aresta
representada deste cubo, é uma forma diferente de analisar os dados, a partir de agora em forma de
informação já resumida.
Para acessar a informação, o cliente OLAP informa ao servidor, como por exemplo, as coordenadas:
(Ano=1999; Linha de produto = Luxo; Região = Centro-Oeste)
e o Banco Multidimensional encontra a receita de vendas referentes a essa informação e a envia ao
client que a requisitou.
A escalabilidade dos bancos multidimensionais é outra característica destes. Estes bancos são
projetados para suporte a um número muito grande de usuários simultâneos sem que haja degradação
na sua performance.
Breve Definição:
Agregações ou valores agregados: valores que envolvem uma pré-computação do banco de dados
multidimensional. Uma agregação pode ser um total de vendas de uma determinada região. Estes
valores são encontrados no MDB, não somente desta região, mas também totais de vendas de todas
regiões, totais mensais, anuais, todos anos.
Hierarquia: relação de superioridade entre níveis mais altos em comparação aos mais baixos. À medida
que descemos os níveis hierárquicos, veremos grãos cada vez mais detalhados, enquanto ao
ascendemos nesses níveis temos um detalhamento menor.
Em um MDB, podemos encontrar todos os cálculos que envolvem os valores do MDB (como no exemplo
abaixo). Como conseqüência, as queries quase não requerem processamento algum do servidor. O
processamento no servidor demora na maioria das queries menos de 5 (cinco) segundos, e em quase
todas queries até 10 (dez) segundos.
Agregações
Muitos valores agregados são predefinidos pelo Banco Multidimensional, assim como no exemplo acima.
Cálculos simples como totais de vendas e médias aritméticas já são previstas pelo MDB ao processar as
informações ao configurar a mesma.
A explosão de dados é outra característica marcante do MDB. O número de agregações em um MDB é
uma função principalmente do número de dimensões e dos níveis de hierarquias, os quais influem mais
diretamente no volume de dados que teremos no nosso servidor.
Assim como no exemplo acima o ano de 1999 tem os 4 trimestres, cada um destes terá seus 3 meses
de vendas, cada mês seus dias, até que cheguemos ao grão, seja ele dia, hora, minutos ou ainda
segundos.
Ao ascendermos em uma hierarquia dentro do MDB qualquer, teremos valores cada vez mais
agregados. No exemplo acima a receita de vendas do 1º trimestre de 1999 é um valor que agrega todos
os grãos referentes a esse trimestre, enquanto a receita de vendas de 1999 é um valor que agrega as
receitas de vendas de todos trimestres desse ano.
Utilizando um número médio de agregações, e considerando a complexidade e hierarquias destas,
teremos em média uma explosão de dados com um fator de 240, ou seja, 15Mb de dados brutos se
transformarão em um cubo que necessite de, em média, 3,6GB para administra-lo.
Metadados
Os Metadados são um dos tópicos mais interessantes e , de certa forma, confusos do ambiente do Data
Warehouse. Interessantes por serem os dados de controle de um projeto de DW. Confusos por não
terem uma definição muito clara para a maioria das pessoas. Metadados são dados que fazem
referência a outros dados. Por exemplo, um catalogo telefônico pode ser considerado um catalogo de
metadados por fazer referência a dados pessoais, no caso telefones e nomes. Outro exemplo prático é o
da biblioteca de livros. Quando visitamos uma à procura de algum livro ou de algum autor, fazemos uso
de um catalogo bibliográfico, que contém dados de todos os títulos disponíveis, como autor, editora e
número de páginas.
Todas as fases de um projeto de Data Warehouse, desde a modelagem até a visualização da
informação, geram metadados. Neles estarão contidos informações como atributos das tabelas,
agregadas utilizadas, cálculos necessários, descrições, periodicidade das cargas, histórico de mudançs
etc... .
Existem no mercado ferramentas que já são capazes de armazenar e gerenciar (Sybase Warehouse
Control Center e Prism Warehouse Directory) alguns tipos de metadados, apesar disso ainda não foi
estabelecido um padrão de armazenagem e gerenciamento pelo mercado.
Segundo Inmon, os metadados mantêm informações sobre "o que está e onde," no DW. Tipicamente os
aspectos que sobre os quais os metadados mantêm informações são:
A estrutura dos dados, segundo a visão do programador;
A estrutura dos dados, segundo a visão dos analistas de SAD;
A fonte de dados que alimenta o DW;
A transformação sofrida pelos dados no momento de sua migração para o DW;
O modelo de dados;
O relacionamento entre o modelo de dados e o DW;
O histórico das extrações de dados.
Área de Stage
Esta etapa é uma das fases mais críticas de um Data Warehouse, pois envolve a fase de extração dos
dados dos sistemas transacionais ou de outras fontes (planilhas, arquivos textos), a fase de Filtragem
que consiste basicamente em garantir a integridade dos dados e, por fim, a fase de Carga dos Dados no
Data Warehouse.
Quando os dados são movidos de sistemas transacionais para o ambiente de Data Warehouse, parece
que nada além de simples extrações de dados de um local para o outro está ocorrendo. Em virtude desta
enganosa simplicidade, muitas vezes as empresas acabam perdendo tempo e dinheiro por ter que
refazer toda esta parte de extração.
O processo de carga dos dados passa por três etapas: extração, filtragem e a carga propriamente dita.
Extração
A extração de dados do ambiente operacional para o ambiente de data warehouse demanda uma
mudança na tecnologia. Pois muitas vezes os dados são transferidos de um banco de dados hierárquico,
tal como o ADABAS, para uma nova tecnologia de SGBD para Data Warehouse, tal como o IQ da
Sybase.
A seleção de dados do ambiente operacional pode ser muito complexa, pois muitas vezes é necessário
selecionar vários campos de um sistema operacional para compor um único campo no data warehouse.
Os dados são reformatados. Por exemplo: um campo data do sistema operacional do tipo DD/MM/AAAA
pode ser passado para o outro sistema do tipo ano e mês como AAAAMM .
Podem existir várias fontes de dados diferentes para compor uma informação. Ela pode ser oriunda de
uma planilha excel, enquanto uma outra que serviria para compor um mesmo fato viria de um arquivo
texto.
Quando há vários arquivos de entrada, a escolha das chaves deve ser feitas antes que os arquivos
sejam intercalados. Isso significa que, se diferentes estruturas de chaves são usados nos diferentes
arquivos de entrada, então deve-se optar por apenas uma dessas estruturas.
Os arquivos devem ser gerados obedecendo a mesma ordem das colunas estipuladas no ambiente de
data warehouse.
Podem haver vários resultados. Dados podem ser produzidos em diferentes níveis de resumo pelo
mesmo programa de criação do data warehouse.
Valores padrões devem ser fornecidos. As vezes pode existir um campo no data warehouse que não
possui fonte de dados, então a solução é definir um valor padrão para estes campos.
O data warehouse espelha as informações históricas necessárias, enquanto o ambiente operacional
focaliza as informações correntes.
Filtragem dos Dados
Após a definição de como deverão ficar os dados no data warehouse, há a necessidade de filtragem dos
dados para colocá-los no padrão definido. Por exemplo: Em um sistema operacional eu tenho o campo
de sexo sendo preenchido como F ou M, e em um outro sistema eu tenho este mesmo dado sendo
preenchido com 0 ou 1. É justamente, nesta hora que entra a parte de filtragem, que seria transformar
todos estes dados para o padrão definido, que no exemplo seria F ou M.
Carga dos Dados
A parte de Integridade dos dados. No momento da carga é necessário checar os campos que são
chaves estrangeiras com suas respectivas tabelas para certificar-se de que os dados existentes na
tabela da chave estrangeira estão de acordo com a tabela da chave primária.
Se a tabela deve receber uma carga incremental ou a carga por cima dos dados. A carga incremental
normalmente é feita para tabelas fatos, e a carga por cima dos dados é feita em tabelas dimensões,
onde o analista terá que deletar os dados existentes e incluí-los novamente.
Apesar de existirem ferramentas de Carga como o DTS (Data Transformation Service), ainda tem-se a
necessidade de criar rotinas de carga para atender determinadas situações que poderão ocorrer.
Metodologia de Levantamento
Apesar de serem displicentemente ignoradas em muitos Data Warehouses, as metodologias de
levantamento de dados gerenciais são indispensáveis ao sucesso de um Sistema de Apoio à Decisão
que pretende atender às necessidades do usuário de negócio.
Quando se fala em DW, muitos profissionais da área de TI pensam logo em construir rotinas de extração
de dados dos sistemas legados para posterior carga num modelo dimensional, em detrimento de um
entendimento das necessidades dos entendedores de negócio.
Para tal entendimento, foram criadas metodologias de levantamento de dados Gerenciais, como a JAD
(www.ibm.com) e o DMD (www.owg.com.br) , que são baseadas em reuniões de trabalho, onde os
participantes, orientados por um profissional com prática nesta etapa, extraem conhecimentos sobre o
“negócio”.
Basicamente, as metodologias funcionam através de “Brain Storms” conduzidos por um Facilitador. As
missões dos Departamentos envolvidos (conhecida também como Fator crítico de sucesso), questões
gerenciais e as informações que as respondem são levantadas, originado assim os objetos de negócio.
Além dessas questões e respostas, também são levantadas a ciclicidade e o tempo de permanência dos
dados na base do Data Warehouse.
Necessariamente, ao aplicar a metodologia, a única preocupação é com termos e questões gerenciais.
Alguns profissionais aplicam esta etapa já pensando na base de dados, com suas dimensões e fatos,
causando assim confusão na cabeça dos entendedores do negócio e uma maior possibilidade de falhas
na modelagem posterior.
Em alguns casos, quando aplicada a todos departamentos de uma empresa, a metodologia provoca
fenômenos interessantes como a descoberta de processos e análises redundantes, fazendo com que a
própria corporação seja otimizada.
Portanto, fica clara a necessidade de se implementar uma metodologia de levantamento de dados
gerenciais, antes de se iniciar a implantação física de um Data Warehouse. Além de gerar como produto
um SAD bem estruturado e modelado, esse procedimento também pode ser muito benéfico para a saúde
organizacional da empresa.
FAQ
Estamos colocando em nossa seção de FAQ’s, questões comumente elaboradas por profissionais e
estudantes da área de TI. Envie também suas perguntas, para que possamos enriquecer nosso Site.
Qual a abrangência de um projeto de Data Warehouse? A empresa como um todo? Somente
alguns Departamentos?
Dependendo da demanda do cliente podemos abranger a empresa inteira, ou seja, um Data Warehouse
completo. No caso de apenas alguns departamentos serem contemplados, adotamos a estratégia de
desenvolver Data Mart’s para cada um, mas sempre com a preocupação de compartilhar dados, tabelas,
relatórios em comum entre os departamentos, evitando assim redundância.
Qual a plataforma de hardware? Qual a quantidade de memória principal? E Disco rígido?
Existem vários processadores?
Tudo isso depende do tamanho do projeto. Trabalhamos num projeto de Data Warehouse ,de uma
grande Instituição Financeira brasileira, que utiliza uma máquina Sun com 19 processadores e espaço
alocado em disco para 10 Tera Bytes de Dados. Em outros projetos menores encontramos servidores
Intel-Pentium com 10 Giga de Espaço.
Qual o SGBD utilizado? Alguma razão especial na escolha ?
O melhor SGBD para Data Warehouse do mercado é o Sybase IQ . Ele possui características que
otimizam consultas em até 100 % , dependendo da referência. Outro dado importante é que ele pode
comprimir em até 70 % dados brutos, ou seja, se você enviar um flat-file (arquivo texto oriundo das bases
dos sistemas de origem) de 1 Gb, ele pode comprimir esses dados para até 300 Mb.
Qual o software de extração de informações(data mining)?
A princípio temos que distinguir extração de visualização. Data Mining é uma das técnicas de
visualização e análise de informações. Através dele podemos detectar comportamentos e tendências
que ficam “escondidos” e que só podem ser descobertos através dos algoritmos de Mining. Embora a
técnica de Mining seja a mais famosa no que diz respeito à visualização de dados, ela não é a mais
utilizada. É muito mais comum encontrar softwares OLAP, que possibilitam análise multidimensional e
Drill.Chamamos de extração de dados o ato de coletar dados nos sistemas transacionais (legados) para
posterior adição no Data Warehouse. Para esta tarefa utilizamos outros softwares como o Power Stage
(Sybase) e o DTS (Microsoft).
Qual a ordem do investimento?
Isso depende do tamanho do projeto. Em grandes projetos presenciamos investimento da ordem de até
2 milhões de Reais, isso inclui software, máquina e consultoria. Também encontramos projetos de
pequenos Data Marts, que utilizam principalmente solução Microsoft, onde são gastos no máximo 10 mil
Reais.
Quais os benefícios que a empresa que coloca um Data Warehouse espera obter c/ o projeto?
Lucro: Em cima de uma única decisão, baseada num Data Warehouse bem estruturado, a empresa
pode ter o montante investido retornado. Credibilidade de Dados: Os dados de um Data Warehouse são
devidamente modelados e homologados, dando assim segurança ao analista de negócio.Velocidade:
Com um DW o analista pode ter a informação certa na hora certa.
Quais são as principais dificuldades p/ a condução e evolução do projeto?
Um Data Warehouse é composto por várias variáveis. Podemos citar algumas como Metodologia,
Modelagem, ETL (Extração, Filtragem e Carga), Visualização de Dados, Consultoria, Hardware e
Ferramentas. Cada variável citada acima é extremamente importante, e qualquer falha em cada uma
delas pode levar o projeto à pique.Somos chamados em muitas empresas para consertar erros de
modelagem e para apresentar ferramentas que realmente solucionam o problema dos analistas de
negócios. Portanto, a maior dificuldade é manter a excelência dos serviços em todas as etapas do
projeto, pois todas são vitais.
Quando e quanto tempo leva para ser elaborado?
Um grande Data Warehouse leva de 6 a 12 meses. É importante salientar que os primeiros resultados
devem ser apresentados em 2 ou, no máximo, 3 meses, para que o usuário final possa sentir que o
investimento, geralmente alto, valeu à pena. Outro ponto importante é que, por ser uma ferramenta de
Business Intelligence, um DW deve responder às alternâncias do mundo externo e da própria
corporação, gerando assim o conceito de Data Warehousing, ou seja o Data Warehouse deverá sempre
estar em manutenção e otimização.