SlideShare uma empresa Scribd logo
Business Intelligence 
1 
Data Warehouse 
2 ETL 
4 Tabela de Fatos 
5 Tabela de Dimensão 
6 Star Schema 
7 Snowflake Schema 
8 Outros tipos de Dimensão 
10 CRM 
21 OLAP 
22
1. BUSINESS INTELLIGENCE 
Em 1958, um pesquisador da IBM, Hans Peter Luhn definiu Business Intelligence como a habilidade de entender as relações entre os fatos apresentados de forma a orientar a ação em direção a um objetivo desejado. 
Em 1989, Howard Dresner, futuro analista do Gartner Group, definiu Business Intelligence como sendo conceitos e métodos para melhorar o processo de tomada de decisão usando sistemas de apoio baseados em fatos. 
EM resumo, B.I. é um conjunto de teorias, metodologias, tecnologias, processos e arquiteturas que transformam dados brutos em informação útil e significativa, mais do que isso, transformam informação em conhecimento. 
B.I. é usado para diversos propósitos, como: 
 Medição de desempenho e progresso de benchmarking para os objetivos de negócio; 
 A análise quantitativa por meio de análise preditiva, modelagem preditiva, modelagem de processos de negócios e a análise estatística; 
 Reportagem de perspectivas departamentais / divisional e da empresa de visualização de dados, EIS e OLAP; 
 Programas de colaboração que permitem que as entidades de negócios internos e externos para colaborar através de intercâmbio eletrônico de dados (EDI) e compartilhamento de dados; 
 Uso de programas de gestão do conhecimento para identificar e criar idéias e experiências de aprendizagem; 
 gestão e conformidade regulatória; 
Com B.I. é possível manipular enormes quantidades de dados, coletando, organizando e análisando as informações neles contidas para prover suporte à gestão de negócios. Para isso, é necessário que dados provindos de diversas fontes sejam armazenados de forma centralizada, em um Data Warehouse.
2. DATA WAREHOUSE 
Data Warehouse é um banco cujos dados provindos de diversas fontes que passam pelo processo de Extração, Transformação e Carga, tornando estes organizados para melhor análise. 
O DW é a base dos sistemas de B.I., ele é dividido em quatro elementos bácisos: 
2.1. Sistemas Operacionais 
Todos os Sistemas Transacionais e/ou Sistemas Legados que registram transações na organização, cujos dados serão coletados para o DW. 
2.2. Staging Area 
É um repositório temporário, fora dos limites dos usuários, onde os dados provindos de diversos sistemas serão corrigidos, padronizados e organizados para então serem carregados no DW ou Data Marts. Esse processo é importante, pois como os dados vêm de diversas fontes, podem estar sendo representados com unidades de medidas ou moedas diferentes. 
Levando em consideração que a Staging Area apenas faz a limpeza, organização e padronização dos dados, ela poderia ser descartada, sendo assim os dados seriam “preparados” em tempo real e enviados diretamenta para o DW. Porém, existem algumas dificuldades para se fazer isso, por exemplo: 
 É necessário enviar para o DW dados de duas tabelas em dois bancos de dados fisicamente diferentes. Não é possível fazer uma query que retorne esse resultado, sendo assim esses dados são extraídos para a Staging Area, onde essa query é, então, possível; 
 O processo ETL envolve transformações complexas que exigem espaço extra para que esses dados sejam temporariamente armazenados durante essas operações. 
Por outro lado: 
 Aumenta a latência, que é o tempo necessário para uma mudança nos sistemas de origem ocorra no DW, sendo assim, aplicações em tempo real geralmente evitam o uso da Staging Area;
 E por último, a Staging Area ocupa espaço extra. 
Ainda assim, os benefícios gerados pela Staging Area superam seus pontos negativos. 
2.3. Área de Apresentação 
A área de apresentação é composta por Data Marts, que são bases de dados consolidadas orientadas à assuntos específicos como vendas ou movimentação de estoque. Os dados em um Data Mart não são normalizados, o que proporciona melhor performance. O fato de os dados serem desnormalizados, diminui a quantidade de tabelas que, consequentemente, diminui a quantidade de JOINs deixando as pesquisas menos complexas e mais eficientes. 
A Área de Apresentação é acessada pelos usuários por meio de diversas ferramentas de pesquisa, aplicações analíticas e geradores de relatórios, entre outros. 
2.4. Ferramentas de Acesso 
Podem ser simples ferramentas de pesquisa, geradores de relatórios, aplciações analíticas ou mesmo sofisticadas aplicações para mineiração de dados.
3. ETL 
ETL (Extract, Transform, Load) é o processo de coletar dados de diversas fontes dentro do ambiente organizacional, transformar esses dados de forma a padronizá-los e por fim fazer sua carga em um Data Mart ou Data Warehouse. 
O processo de Extração basicamente coleta dados de diferentes sistemas. 
O processo de Transformação realiza atividades como: 
 Traduzir dados codificados (Ex.: os dados de gênero coletados indicam 1 para masculino e 2 para feminino, mas o DW armazena como M e F); 
 Derivar um valor (Ex.: deve-se armazenar o valor total da venda, mas os dados coletados são quantidade vendida e preço unitário, sendo assim multiplica-se os dois para gerar o dado desejado); 
 Agrupar dados semelhantes e evitar duplicatas; 
 Agregação (Ex.: resumir dados de vendas em vendas totais por loja ou vendas totais por região); 
 Gerar chaves substitutas (Surrogate Keys); 
 Identificar Slowly Changing Dimensions; 
O processo de Carga envia dados para o seu destino, onde serão mantidos de forma centralizada para facilitar o acesso e análise. E como o processo de carga interage diretamente com um banco de dados, as constraints(restrições) nesse banco também vão contribuir para a melhora na qualidade desses dados.
4. TABELA DE FATOS 
A tabela de fatos consiste de medidas, métricas ou fatos de um determinado processo de negócio. Ela é localizada no centro de um Star Schema ou Snowflake Schema. 
4.1. Composição 
Nela há dois tipos de colunas, fatos e dimensões. Os fatos pode ser do tipo aditivo, os quais podem ser somados através de qualquer dimensão, como por exemplo as vendas, que são aditivas por produto, período ou loja, semi-aditivo, que podem ser somados através de algumas dimensões, como funcionários que são aditivos por departamento e não por tempo, e não-aditivo, que não podem ser somados através de nenhuma dimensão, como porcentagens. 
Há também um tipo de tabela que pode não conter nenhum tipo de medida ou fato, ela é chamada de tabela sem fatos. Ela é composta apenas por chaves estrangeiras para tabelas de dimensão e pode ser usada para registrar eventos, como a frequência de estudantes em um colégio, onde a tabela consistiria do ID do estudante, ID da aula e ID do horário. Aqui você poderia verificar as aulas em que determinado estudante esteve presente, mas não haveria nenhum dado que pudesse ser resumido através dessas dimensões. 
As colunas de dimensão constituem a chave primária da tabela de fatos, elas são chaves estrangeiras das tabelas de dimensão definidas por uma surrogate key (chave substituta), o que diminui consideravelmente o tamanho da tabela de fatos, pois dados de texto, as vezes até extensos, são substituidos por um simples valor numérico. 
4.2. Tipos Fundamentais 
Transactional 
É a mais básica, sua granularidade é geralmente uma linha por transação, como, por exemplo, uma linha em uma ordem de compra, que consiste no produto, preço unitário e quantidade. 
Periodic Snapshot 
Registra uma imagem, ou o estado de determinado processo em um momento específico, como saldo bancário ou nível de estoque ao fim do mês.
Accumulating Snapshot 
Cada linha representa o ciclo de vida de um processo, por exemplo, uma ordem, desde sua criação até o processamento completo, ou um processo de admissão. Esse tipo de tabela é composto por diversas dimensões de data, onde cada um delas representa o momento em que determinada fase do processo foi concluída, sendo assim, quando uma fase estiver concluída, a linha desse registro na tabela de fatos deve ser visitada e atualizada.
5. TABELA DE DIMENSÃO 
Ao contrátrio das tabelas de fatos, as tabelas de dimensão contem atributos descritivos, geralmente campos de texto, que são usados para filtrar pesquisas e rotular relatórios. Seus valores devem ser verbosos, descritivos, completos, sem códigos ou abreviações. Elas são identificadas por um valor numérico (surrogate key), o que proporciona uma melhor performance nas pesquisas, evita transtornos causados por códigos que eventualmente são reusados por sistemas operacionais e auxilia na integração de dados originados de diferentes fontes. 
Uma tabela de dimensão com poucos atributos, embora fácil de dar manutenção, resulta na necessidade de combinar diversas tabelas ao fazer uma pesquisa, deixando as queries mais complexas. 
5.1. Dimensões Conformadas 
O objetivo de uma tabela de dimensão é prover padronização, uma dimensão conformada pode ser compartilhada através do ambiente do Data Warehouse da empresa, possibilitando a junção de diversas tabelas de fatos que representam diferentes processos de negócio. 
Dimensões conformadas proporcionam: 
 Consistência – todas as tabelas de fatos são rotuladas igualmente; 
 Integração – é possível pesquisar diferentes tabelas de fatos e então combinar os resultados com atributos de dimensões conformadas; 
 Eficiência – dimensões comuns estão sempre disponíveis, sem a necessidade de recriá-las. 
5.2. Slowly Changing Dimensions 
Com o tempo, determinado atributo em uma tabela de dimensão pode mudar, esse fenômeno é chamado de Slowly Changing Dimensions por Kimball. Existem três estratégias para lidar com esse tipo de mudança: 
1. Sobrescrever o campo; 
2. Adicionar uma nova linha com o novo valor, mantendo as duas versões, porém distinguindo-as com números de versão, ou datas de início e fim, sendo que na última, a data de fim será nula;
3. Criar um novo atributo, que será uma coluna a mais na tabela de fatos, o valor antigo pode ser descrito como valor original, e o novo como valor atual;
6. STAR SCHEMA 
Um esquema estrela é composto por uma tabela de fatos em seu centro e diversas tabelas de dimensão ao redor dela. 
Esse modelo vai representar um evento, como, por exemplo, uma venda, onde a tabela de fatos, no centro, indica preços e quantidades, enquanto as tabelas de dimensão descrevem a venda, indicando modelo do produto, cor do produto, vendedor responsável, loja onde ocorreu a venda, entre outros. 
O Star Schema é desnormalizado, gerando benefícios como: 
Queries mais simples 
Pelo fato da não-normalização, os número de tabelas é menor, o que proporcia a capacidade de construir queries mais simples para fazer junções. 
Agregações mais rápidas 
As queries mais simples em um Star Schema resultam em melhor performance nas operações de agregação. 
Imagem 1
7. SNOWFLAKE SCHEMA 
O Snowflake Schema é uma variação do Star Schema, onde as tabelas de dimensão são normalizadas. Essa normalização é realizada removendo-se dados redundantes e formando novas tabelas. 
Exemplo: 
Uma dimensão de data que consiste em Ano, Mês e Dia, é dividida em três tabelas, onde a tabela Ano é conectada à tabela Mês, que é conectada à tabela Dia, respectivamente. 
7.1. Vantagens e Desvantagens 
Embora esse modelo aumente o número de tabelas deixando as queries mais complexas, ele proporciona mais velocidade de resposta nas pesquisas. 
Imagem 2
8. OUTROS TIPOS DE DIMENSÃO 
8.1. Degenerate Dimension 
É um atributo de dimensão localizado na tabela de fatos que não possui tabela de dimensão própria. São chaves naturais como números de ordens, tickets ou transações de cartões de crédito. Cada transação tem várias linhas, porém, apenas um código que a identifica, e como não há necessidade de criar uma tabela específica para esse valor, ele é adicionado a tabela de fatos, podendo ser usado para agrupar registros de uma mesma transação. 
8.2. Role-Playing Dimension 
Refere-se à uma dimensão que tem diversas funções em uma mesma tabela de fatos. O exemplo mais utilizado é o da dimensão de data, que pode, em uma tabela de fatos de ordem, representar data de criação da ordem, data de embarque, data prevista para entrega, data efetiva da entrega, etc. Sendo assim, a tabela de fatos tem várias chaves estrangeiras referentes à data, porém elas não apontam para a tabela de dimensão, e sim para Views dela, que representam a data de cada etapa do processamento da ordem. 
8.3. Minidimension 
Uma tabela de dimensão que contém atributos que mudam com frequência pode crescer descontrolavelmente se essas mudanças forem realizadas com o Tipo 2 usado na Slowly Changing Dimension. Para evitar que isso aconteça, a dimensão em questão é dividida em minidimensões (as quais são referenciadas por uma Chave Estrangeira na tabela de fatos), onde cada uma dessas minidimensões vai conter os atributos que mudam com frequência. 
8.4. Outrigger 
Uma Outrigger é usada quando uma dimensão é normalizada. Sendo assim, ela contem atributos que são compartilhados por mais de uma dimensão. A diferença em uma Outrigger é uma Minidimension é que a Outrigger é referenciada por uma chave estrangeira nas tabelas de dimensão, e a Minidimension é referenciada por uma chave estrangeira nas tabelas de fato.
8.5. Junk Dimension 
Uma Junk Dimension pode ser comparada à uma gaveta onde se guarda diversos objetos que, devido a suas quantidades, não há necessidade de fornecer locais próprios para armazená-los, como, por exemplo, clips de papel, fitas adesivas, canetas, entre outros. Sendo assim, a Junk Dimension vai conter atributos como indicadores(sim/não,verdadeiro/falso), comentários opcionais, e outros. Considerando que ela tenha três atributos, a tabela de fatos teria uma diminuição em suas chaves estrangeiras de N para (N – 2), pois as 3 chaves que indicavam dimensões agora agrupadas em uma Junk Dimension, vão se resumir à uma chave apenas. Benefícios gerados são a diminuição do número de dimensões e a diminuição da largura da linha na tabela de fatos.
10. IMAGENS 
 Imagem 1: 
http://pic.dhe.ibm.com/infocenter/dzichelp/v2r2/topic/com.ibm.db2z10.doc.perf/src/tpc/db2z_starschemaaccess.htm 
 Imagem 2: 
http://docs.oracle.com/cd/E05553_01/books/admintool/images/10AS_SnowflakeSchema_V.png 
11. REFERÊNCIAS 
 https://pt.wikipedia.org/wiki/Intelig%C3%AAncia_empresarial 
 https://en.wikipedia.org/wiki/Analytic_applications 
 https://blogs.oracle.com/bibrasil/entry/oracle_olap_option_ou_ essbase 
 http://www.slideshare.net/jsbi/introduction-to-data- warehousing?from_search=1 
 http://www.1keydata.com/datawarehousing/snowflake- schema.html 
 http://en.wikipedia.org/wiki/Snowflake_schema 
 http://en.wikipedia.org/wiki/Star_schema 
 http://dylanwan.wordpress.com/bi-and-olap-glossary/role- playing-dimension/ 
 http://litolima.com/2010/01/13/etl-extracao-transformacao-e- carga-de-dados/ 
 http://www.dwbiconcepts.com/etl/27-basic-etl-concepts/137- why-do-we-need-staging-area-during-etl-load.html 
 http://www.1keydata.com/datawarehousing/factless-fact- table.html 
 http://my.safaribooksonline.com/book/web- development/silverlight/9781430230601/business-intelligence- 2dot0-defined/comparison_of_business_intelligence_1.0

Mais conteúdo relacionado

PDF
Data warehouse & data mining
PDF
Business objects data services in an sap landscape
PPTX
Rute, Deus trabalha pela família - Lição 08 - 4ºTrimestre 2016
DOCX
Modelo tcc anhanguera
PPTX
por_detras_dos_relatorios
DOCX
Conceitos Tabelas Fatos e Dimensões no BI
PDF
Data warehouse & olap
PDF
Apresentação de Introdução ao business intelligence
Data warehouse & data mining
Business objects data services in an sap landscape
Rute, Deus trabalha pela família - Lição 08 - 4ºTrimestre 2016
Modelo tcc anhanguera
por_detras_dos_relatorios
Conceitos Tabelas Fatos e Dimensões no BI
Data warehouse & olap
Apresentação de Introdução ao business intelligence

Semelhante a Data Warehouse (20)

DOCX
Business Intelligence com o microsoft sql server
PDF
Oficina Pentaho
PPTX
Data warehouse
PPTX
Data Warehouse
PDF
Glossario_de_Business_Intelligence - Guia Pratico
PPT
Introdução ao BI
PPTX
Conceitos gerais de etl - Qlikview
PPT
Integração dados prática ppt
PPT
Apresentação de Business Intelligence
PPTX
Capitulo 04 sofisticados sistemas para buscar informações
PDF
Business Analytics
PPT
Kimball_Cap04.ppt
PPTX
Bi microsoft & pentaho
PDF
Sistema de informação executiva área de vendas
PDF
2 artigo workap3 impresso
PDF
Datawarehouse
PDF
Oltp artigo 1
PPTX
Data Warehouse
PDF
Business Intelligence e Mídias Sociais
PDF
Pg20235 rf20222vp20208
Business Intelligence com o microsoft sql server
Oficina Pentaho
Data warehouse
Data Warehouse
Glossario_de_Business_Intelligence - Guia Pratico
Introdução ao BI
Conceitos gerais de etl - Qlikview
Integração dados prática ppt
Apresentação de Business Intelligence
Capitulo 04 sofisticados sistemas para buscar informações
Business Analytics
Kimball_Cap04.ppt
Bi microsoft & pentaho
Sistema de informação executiva área de vendas
2 artigo workap3 impresso
Datawarehouse
Oltp artigo 1
Data Warehouse
Business Intelligence e Mídias Sociais
Pg20235 rf20222vp20208
Anúncio

Último (20)

PPTX
Aula 18 - Manipulacao De Arquivos python
PPTX
Curso de Java 9 - (Threads) Multitarefas.pptx
PPTX
Curso de Java 15 - (Uso de Servlets (Entendendo a Estrutura)).pptx
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PPTX
Curso de Java 17 - (JEE (Sessões e Cookies)).pptx
PPTX
Curso de Java 16 - (JEE (Utilizando o Padrão MVC)).pptx
PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PPTX
Curso de Java 14 - (Explicações Adicionais (Classes Abstrata e Interface)).pptx
PPTX
Curso de Java 10 - (IO Manipulação de Arquivos).pptx
PPTX
Curso de Java 11 - (Serializable (Serialização de Objetos)).pptx
PPTX
Curso de Java 12 - (JDBC, Transation, Commit e Rollback).pptx
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PPTX
Aula sobre banco de dados com firebase db
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PDF
Apple Pippin Uma breve introdução. - David Glotz
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PPTX
Aula sobre desenvolvimento de aplicativos
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
PPTX
Émile Durkheim slide elaborado muito bom
Aula 18 - Manipulacao De Arquivos python
Curso de Java 9 - (Threads) Multitarefas.pptx
Curso de Java 15 - (Uso de Servlets (Entendendo a Estrutura)).pptx
Custos e liquidação no SAP Transportation Management, TM130 Col18
Curso de Java 17 - (JEE (Sessões e Cookies)).pptx
Curso de Java 16 - (JEE (Utilizando o Padrão MVC)).pptx
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
Curso de Java 14 - (Explicações Adicionais (Classes Abstrata e Interface)).pptx
Curso de Java 10 - (IO Manipulação de Arquivos).pptx
Curso de Java 11 - (Serializable (Serialização de Objetos)).pptx
Curso de Java 12 - (JDBC, Transation, Commit e Rollback).pptx
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Aula sobre banco de dados com firebase db
COBITxITIL-Entenda as diferença em uso governança TI
Apple Pippin Uma breve introdução. - David Glotz
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Aula sobre desenvolvimento de aplicativos
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Émile Durkheim slide elaborado muito bom
Anúncio

Data Warehouse

  • 1. Business Intelligence 1 Data Warehouse 2 ETL 4 Tabela de Fatos 5 Tabela de Dimensão 6 Star Schema 7 Snowflake Schema 8 Outros tipos de Dimensão 10 CRM 21 OLAP 22
  • 2. 1. BUSINESS INTELLIGENCE Em 1958, um pesquisador da IBM, Hans Peter Luhn definiu Business Intelligence como a habilidade de entender as relações entre os fatos apresentados de forma a orientar a ação em direção a um objetivo desejado. Em 1989, Howard Dresner, futuro analista do Gartner Group, definiu Business Intelligence como sendo conceitos e métodos para melhorar o processo de tomada de decisão usando sistemas de apoio baseados em fatos. EM resumo, B.I. é um conjunto de teorias, metodologias, tecnologias, processos e arquiteturas que transformam dados brutos em informação útil e significativa, mais do que isso, transformam informação em conhecimento. B.I. é usado para diversos propósitos, como:  Medição de desempenho e progresso de benchmarking para os objetivos de negócio;  A análise quantitativa por meio de análise preditiva, modelagem preditiva, modelagem de processos de negócios e a análise estatística;  Reportagem de perspectivas departamentais / divisional e da empresa de visualização de dados, EIS e OLAP;  Programas de colaboração que permitem que as entidades de negócios internos e externos para colaborar através de intercâmbio eletrônico de dados (EDI) e compartilhamento de dados;  Uso de programas de gestão do conhecimento para identificar e criar idéias e experiências de aprendizagem;  gestão e conformidade regulatória; Com B.I. é possível manipular enormes quantidades de dados, coletando, organizando e análisando as informações neles contidas para prover suporte à gestão de negócios. Para isso, é necessário que dados provindos de diversas fontes sejam armazenados de forma centralizada, em um Data Warehouse.
  • 3. 2. DATA WAREHOUSE Data Warehouse é um banco cujos dados provindos de diversas fontes que passam pelo processo de Extração, Transformação e Carga, tornando estes organizados para melhor análise. O DW é a base dos sistemas de B.I., ele é dividido em quatro elementos bácisos: 2.1. Sistemas Operacionais Todos os Sistemas Transacionais e/ou Sistemas Legados que registram transações na organização, cujos dados serão coletados para o DW. 2.2. Staging Area É um repositório temporário, fora dos limites dos usuários, onde os dados provindos de diversos sistemas serão corrigidos, padronizados e organizados para então serem carregados no DW ou Data Marts. Esse processo é importante, pois como os dados vêm de diversas fontes, podem estar sendo representados com unidades de medidas ou moedas diferentes. Levando em consideração que a Staging Area apenas faz a limpeza, organização e padronização dos dados, ela poderia ser descartada, sendo assim os dados seriam “preparados” em tempo real e enviados diretamenta para o DW. Porém, existem algumas dificuldades para se fazer isso, por exemplo:  É necessário enviar para o DW dados de duas tabelas em dois bancos de dados fisicamente diferentes. Não é possível fazer uma query que retorne esse resultado, sendo assim esses dados são extraídos para a Staging Area, onde essa query é, então, possível;  O processo ETL envolve transformações complexas que exigem espaço extra para que esses dados sejam temporariamente armazenados durante essas operações. Por outro lado:  Aumenta a latência, que é o tempo necessário para uma mudança nos sistemas de origem ocorra no DW, sendo assim, aplicações em tempo real geralmente evitam o uso da Staging Area;
  • 4.  E por último, a Staging Area ocupa espaço extra. Ainda assim, os benefícios gerados pela Staging Area superam seus pontos negativos. 2.3. Área de Apresentação A área de apresentação é composta por Data Marts, que são bases de dados consolidadas orientadas à assuntos específicos como vendas ou movimentação de estoque. Os dados em um Data Mart não são normalizados, o que proporciona melhor performance. O fato de os dados serem desnormalizados, diminui a quantidade de tabelas que, consequentemente, diminui a quantidade de JOINs deixando as pesquisas menos complexas e mais eficientes. A Área de Apresentação é acessada pelos usuários por meio de diversas ferramentas de pesquisa, aplicações analíticas e geradores de relatórios, entre outros. 2.4. Ferramentas de Acesso Podem ser simples ferramentas de pesquisa, geradores de relatórios, aplciações analíticas ou mesmo sofisticadas aplicações para mineiração de dados.
  • 5. 3. ETL ETL (Extract, Transform, Load) é o processo de coletar dados de diversas fontes dentro do ambiente organizacional, transformar esses dados de forma a padronizá-los e por fim fazer sua carga em um Data Mart ou Data Warehouse. O processo de Extração basicamente coleta dados de diferentes sistemas. O processo de Transformação realiza atividades como:  Traduzir dados codificados (Ex.: os dados de gênero coletados indicam 1 para masculino e 2 para feminino, mas o DW armazena como M e F);  Derivar um valor (Ex.: deve-se armazenar o valor total da venda, mas os dados coletados são quantidade vendida e preço unitário, sendo assim multiplica-se os dois para gerar o dado desejado);  Agrupar dados semelhantes e evitar duplicatas;  Agregação (Ex.: resumir dados de vendas em vendas totais por loja ou vendas totais por região);  Gerar chaves substitutas (Surrogate Keys);  Identificar Slowly Changing Dimensions; O processo de Carga envia dados para o seu destino, onde serão mantidos de forma centralizada para facilitar o acesso e análise. E como o processo de carga interage diretamente com um banco de dados, as constraints(restrições) nesse banco também vão contribuir para a melhora na qualidade desses dados.
  • 6. 4. TABELA DE FATOS A tabela de fatos consiste de medidas, métricas ou fatos de um determinado processo de negócio. Ela é localizada no centro de um Star Schema ou Snowflake Schema. 4.1. Composição Nela há dois tipos de colunas, fatos e dimensões. Os fatos pode ser do tipo aditivo, os quais podem ser somados através de qualquer dimensão, como por exemplo as vendas, que são aditivas por produto, período ou loja, semi-aditivo, que podem ser somados através de algumas dimensões, como funcionários que são aditivos por departamento e não por tempo, e não-aditivo, que não podem ser somados através de nenhuma dimensão, como porcentagens. Há também um tipo de tabela que pode não conter nenhum tipo de medida ou fato, ela é chamada de tabela sem fatos. Ela é composta apenas por chaves estrangeiras para tabelas de dimensão e pode ser usada para registrar eventos, como a frequência de estudantes em um colégio, onde a tabela consistiria do ID do estudante, ID da aula e ID do horário. Aqui você poderia verificar as aulas em que determinado estudante esteve presente, mas não haveria nenhum dado que pudesse ser resumido através dessas dimensões. As colunas de dimensão constituem a chave primária da tabela de fatos, elas são chaves estrangeiras das tabelas de dimensão definidas por uma surrogate key (chave substituta), o que diminui consideravelmente o tamanho da tabela de fatos, pois dados de texto, as vezes até extensos, são substituidos por um simples valor numérico. 4.2. Tipos Fundamentais Transactional É a mais básica, sua granularidade é geralmente uma linha por transação, como, por exemplo, uma linha em uma ordem de compra, que consiste no produto, preço unitário e quantidade. Periodic Snapshot Registra uma imagem, ou o estado de determinado processo em um momento específico, como saldo bancário ou nível de estoque ao fim do mês.
  • 7. Accumulating Snapshot Cada linha representa o ciclo de vida de um processo, por exemplo, uma ordem, desde sua criação até o processamento completo, ou um processo de admissão. Esse tipo de tabela é composto por diversas dimensões de data, onde cada um delas representa o momento em que determinada fase do processo foi concluída, sendo assim, quando uma fase estiver concluída, a linha desse registro na tabela de fatos deve ser visitada e atualizada.
  • 8. 5. TABELA DE DIMENSÃO Ao contrátrio das tabelas de fatos, as tabelas de dimensão contem atributos descritivos, geralmente campos de texto, que são usados para filtrar pesquisas e rotular relatórios. Seus valores devem ser verbosos, descritivos, completos, sem códigos ou abreviações. Elas são identificadas por um valor numérico (surrogate key), o que proporciona uma melhor performance nas pesquisas, evita transtornos causados por códigos que eventualmente são reusados por sistemas operacionais e auxilia na integração de dados originados de diferentes fontes. Uma tabela de dimensão com poucos atributos, embora fácil de dar manutenção, resulta na necessidade de combinar diversas tabelas ao fazer uma pesquisa, deixando as queries mais complexas. 5.1. Dimensões Conformadas O objetivo de uma tabela de dimensão é prover padronização, uma dimensão conformada pode ser compartilhada através do ambiente do Data Warehouse da empresa, possibilitando a junção de diversas tabelas de fatos que representam diferentes processos de negócio. Dimensões conformadas proporcionam:  Consistência – todas as tabelas de fatos são rotuladas igualmente;  Integração – é possível pesquisar diferentes tabelas de fatos e então combinar os resultados com atributos de dimensões conformadas;  Eficiência – dimensões comuns estão sempre disponíveis, sem a necessidade de recriá-las. 5.2. Slowly Changing Dimensions Com o tempo, determinado atributo em uma tabela de dimensão pode mudar, esse fenômeno é chamado de Slowly Changing Dimensions por Kimball. Existem três estratégias para lidar com esse tipo de mudança: 1. Sobrescrever o campo; 2. Adicionar uma nova linha com o novo valor, mantendo as duas versões, porém distinguindo-as com números de versão, ou datas de início e fim, sendo que na última, a data de fim será nula;
  • 9. 3. Criar um novo atributo, que será uma coluna a mais na tabela de fatos, o valor antigo pode ser descrito como valor original, e o novo como valor atual;
  • 10. 6. STAR SCHEMA Um esquema estrela é composto por uma tabela de fatos em seu centro e diversas tabelas de dimensão ao redor dela. Esse modelo vai representar um evento, como, por exemplo, uma venda, onde a tabela de fatos, no centro, indica preços e quantidades, enquanto as tabelas de dimensão descrevem a venda, indicando modelo do produto, cor do produto, vendedor responsável, loja onde ocorreu a venda, entre outros. O Star Schema é desnormalizado, gerando benefícios como: Queries mais simples Pelo fato da não-normalização, os número de tabelas é menor, o que proporcia a capacidade de construir queries mais simples para fazer junções. Agregações mais rápidas As queries mais simples em um Star Schema resultam em melhor performance nas operações de agregação. Imagem 1
  • 11. 7. SNOWFLAKE SCHEMA O Snowflake Schema é uma variação do Star Schema, onde as tabelas de dimensão são normalizadas. Essa normalização é realizada removendo-se dados redundantes e formando novas tabelas. Exemplo: Uma dimensão de data que consiste em Ano, Mês e Dia, é dividida em três tabelas, onde a tabela Ano é conectada à tabela Mês, que é conectada à tabela Dia, respectivamente. 7.1. Vantagens e Desvantagens Embora esse modelo aumente o número de tabelas deixando as queries mais complexas, ele proporciona mais velocidade de resposta nas pesquisas. Imagem 2
  • 12. 8. OUTROS TIPOS DE DIMENSÃO 8.1. Degenerate Dimension É um atributo de dimensão localizado na tabela de fatos que não possui tabela de dimensão própria. São chaves naturais como números de ordens, tickets ou transações de cartões de crédito. Cada transação tem várias linhas, porém, apenas um código que a identifica, e como não há necessidade de criar uma tabela específica para esse valor, ele é adicionado a tabela de fatos, podendo ser usado para agrupar registros de uma mesma transação. 8.2. Role-Playing Dimension Refere-se à uma dimensão que tem diversas funções em uma mesma tabela de fatos. O exemplo mais utilizado é o da dimensão de data, que pode, em uma tabela de fatos de ordem, representar data de criação da ordem, data de embarque, data prevista para entrega, data efetiva da entrega, etc. Sendo assim, a tabela de fatos tem várias chaves estrangeiras referentes à data, porém elas não apontam para a tabela de dimensão, e sim para Views dela, que representam a data de cada etapa do processamento da ordem. 8.3. Minidimension Uma tabela de dimensão que contém atributos que mudam com frequência pode crescer descontrolavelmente se essas mudanças forem realizadas com o Tipo 2 usado na Slowly Changing Dimension. Para evitar que isso aconteça, a dimensão em questão é dividida em minidimensões (as quais são referenciadas por uma Chave Estrangeira na tabela de fatos), onde cada uma dessas minidimensões vai conter os atributos que mudam com frequência. 8.4. Outrigger Uma Outrigger é usada quando uma dimensão é normalizada. Sendo assim, ela contem atributos que são compartilhados por mais de uma dimensão. A diferença em uma Outrigger é uma Minidimension é que a Outrigger é referenciada por uma chave estrangeira nas tabelas de dimensão, e a Minidimension é referenciada por uma chave estrangeira nas tabelas de fato.
  • 13. 8.5. Junk Dimension Uma Junk Dimension pode ser comparada à uma gaveta onde se guarda diversos objetos que, devido a suas quantidades, não há necessidade de fornecer locais próprios para armazená-los, como, por exemplo, clips de papel, fitas adesivas, canetas, entre outros. Sendo assim, a Junk Dimension vai conter atributos como indicadores(sim/não,verdadeiro/falso), comentários opcionais, e outros. Considerando que ela tenha três atributos, a tabela de fatos teria uma diminuição em suas chaves estrangeiras de N para (N – 2), pois as 3 chaves que indicavam dimensões agora agrupadas em uma Junk Dimension, vão se resumir à uma chave apenas. Benefícios gerados são a diminuição do número de dimensões e a diminuição da largura da linha na tabela de fatos.
  • 14. 10. IMAGENS  Imagem 1: http://pic.dhe.ibm.com/infocenter/dzichelp/v2r2/topic/com.ibm.db2z10.doc.perf/src/tpc/db2z_starschemaaccess.htm  Imagem 2: http://docs.oracle.com/cd/E05553_01/books/admintool/images/10AS_SnowflakeSchema_V.png 11. REFERÊNCIAS  https://pt.wikipedia.org/wiki/Intelig%C3%AAncia_empresarial  https://en.wikipedia.org/wiki/Analytic_applications  https://blogs.oracle.com/bibrasil/entry/oracle_olap_option_ou_ essbase  http://www.slideshare.net/jsbi/introduction-to-data- warehousing?from_search=1  http://www.1keydata.com/datawarehousing/snowflake- schema.html  http://en.wikipedia.org/wiki/Snowflake_schema  http://en.wikipedia.org/wiki/Star_schema  http://dylanwan.wordpress.com/bi-and-olap-glossary/role- playing-dimension/  http://litolima.com/2010/01/13/etl-extracao-transformacao-e- carga-de-dados/  http://www.dwbiconcepts.com/etl/27-basic-etl-concepts/137- why-do-we-need-staging-area-during-etl-load.html  http://www.1keydata.com/datawarehousing/factless-fact- table.html  http://my.safaribooksonline.com/book/web- development/silverlight/9781430230601/business-intelligence- 2dot0-defined/comparison_of_business_intelligence_1.0