Business Intelligence com Pentaho. Bem-vindos de volta ao curso EAD de Business Intelligence com Pentaho.



Documentos relacionados
INSTALANDO E CONFIGURANDO O MY SQL

Criando Banco de Dados, Tabelas e Campos através do HeidiSQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO

Conexão ODBC do MySQL com Excel 2010

Vamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova.

PgAdmin. O pgadmin é um software gráfico para administração do SGBD PostgreSQL disponível para Windows e UNIX.

Barra de ferramentas padrão. Barra de formatação. Barra de desenho Painel de Tarefas

Guia Site Empresarial

Google Drive. Passos. Configurando o Google Drive

Esse manual é um conjunto de perguntas e respostas para usuários(as) do Joomla! 1.5.

Instalação: permite baixar o pacote de instalação do agente de coleta do sistema.

INSTALAÇÃO DO SISTEMA CONTROLGÁS

Como funciona? SUMÁRIO

MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET

USANDO O ROUNDCUBE WEBMAIL

Google Drive: Acesse e organize seus arquivos

SISTEMAS OPERACIONAIS LIVRES. Professor Carlos Muniz

GUIA INTEGRA SERVICES E STATUS MONITOR

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource Rev: 02

CONFIGURAÇÃO MINIMA EXIGIDA:

Procedimentos para Reinstalação do Sisloc

Dicas para usar melhor o Word 2007

Tabela e Gráficos Dinâmicos Como estruturar dinamicamente dados no Excel

Manual do Visualizador NF e KEY BEST

Lição 1 - Criação de campos calculados em consultas

Manual Captura S_Line

Manual das funcionalidades Webmail AASP

Instalando o WordPress em localhost

Como incluir artigos:

Tutorial para envio de comunicados e SMS

Data Transformation Services (DTS) por Anderson Ferreira Souza

SUMÁRIO Acesso ao sistema... 2 Atendente... 3

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL

Fluxo de trabalho do Capture Pro Software: Indexação de OCR e separação de documentos de código de correção

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA

Para participar de um mapa colaborativo usando o Cmap Tools

Manual de Utilização do PLONE (Gerenciador de página pessoal)

Vamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova.

1 Essa é a tela de login do Sistema de Atendimento Online, siga o passo a passo abaixo.

Resolvendo problemas de conexão de rede wireless no pregão 83/2008

Configurando DDNS no Stand Alone

MANUAL DO GERENCIADOR ESCOLAR WEB

Noções de. Microsoft SQL Server. Microsoft SQL Server

MANUAL COTAÇAO WEB MANUAL MANUAL AVANÇO INFORMÁTICA AVANÇO INFORMÁTICA. [Digite seu endereço] [Digite seu telefone] [Digite seu endereço de ]

3. No painel da direita, dê um clique com o botão direito do mouse em qualquer espaço livre (área em branco).

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL.

Associação Educacional Dom Bosco Curso de Engenharia 1º ano

Tutorial do ADD Analisador de Dados Dinâmico.

Série ArcGIS Online I. Aprenda em 20. Módulo 4. Configure pop-ups.

MANUAL DE UTILIZAÇÃO

BACKUP ONLINE PASSOS PARA CONFIGURAÇÃO INICIAL DO PRODUTO

Índice. Manual Backup Online. 03 Capítulo 1: Visão Geral

NetEye Guia de Instalação

Introdução a Banco de Dados

Manual Instalação Pedido Eletrônico

Fox Gerenciador de Sistemas

Configurando um Grupo Doméstico e Compartilhando arquivos no Windows 7

Manual AGENDA DE BACKUP

Manual da Ferramenta Metadata Editor

Usar Atalhos para a Rede. Logar na Rede

1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2.

Curso Básico de Visual FoxPro 8.0

02 - Usando o SiteMaster - Informações importantes

Manual de Utilização

WORKSHOP Ferramenta OLAP IBM Cognos

Gerenciamento de Arquivos e Pastas. Professor: Jeferson Machado Cordini jmcordini@hotmail.com

Faculdade Boa Viagem Sistemas de Informação Gerenciais EXERCÍCIO PASSO-A-PASSO PEDIDOS E CONTROLE DE ESTOQUE. Microsoft Access.

Sistema de Automaçaõ de Vendas Manual Passo a Passo

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2

EXEMPLO DE COMO FAZER UMA MALA DIRETA

TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH!

AJUDA NO CONTROLE DA EMPREGADA

O Primeiro Programa em Visual Studio.net

Manual de backup do banco de dados PostgreSQL - Versão 2. Setembro-2011

MANUAL DO INSTAR-MAIL 1.0. Pagina de login e senha do Instar-Mail

PASSO A PASSO PARA CADASTRAR OFERTAS, PRODUTOS E SERVIÇOS

Introdução ao Tableau Server 7.0

Melhor do que driblar os vírus de pendrive, é não pegá-los! Mas como fazer isto?

MySQL Query Browser. Professor Victor Sotero SGD

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet.

Tutorial do Usuário para utilização do Magento e commerce

1 Cadastre-se Mozilla Firefox. AQUI Esqueci a senha Login Senha. Esqueci a senha Login Enviar Solicitação OBS: Nome: Login:

Manual do Plone (novo portal do IFCE)

Manual Portal Ambipar

Gerenciamento de Contatos

STK (Start Kit DARUMA) Driver Genérico Somente Texto para a impressora DR700 ETHERNET

Como gerar arquivos.plt

Instalando o Lazarus e outros sistemas de suporte. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Manual Sistema de Autorização Online GW

Importação de Dados no Sphinx

Desenvolvendo Websites com PHP

ÍNDICE 1 INTRODUÇÃO ACESSO ABERTURA DE PROTOCOLO CONSULTA DE PROTOCOLO PROTOCOLO PENDENTE CONFIRMAÇÃO DE RECEBIMENTO.

Como instalar o Ocomon passo a passo.

Analysis Services. Manual Básico

Daruma NFCe Conheça todos os passos para testar a NFCe Daruma

Manual de configuração do sistema

Operações de Caixa. Versão 2.0. Manual destinado à implantadores, técnicos do suporte e usuários finais

Figura 1: tela inicial do BlueControl COMO COLOCAR A SALA DE INFORMÁTICA EM FUNCIONAMENTO?

Sumário: Fluxo Operacional... 3 Contatos Agenda Online Reservas de Salas Tarefas... 42

Transcrição:

Business Intelligence com Pentaho Bem-vindos de volta ao curso EAD de Business Intelligence com Pentaho.

Business Inteligence com Pentaho Slide 2 www.4linux.com.br Pentaho Schema Workbench 1/2 Mondrian gera cubo a partir de esquema Pentaho Schema Workbench Interface gráfica para criar esquema Mondrian Publica diretamente BI Server Aula de hoje: criar cubo simples Métricas, Métrica Calculada e Dimensão Próxima aula: melhorar cubo Dimensão Pública Dimensão Degenerada Segurança Hoje e amanhã veremos como criar o esquema Mondrian usando o Pentaho Schema Workbench. Esquema Mondrian é o metamodelo OLAP. Ou seja, é o arquivo que diz ao OLAP engine (mecanismo OLAP) Mondrian (é o nome do motor) como interpretar um banco de dados relacional e exibir um cubo OLAP. Como o próprio nome diz, o PSW é uma bancada para facilitar a criação do esquema Mondrian usando uma interface gráfica. Ele possui integração com BI Server e permite publicar o esquema desenvolvido diretamente nele. Nosso objetivo na aula de hoje é executar o processo de ponta-a-ponta, criando um modelo simples, com uma dimensão, algumas métricas e uma métrica calculada. Na próxima aula faremos uma nova iteração desse processo, incrementando os recursos do esquema.

Business Inteligence com Pentaho Slide 3 www.4linux.com.br Mondrian Piet Mondrian, 18721944 Engine OLAP Não é banco Não persiste Criado por Julyan Hide Único engine OLAP Open Source do mundo Usado por todos Pentaho: assumiu Jasper, Spago etc. O nome Mondrian vem do artista Pieter Cornelis Mondrian, geralmente conhecido por Piet Mondrian (Amersfoort, 7 de Março de 1872 - Nova Iorque, 1 de Fevereiro de 1944), um pintor holandês modernista. Como OLAP tem a ver com visões planificadas de estruturas multidimensionais, a escolha do nome pela semelhança do resultado com algumas de suas obras foi uma grande sacada. Ele teve tanto sucesso que é um dos dois únicos projetos que ainda existem indepentendemente da Suite Pentaho (o outro é o Weka.) Além disso, ele é o único mecanismo OLAP em software livre do mundo, tanto que todos os outros fornecedores de suites de BI SL usam-no em seus pacotes. A ideia é simples: atuar como uma camada (um servidor) interpretando consultas feitas com a (excelente) linguagem MDX (da Microsoft) e transformá-la em consultas SQL. Junto a seus recursos de cache e tabelas pré-agregadas, a performance dele é impressionante mesmo para volumes absurdos de linhas de tabela fato - veja isso: http://forums.pentaho.com/archive/index.php/t-70263.html; Pedro Alves afirmou, pessoalmente à Fábio de Salles (editor desse material) que ele resolveu aquele caso e que o cubo ficou instantâneo COM CINCO BILHÕES DE LINHAS.

Business Inteligence com Pentaho Slide 4 www.4linux.com.br O Esquema Mondrian Arquivo texto plano Mapeia elemento OLAP em colunas de SGBDR XML Posicional Bem formado O Esquema Mondrian é um arquivo texto plano, XML, com estruturas que mapeiam tabelas de um banco de dados relacional em elementos de um modelo multidimensional, tais como métricas, níveis e membros. A posição dos elementos é importante, bem como a caixa de cada elemento (maiúsculo ou minúsculo - o Mondrian é sensível à caixa). A documentação é bem completa, e o formato é muito poderoso. Sempre que precisar implementar algo no cubo, procure primeiro na documentação do modelo, antes de pensar em apelar para recursos do BI Server. Há uma boa chance de você encontrar uma maneira de resolver sua necessidade com recursos do próprio Mondrian.

Business Inteligence com Pentaho Slide 5 www.4linux.com.br Cubo: Vendas Northwind Instalação e interface Cubo: Métricas: Qtd, Preco e Desconto Métrica Calculada: TotalPorLinha Dimensao Produtos: hierarquia Categoria Fornecedor Produto Testar no PSW Publicar Testar no BI Server Eis nosso processo de hoje. Vamos configurar o PSW e criar um cubo "essencial" - isto é, com o mínimo de estruturas necessárias para conseguir um cubo OLAP funcionando dentro do BI Server.

Business Inteligence com Pentaho Slide 6 www.4linux.com.br Instalação & Configuração Instalação: Número de versão desalinhado da suite! Suite v3.8: baixar e descompactar psw-ce3.2.1.13885.zip/tar.gz Configuração: Driver Postgres em./schema-workbench/drivers Propriedades: <user home>/.schemaworkbench Rodar: workbench.sh/.bat Publicação no BI Server: Requer senha de publicação configurada Requer driver Postgres presente Como todo sofware da Pentaho, sua instalação é muito simples e fácil: Crie um diretório como c:\pentaho (/home/usuário, /opt/pentaho etc.) Descompacte o.zip nesse diretório. Um novo diretório chamado schema-workbench será criado. Pronto! Está instalado. O PSW vem sem nenhum driver de banco de dados. É preciso gravar o driver do banco de dados de interesse na pasta./chemaworkbench/drivers. Essa é sua tarefa número zero, antes de executá-lo. O driver só é reconhecido na partida do programa. Se você adicionar o driver com ele rodando, vai ter que reiniciá-lo para o driver ser reconhecido. Outras configurações existem, como parâmetros do Mondrian e logs, mas não serão abordadas no curso por não adicionarem à proposta de solução essencial. Para que possamos publicar os relatórios que vamos criar são necessárias duas coisas: que o BI Server esteja com sua senha de publicação configurada (e com o driver Postgres) e que ele esteja rodando.

Business Inteligence com Pentaho Slide 7 www.4linux.com.br Schema Workbench: Interface Barra de menu Toolbar do PSW Toolbar do Esquema Árvore de Elementos do Esquema Painel de Atributos O PSW é um aplicativo MDI, Multi Document Interface: uma única interface controla vários documentos, cada qual com sua própria barra de ferramentas e uma barra para o aplicativo como um todo. Inicialmente você verá apenas a barra de menus e uma barra de ferramentas simples a toolbar do PSW. Quando o modelo tiver sido criado, sua interface parecer-se-á com esta figura, na qual se vê um documento, e sua toolbar. Nesse documento podemos ver a área onde desenvolvemos o modelo, com a árvore de elementos, o painel de propriedades e a barra de ferramenta do esquema.

Business Inteligence com Pentaho Slide 8 www.4linux.com.br Comandos PSW Os comandos que vamos precisar do PSW são: Menu File Criar novo esquema. Criar nova consulta MDX (para testar o esquema.) Menu Options Configurar conexão com banco de dados

Business Inteligence com Pentaho Slide 9 www.4linux.com.br Interface PSW Toolbar do Esquema 1 +Cubo +Dimensão +Dim. Usage +Hierarquia +Métrica Calculada +Métrica +Nível Hierárquico +Propriedade A criação de praticamente todos elementos do modelo é feito via barra de ferramentas da janela de edição do esquema, ou então menu de contexto, com o botão da direita sobre um elemento. Esse slide mostra as funções mais importantes e de uso mais frequente no esquema.

Business Inteligence com Pentaho Slide 10 www.4linux.com.br Interface PSW Toolbar do Esquema 2 +Cubo Virtual +Dimensão Virtual +Métrica Virtual +Papel (Segurança) Exibir XML Por outro lado, não veremos nenhuma dessas funções, exceto adicionar papel (role), que vai ser usado para configurar o controle de acesso na próxima aula. O último botão mostra/esconde o "código" XML por baixo de cada elemento e atua como um auxílio na codificação do esquema. Em si, visualizar o XML não dá nenhum recurso extra, nem mesmo a possibilidade de se editá-lo diretamente.

Business Inteligence com Pentaho Slide 11 www.4linux.com.br Interface PSW Árvore de Elementos do Esquema Cubo Tabela fato Dimensão privada Dimension Usage Métrica Membro calculado Dimensão pública Hierarquia Níveis hierárquicos Tabela dimensão Segurança Um modelo completo pode ter esses elementos. Vale a pena destacar aqui: Dimensão Degenerada: uma dimensão sem tabela, que existe apenas dentro de um cubo. Dimension Usage: é o elo de ligação entre uma dimensão pública e um cubo que a usa. Segurança: cada novo papel nasce na raiz do esquema.

Business Inteligence com Pentaho Slide 12 www.4linux.com.br Configuração Usa acesso a banco para validar elementos Somente um banco por vez Menu Options Connections Nome: northwind_dw Hostname: localhost DB name: northwind_dw Port: 5432 Usuário, senha: postgres Rode o PSW e acesse o menu Tools, opção Connection. Já deve estar fácil, depois de todas as aulas onde já fizemos essa configuração: Name: northwind_dw Hostname: localhost Nome: northwind_dw Hostname: localhost Database name: northwind_dw Port: 5432 User: postgres Password: postgres Clique em Test e, se tudo funcionou, feche a janela de conexão. Essa conexão serve apenas para ajudar no desenvolvimento, trazendo os nomes de tabelas e campos automaticamente ou seja, ela provê uma conveniência. Se não for possível fazê-la funcionar, nenhuma funcionalidade do cubo será afetada, e o desenvolvimento poderá ser feito normalmente. Você apenas precisará entrar os nomes de tabelas e campos manualmente, o que aumenta o trabalho e a chance de erros, e nada mais.

Business Inteligence com Pentaho Slide 13 www.4linux.com.br Desafio: Responder Perguntas & Explorar Dados Nosso gerente está muito feliz! Até o início de nossa consultoria ele mal sabia se as metas estavam em dia ou não. Com o DW, os relatórios pré-formatados e, depois da última aula, os relatórios adhoc via web, ele finalmente foi capaz de destrancar os dados e responder todas suas perguntas! E um belo dia ele chegou para o consultor e pediu: dá para transformar esse relatório adhoc em um pré-formatado, assim, assado, com gráfico, escondendo os detalhes etc.? Sim, claro. E no dia seguinte, um novo pedido do mesmo tipo. E depois outro, e outro. OPA! Ele está explorando os dados e criando uma série de relatórios estáticos para conhecer e acompanhar seu processo! Essa série de demandas é um sintoma típico e claro da necessidade de OLAP. Nosso desafio será dar ao gerente da Northwind a ferramenta última de exploração de dados: um cubo OLAP.

Business Inteligence com Pentaho Slide 14 www.4linux.com.br Northwind Traders DW O modelo dimensional resultante foi esse: Tabela Fato: Vendas. Tabelas Dimensão: Cliente Produto Data Tabela Dimensão Data exerce três papéis O nosso cubo vai retratar completamente esse modelo. Hoje criaremos a dimensão Produto, e todas as métricas, bem como uma métrica calculada. Amanhã criaremos a dimensão cliente, data e ligaremos essa ao cubo.

Business Inteligence com Pentaho Slide 15 www.4linux.com.br Criar Esquema Northwind e Adicionar Cubo Vendas No PSW crie um novo esquema: menu File New Schema. Vai aparecer a janela do esquema. Selecione o ícone do esquema (o cilindro cinza) no painel à esquerda e entre um nome para ele no quadro de propriedades, à direita. Depois clique no ícone de adicionar cubo, na barra de ícones do esquema. Será adicionado um cubo vazio e sem tabela fato ao esquema. Clique com o botão da direita sobre o cubo e selecione a opção Add Table. Vai ser adicionada uma tabela vazio. Clique nela e, no painel à direita, selecione a tabela f_pedido, no campo NAME. Se você não tiver configurado a conexão com o BD, o drop down estará vazio. Nesse caso, apenas digite f_pedido no campo. Não é necessário informar o esquema: se a conexão estiver funcionando ele ser preenchido automaticamente. Se não, não fará falta no nosso caso. Uma das mudanças mais ou menos recentes foi a inclusão da possibilidade do uso do esquema, muito importante para bancos que não dispensam essa informação, como Oracle. Isso pode ser reforçado com a opção Require schema, no menu Options.

Business Inteligence com Pentaho Slide 16 www.4linux.com.br Adicionar Métrica Quantidade Name: Name:Quantidade Quantidade Aggregator: Aggregator:sum sum Column: quantity Column: quantity FormatString: 0 FormatString: 0 Visible: ligado Visible: ligado Datatype: Integer Datatype: Integer Agora que um cubo foi incluído no esquema, podemos adicionar métricas ao cubo. Clique no ícone da régua e preencha o o quadro de propriedades conforme mostra o slide. Lembre-se: se a conexão com o DW estiver ok, você terá a lista de campos para escolher a coluna da métrica (propriedade Column.) Todo o restante tem que ser entrado manualmente. O campo formatstring usa a formatação padrão do Visual Basic para formatar os números e textos. Além disso, o PSW constrói uma lista com todas as formatações usadas em alguma métrica dentro do cubo, e deixa essa lista disponível como um drop down. Isso ajuda a manter padrão, já sempre reusaremos o formato entrado anteriormente. Da análise que "você" fez como "analista de BI", você "sabe" que o campo quantidade contém apenas números inteiros, e prenche o campo DATATYPE com essa informação. Veremos a seguir um pouco sobre agregadores.

Business Inteligence com Pentaho Slide 17 www.4linux.com.br Agregadores Métricas aditivas: sum em todas as dimensões Quantidade Métricas semi-aditivas: sum em algumas dimensões Estoque diário, Frete Métricas não-aditivas: sum em nenhuma dimensão Temperatura, desconto E quanto ao campo AGGREGATOR? Esse campo é responsável pela agregação exibida quando os níveis hierárquicos vão sendo suprimidos, condensados quando eles sofrem roll-up, no jargão OLAP. (Lembre-se: não existe drill-up!) Assim, se usarmos um agregador SUM, quando o cubo estiver completamente colapsado, a coluna Quantidade trará a soma de todas as quantidades. Diz-se que essa é uma métrica aditiva. Nem todas as métricas podem ser agregadas por somatório em todas dimensões, conforme vimos no slide sobre métricas aditivas, semiaditivas e não-aditivas, na aula 5, Modelagem Dimensional. Algumas métricas podem ser agregadas por somatório ao longo de algumas dimensões, mas não ao longo de outras. Essa são métricas semi-aditivas. Um exemplo é a quantidade de estoque. Se sua tabela fato registra a posição de estoque de cada item ao longo dos dias, todo dia, somá-lo ao longo de uma semana não vai dar o total disponível na semana. Mas somá-lo ao longo de produto, em um dia, vai. Por outro lado, a média do estoque ao longo do tempo faz sentido. Quando não é possível fazer isso em dimensão nenhuma, diz-se que a métrica é não-aditiva. Um exemplo é a temperatura de um quarto ou uma porcentagem de desconto: não faz sentido somá-las nem ao longo do tempo nem ao longo de nenhuma outra dimensão. Elas só podem ser agregadas com médias (desconto médio), ou com máximos e mínimos (maior e menor temperatura num quarto.)

Business Inteligence com Pentaho Slide 18 www.4linux.com.br +Métrica Preco Unitario +Métrica Desconto Name: Name:Preco PrecoUnitario Unitario Aggregator: Aggregator:avg avg Column: unitprice Column: unitprice FormatString: FormatString:##,,### ###..00 00 Visible: ligado Visible: ligado Datatype: Numeric Datatype: Numeric Name: Name:DDesconto esconto Aggregator: Aggregator:avg avg Column: discount Column: discount FormatString: 0,00% FormatString: 0,00% Visible: ligado Visible: ligado Datatype: Numeric Datatype: Numeric Complete a lista de métricas com o Preço Unitário e o Desconto. Repare na formatação. Além disso, sugerimos o agregador AVG (de average, média) para essas duas métricas. Observe que você pode experimentar com outros agregadores, como MIN ou MAX, para comparar os resultados. Você pode até mesmo criar mais de uma métrica para a mesma coluna da tabela fato, e usar uma agregação para cada métrica.

Business Inteligence com Pentaho Slide 19 www.4linux.com.br Métrica Calculado (Calculated Member) Member) Name: Name:Total TotalItem Item Dimension: easure Dimension:M Measures easures easuress Visible: ligado Visible: ligado Formula: [Measures].[Quantidade] * Formula: [Measures].[Quantidade] * [Measures].[Preco [Measures].[Preco Unitario] Unitario] ** (( 1-[Measures].[Desconto] 1-[Measures].[Desconto] )) FormatString: FormatString:##,###,###..00 00 E se quisermos exibir para o usuário o resultado de uma conta entre dois campos? Usamos o membro calculado. Como você poderá ver no material complementar, um Calculated Member (CM) não serve apenas para calcular métrica derivadas (de métricas primárias, que tem por por origem uma coluna da tabela fato). Podemos calcular percentuais dependentes do tempo, criar novos membros em dimensões, etc. Membros calculados podem até mesmo ser criados em tempo real, através do comando MDX WITH MEMBER.

Business Inteligence com Pentaho Slide 20 www.4linux.com.br Adicionar Dimensão Parte 1: Criar e Definir Tabela Table: Table:public public-->>d_product d_product Agora que adicionamos algumas métricas ao cubo, vamos registrar uma dimensão, para completar o modelo. Repare que a ordem em que adicionamos os elementos com o PSW não é importante, pois o PSW cuida da ordem dos elementos no XML. Se você fizesse o esquema na mão, por outro lado, precisaria se preocupar com isso. Para adicionar uma dimensão ao cubo, selecione-o e clique no ícone do de Add Dimension (que é uma representação de três eixos.) Ela virá com uma hierarquia default, e sem mais nada. Expanda a árvore da dimensão, clique com o botão da direita sobre o ícone da hierarquia e selecione Add Table. Selecione o ícone de tabela que foi adicionada e preencha a ficha com a tabela de origem dessa dimensão. Como estamos construindo a dimensão Produto, vamos selecionar a tabela d_product. Pronto, você criou uma dimensão e atrelou-a a uma tabela do modelo dimensional. Se você precisar lidar com um modelo dimensional que possui subdimensões (snowflake) ou mesmo um modelo E-R, você pode selecionar uma opção de view ou join. Para criar aquelas minidimensões que não cabem em lugar nenhuma, você pode usar uma inline table (como sexo, estado civil etc.)

Business Inteligence com Pentaho Slide 21 www.4linux.com.br Adicionar Dimensão Parte 2: Preencher Atributos Vamos completar a configuração da dimensão. Em primeiro lugar, podemos ter dois tipos de dimensões: regular e de tempo. Essa propriedade é usada pelo Mondrian para certas otimizações da consulta SQL que será enviada ao banco. A dimensão produto é uma dimensão regular, cuja chave primária é a coluna product_sk. Como esse mesmo nome é usado na tabela fato, a chave estrangeira (na fato) é a product_sk. Clique no ícone da dimensão, na árvore de elementos do modelo, e preencha seu tipo como StandardDimension e a Foreign Key como product_sk. Hierarquia: a primeira hierarquia nunca tem nome. Nada nos impede de darmos um nome a ela, mas se ela for única, será redundante fazê-lo e por isso, como uma convenção de modelagem Mondrian, nunca nomeamos a primeira hierarquia da dimensão. Por isso você deve apagá-lo: clique no ícone da hierarquia, dentro da dimensão, e apague o nome default dela. Com isso a primeira hierarquia vai herdar seu nome da dimensão. Defina a chave primária da dimensão (para essa hierarquia cada uma pode ter sua própria): clique na hierarquia e preencha o campo PRIMARY KEY. Não mexa em mais nada. Pronto, está feito.

Business Inteligence com Pentaho Slide 22 www.4linux.com.br Adicionar Nível 1/3: Categoria Name: Name:Categoria Categoria Column: Column:category category Type: String Type: String Unique members: desligado Unique members: desligado leveltype: leveltype:regular Regular hidememberif: hidememberif NNever hidememberif: ever hidememberif: :Never Never Com a dimensão criada, com uma hierarquia, vamos adicionar os níveis hierárquicos. Nível é o que determina como será feito o drill-down/rollup na visualização do cubo. Deixe a hierarquia selecionada e clique no ícone Add Level, na barra de ferramentas do cubo. Preencha o nome do nível e depois as propriedades que o definem. O primeiro nível vai ser a Categoria: Name: Categoria Column: category Type: String Unique members: desligado (os valores se repetem ao longo das linhas da dimensão.) leveltype: Regular (Esse parâmetro é uma informação especial para os níveis de dimensões tempo.) hidememberif: Never (o membro deve sempre estar disponível para exibição, mesmo que esteja vazio.) Não preencha nenhum outro campo. O UNIQUE MEMBERS é uma flag que informa a unicidade dos membros desse nível, e o Mondrian usa seu conteúdo para agilizar certas consultas. Porém, se a informação estiver errada, o resultado é pior. Logo, a regra é: se você não tiver certeza, deixe desligado. A perda por desligar é menor que a perda por ligar errado.

Business Inteligence com Pentaho Slide 23 www.4linux.com.br Adicionar Nível 2/3: Fornecedor Vamos adicionar o próximo nível: fornecedor. Começe do mesmo jeito: deixe a hierarquia selecionada e clique no ícone Add Level, na barra de ferramentas do cubo. Um novo nível será adicionado abaixo do primeiro. Esse nível é o fornecedor: Name: Fornecedor Column: supplier Type: String Unique members: desligado leveltype: Regular hidememberif: Never O primeiro nível registrado é o superior. O último nível adicionado à hierarquia é o inferior. O que acontece se você adicionar primeiro o nível errado? O PSW não dá nenhuma opção de reorganizar os elementos. Se você errar, tem duas opções: apagar todos os níveis e fazer de novo ou fechar o PSW (salvando o modelo), editar o XML e reabrir o PSW (recarregando o modelo.)

Business Inteligence com Pentaho Slide 24 www.4linux.com.br Adicionar Nível 3/3: Produto Próximo nível: produto. De novo: selecione a hierarquia, clique no ícone Add Level e preencha os dados do novo nível (produto): Name: Produto Column: product Type: String Unique members: ligado leveltype: Regular hidememberif: Never Na nossa hierquia da dimensão Produto, o nível que mosrtra o produto é o mais baixo, e por isso deve ser o último a ser inserido. Repare que, numa tabela dimensão que lista os produtos disponíveis, a coluna com os nomes dos produtos é única: nenhuma linha se repete, graças à essa coluna. Portanto é seguro marcar o UNIQUE MEMBERS.

Business Inteligence com Pentaho Slide 25 www.4linux.com.br Testar Cubo SELECT SELECT {[Measures]} {[Measures]} ON ON COLUMNS, COLUMNS, {[Produto]} {[Produto]} ON ON ROWS ROWS from from [Vendas] [Vendas] Pronto! Salve o modelo pois seu cubo está completo! Para testá-lo, abra uma conexão com o servidor Mondrian embutido no PSW, usando o comando do menu File, New -> MDX Query. Se seu modelo estiver correto, uma mensagem de conexão de sucesso será exibida. Sempre que você alterar alguma coisa no modelo, salveo e reconecte-se a ele, usando a mesma janela mas clicando no botão CONNECT. Se voltar algum erro, uma dica é examinar o log do programa, gerado em linha de comando para quem abriu o PSW no Windows, ou lançou-o diretamente do console, no Linux. Se a conexão funcionou, entre uma consulta MDX bem simples, como a mostrada no slide e clique em EXECUTE. Se tudo está certo, você deve receber um resultado semelhante ao mostrado aqui.

Business Inteligence com Pentaho Slide 26 www.4linux.com.br Criar Fonte de Dados northwind_dw Nome: Nome:northwind_dw northwind_dw Hostname: Hostname:localhost localhost DB name: DB name:northwind_dw northwind_dw Port: Port:5432 5432 Usuário, Usuário,senha: senha:postgres postgres Para o cubo funcionar no BI Server é preciso haver uma fonte de dados registrada. Vamos fazê-lo: Suba o BI Server. Suba o PAC. Faça login com no PAC: admin, password. Mude para a aba Administration, e depois Database Connections. Clique no +, para criar uma nova fonte, e preencha os parâmetros: Nome: northwind_dw Hostname: localhost DB name: northwind_dw Port: 5432 Usuário, senha: postgres Clique em Test antes de clicar em Ok, apenas para garantir que a configuração está correta.

Business Inteligence com Pentaho Slide 27 www.4linux.com.br Publicar Cubo Faça Façalogin loginno nopac PACe:e: Confira o nome da fonte de dados Confira o nome da fonte de dados Adicione se ainda não existir Adicione se ainda não existir A publicação é semelhante à tudo que já vimos: Menu File Opção "Publish..." A URL é a do BI Server. Se estiver usando localhost, não precisa alterar nada. O usuário da publicação é qualquer usuário do BI Server. No nosso caso usamos: User: joe Senha: password (tudo minúsculo) A senha de publicação foi configurada nas primeiras aulas. O default do curso é pentaho. Clique em OK. O PSW vai entrar em contato com o servidor e abrir um navegador de arquivos. Escolha uma pasta para guardar o modelo (o padrão do curso é 4Linux.) Informe o nome do DATA SOURCE, que é a fonte de dados northwind_dw registrada nas primeiras aulas. Ligue o REGISTER XMLA DATA SOURCE. Pronto: clique PUBLISH e aguarde. Em poucos momentos deve surgir a mensagem de publicação de sucesso.

Business Inteligence com Pentaho Slide 28 www.4linux.com.br Erro: Esquema Não-Selecionado Ocasionalmente o PSW detecta que o foco está "fora" do esquema. Quando isso acontecer, basta clicar OK e clicar sobre o esquema. Salve novamente e mande publicar outra vez.

Business Inteligence com Pentaho Slide 29 www.4linux.com.br Testar Cubo no BI Server Se tudo correu bem, você poderá fazer login no PUC e, ao solicitar um New Analysis View, verá seu modelo na lista. Como temos um único cubo, clique OK e aguarde. Uma visualização do cubo surgirá. Ele possui apenas uma dimensão, mas você pode adicionar as outras métricas usando o OLAP Navigator. Veja também o cubo aberto com todas as métricas, e drill em um produto específico. Na próxima aula veremos como adicionar mais dimensões e controle de acesso.

Business Inteligence com Pentaho Slide 30 www.4linux.com.br Republicação: Refresh Mondrian Se você precisar alterar o modelo e republicá-lo, vai precisar atualizar o esquema no BI Server. A republicação não força atualização dos metados. Isso precisa ser feito manualmente: Como no PME, primero comande um refresh do repositório, para garantir que o BI Server está com o último esquema no repositório, clicando no ícone vermelho e verde no topo à direita da árvore de pastas na PUC. Depois, sempre como usuário admin, selecione o menu Tools e, dentro desse, a opção Refresh. Selecione Mondrian Schema Cache. Quase imediatamente virá mensagem de cache limpo com sucesso. Pronto: o próximo cubo será montado a partir de nova consulta ao esquema, que foi atualizado.

Business Inteligence com Pentaho Slide 31 www.4linux.com.br Fontes XMLA A plataforma, o BI Server, depende de um arquivo para saber quais são os cubos disponíveis para criação de novas visões. Esse arquivo é o datasources.xml, que fica em /biserver-ce/pentaho-solutions/ system/olap Editando esse arquivo podemos incluir ou remover esquemas. Por outro lado, se não registrarmos nada aqui, o usuário não conseguirá criar uma nova visão via interface, mas não terá problemas com nenhuma visão já salva. Cubos criados diretamente por uma XAction também não são afetados. Um outro uso de fontes XMLA é permitir que o BI Server atue como servidor OLAP para outras interfaces. Por exemplo, é possível conectar o Excel ao BI Server e criar Pivot Tables a partir de cubos Mondrian. Veja no slide como a publicação gerou um registro de uma nova fonte de dados OLAP no BI Server, e como ele aponta para uma fonte de dados JDBC.