OBISEE 11g – Principais etapas para o desenvolvimento do repositório de metadados.

Por Carina Mendes Oracle ACE
Postado em Novembro 2016

Neste artigo venho compartilhar os passos básicos que são necessários para se desenvolver o repositório de metadados do OBISEE que é, por sua vez, responsável pela camada semântica da suíte.

O repositório do BI é conhecido como “RPD” devido a sua extensão “.rpd” onde são armazenadas importantes regras de negócio que serão consumidas pelos relatórios e painéis de indicadores do OBISEE Analytics.

É válido salientar que este artigo contempla somente etapas básicas do que é possível fazer através do repositório de metadados.

Contexto do Caso – BI Vendas:
Iremos utilizar como base para o nosso desenvolvimento, um modelo que acompanha o status da progressão de um departamento de vendas. O modelo de dados Star Schema abaixo:

A consulta de exemplo que teremos que realizar no OBISEE se baseia na consulta abaixo. Ela retorna o valor de vendas estimado para cada status do processo de vendas para o ano de 2015:

Ferramenta de Administração do BI:
Também conhecido como “Admin. Tool”, é um aplicativo cliente disponível para o Windows, utilizado para o desenvolvimento e manutenção do repositório de metadados. É importante utilizar o aplicativona versão correspondente a do OBISEE.

RPD:
O RPD pode ser acessado de forma on-line (necessária a configuração de ODBC), onde as alterações são editadas em tempo real na aplicação ou em modo off-line que é o mais indicado para assegurar que o repositório original não se corrompa ou que nenhuma alteração errada prejudique o desempenho do OBISEE.

  • Camada Física: Representa a estrutura física das fontes de dados para qual o BI Oracle Server envia as consultas de SQL para o Banco de Dados. É válido lembrar que esta camada apenas representa a estrutura física, os dados não são extraídos do banco de dados para dentro do arquivo, somente as estruturas das tabelas e demais objetos selecionados.
  • Camada de Negócios: Representa a estrutura lógica dos dados no repositório. Nesta camada definimos o significado de negócio para as colunas, regras de agregação das métricas, hierarquias etc.
  • Camada de Apresentação: Representa a estrutura de apresentação do repositório. Esta camada permite que você apresente uma visão diferente da camada de mapeamento do modelo de negócio.

Criar Um Novo RPD:
Abra a Ferramenta de Administração do BI e acesse o menu “Arquivo” e clique em “Novo Repositório...”. Em seguida, preencha as informações conforme a imagem abaixo:

Seu repositório está pronto para dar início ao desenvolvimento. Observe que as três camadas (Física, de Negócios e de Apresentação) estão disponíveis:

Desenvolvimento da Camada Física:

  • Novo Banco de Dados - Clique com o botão direito do mouse na camada física/Novo Banco de Dados, em seguida você deve definir as propriedades do banco como: Nome, Tipo de BD etc.

  • Pool de Conexões - Após criar o banco de dados, você deve criar um Pool de Conexão para o mesmo: com o botão direito do mouse sobre o Banco de Dados criado, selecione, em seguida, Novo Objeto/Poll de conexões. É preciso dar um nome ao seu Connection Poll e definir as configurações de conexões com o servidor, como: nome de origem, usuário e senha do DW etc.



  • Importando Metadados - Nesta etapa, importamos as estruturas das tabelas do banco de dados. Clique com o botão direito do mouse no connection pool que acabou de criar/Importar Metadados:

Selecione os objetos que deseja importar de seu banco e prossiga:

Neste momento você está acessando os owners do seu banco de dados, localize os objetos que fazem parte do seu modelo de dados, importe-os para seu repositório e finalize a importação:

Veja que as estruturas das tabelas já aparecem na camada física do repositório:

  • Propriedades das Tabelas - Depois de importadas, precisamos verificar as propriedades das colunas, propriedades como: tipo de dados, tamanho dos campos, ver amostragem dos dados etc. Por questões de melhores práticas de desenvolvimento, é recomendado que as colunas com propriedades de Surrogate Keys estejam no formato de INT ou INTEGER. Essa verificação deve ser realizada em todas as colunas de todas as tabelas importadas.

  • Criação de Alias das Tabelas Importadas - Como o modelo de dados sofre alterações ao logo do tempo, e também uma tabela pode ser utilizada para diversos Data Marts, é aconselhável não utilizar as tabelas importadas diretamente, mas sim criar Alias das tabelas físicas. Os Alias funcionam como espelhos das tabelas originais, porém podemos ter mais de um Alias diferente para uma única tabela física.
    Para criar um novo Alias, clique na tabela com o botão direito na tabela/Novo Objeto/Alias... Em seguida, escolha um nome para o alias, e clique em OK:

Crie um alias correspondente para cada uma das tabelas do seu modelo de dados. Observe que o ícone dos alias são diferentes das tabelas. É ideal que você utilize um nome qualificado para o negócio como Alias:

  • Mapeamento Diagrama Físico -  compreende-se por uma área de trabalho onde definimos os relacionamentos entre as tabelas Fatos e Dimensões do nosso Star Schema. Selecione as tabelas alias do seu modelo na camada física/Botão direito/Diagrama físico/Somente objeto(s) selecionados(s):




Os Joins são criados de forma gráfica, através do botão ‘Nova Junção’ na barra superior do menu. Você clica na tabela fato e arrasta para a dimensão:

Para cada relacionamento criado, a ferramenta abrirá uma caixa de propriedades do Join onde você definirá as colunas chaves (Surrogates Keys) de relacionamento entre as tabelas e outras propriedades do Join, como: operador etc:

Repita esta etapa de criar os Joins para cada dimensão existente no diagrama físico:

Salve seu repositório e feche somente a janela do Diagrama Físico, após estes procedimentos a primeira camada do seu RPD já estará pronta.

Desenvolvimento de Negócios:

  • Criando um novo Modelo de Negócios - Clique com o botão direito do mouse na camada do meio do rpd e em seguida na opção “Novo Modelo de Negócios”:

Defina um nome e uma descrição para seu novo modelo de negócios:

  • Selecionando as tabelas para o modelo - Na camada física, selecione os alias do seu modelo e arraste-os para dentro do modelo de negócios que acabou de criar:

Observe que o rpd identifica qual é a tabela fato e quais são às dimensões e simboliza isso através de ícones diferentes:

Renomeando as Colunas - Nesta etapa podemos renomear as colunas das tabelas para um nome mais apresentável ou significativo para o negócio, observe:

  • Configurando Agregação das Métricas - esta etapa determina o tipo de cálculo padrão que será realizado nos agrupamentos de dados, como, por exemplo: contagem, média, soma, maior, menor etc. Clique na métrica da tabela fato com o botão direito e abra a caixa de propriedades da coluna. Navegue até a aba “Agregação” e configure para a regra necessária. Em nosso caso, utilizaremos a soma:


Faça esta configuração para todas as métricas existentes na tabela fato, observe que após definir a regra de agregação o ícone das métricas mudam para uma cor amarela:


  • Criando Hierarquias - As tabelas de dimensões, possuem dimensões lógicas de negócios que chamamos de Hierarquias. As Hierarquias definem os níveis de camada da agregação que configuramos anteriormente na tabela Fato. Cada nível lógico de uma Hierarquia deve conter um campo chave. Observe o exemplo de uma Hierarquia:

  • Neste caso, iremos utilizar o tipo de Hierarquia mais utilizado, baseada em Nível (Camadas). A Hierarquia é criada na opção “Criar Dimensão Lógica” quando se clica com botão direito sobre a dimensão. Quando criada, ela já recebe uma estrutura padrão de níveis mais pode ser customizada para atender às especificações de negócio:

     

    Cada dimensão deve ter a sua respectiva hierarquia. Observe também que as hierarquias possuem ícones diferentes para auxiliar a identificação no repositório:

    • Configuração do Nível do Source da Fato - No Source temos algumas definições de origem da tabela física, entre outras. Uma configuração que deve ser mapeada nesta etapa é o nível de agregação da tabela Fato em relação aos níveis das hierarquias que acabamos de criar. Por exemplo, definimos que a soma da quantidade de produtos vendidos, pode ser exibida até o nível de mês, ou de dia.
      Para realizar esta configuração, expanda os objetos da tabela Fato e dê um duplo clique no Source, navegue até a aba “Conteúdo”, na opção “Agrupar conteúdo de agregação por” selecione a opção “Nível Lógico” e, em seguida, selecione nível lógico para cada hierarquia que se relaciona com a sua tabela Fato. O padrão utilizado é sempre o menor nível, podendo ser alterado de acordo com as regras de negócio:

    Após concluir essa etapa, você terá duas camadas do seu repositório construídas:



    Não esqueça de salvar sempre seu repositório.

    Desenvolvimento da Apresentação:

    • Criando uma nova Área de Assunto - Selecione o modelo de negócios e arraste-o da camada de negócio para a camada de apresentação.

    É interessante excluir as colunas de SK da Área de Assunto e todas as outras colunas que não são importantes para o usuário final. Observe também que as Hierarquias criadas na Camada de Negócios automaticamente passam para dentro das tabelas de Dimensões da Área de Assunto “BI Vendas” na camada de Apresentação:

    Após esta etapa, o seu repositório de metadados está pronto para ser publicado no OBISEE:

    Revisão:
    Verifique se você executou todos os passos a seguir:

    • Criar Banco de Dados e Connection Pool.
    • Importar Metadados (não importar chaves).
    • Configurar o Data Type das tabelas físicas (SK default INT).
    • Criar Alias de todas as tabelas físicas.
    • Criar Join entre as tabelas do seu Star Schema, default da tabela Fato para dimensão.
    • Criar Modelo de Negócios e arrastar os Aliases para dentro dele.
    • Definir a regra de agregação das métricas da tabela Fato.
    • Criar Hierarquias (Dimensão Lógica) e configurar: Níveis, chaves e coluna de apresentação.
    • Source da tabela Fato na aba ‘Conteúdo’ definir sempre para o menor nível da Hierarquia.
    • Arrastar o Modelo de Negócios para a Camada de Apresentação e excluir as SK’s.

    Checando as Consistências:
    Após desenvolver o repositório de metadados é preciso validar se ele é consistente. A Ferramenta de Administração contém um sistema de verificação. No menu “Arquivo” clique em “Checar Consistências Globais” e aguarde até o resultado final:

    Obs.: Caso apareça alguma inconsistência, revise as etapas de desenvolvimento e procure corrigi-las, pois subir um RPD com erros pode prejudicar sua instância do OBISEE, além de não se alcançar o resultado esperado nas consultas.

    Publicar o Repositório no OBISEE:
    Acesse a interface do Enterprise Manager (http://host:7001/em) com usuário de perfil Administrator System (Weblogic) e siga os passos conforme a ilustração a seguir:

    Selecione em seu computador o arquivo RPD que desenvolveu, insira a senha, confirme e aplique as alterações, ative-as e em seguida navegue para a aba “Visão Geral”:

    Neste momento você irá reiniciar os serviços do OBISEE conforme a ilustração abaixo:



    Aguarde até que retorne a mensagem dizendo que os serviços foram reiniciados com sucesso.

    Validando os Resultados no OBISEE:
    Acesse a interface do OBISEE Analytics (http://host:9704/analytics) clique em “Novo”, depois em “Relatório” e selecione a área de assunto que você desenvolveu no seu repositório de metadados.
    Selecione as colunas correspondentes às consultasque realizamos como exemplo no início do arquivo:

     


    Carina Mendes - Business Intelligence Consultant.
    Formação Acadêmica em Gestão Financeira e Estatística, Atuação técnica no desenvolvimento de projetos em Oracle BIEE 10g/11g e Oracle Endeca Information Discovery 3.1. Linguagens e ferramentas: Oracle SQL, ODI, AdminTool, Shell, Html e CSS.

    Este artigo foi revisto pela equipe de produtos Oracle e está em conformidade com as normas e práticas para o uso de produtos Oracle.