Criando Cubos OLAP para PCI

O básico do básico é:

  • Crie um XML mapeando o banco de dados em um cubo.
  • Crie uma fonte de dados PCI.
  • Crie um XAction para chamar esse cubo de dentro da PCI.
  • Grave cada um em seu respectivo diretório.
  • Restarte a PCI.

OBSERVAÇÃO: esse artigo ainda está bemn crú. Seu maior propósito é documentar um procedimento oculto na criação de fonte de dados para PCI, que eu não encontrei na wiki internacional. Com exceção disso, registrado no tópico Criando a Fonte de Dados JNDI, quase todo resto é referência à wiki internacional e precisa ser trazida e traduzida para cá.

Mapeando o BD em um Cubo

Há dois programas que criam cubos:

  • SchemaWorkbench: mais completo, mas não publica o cubo na PCI.
  • CubeDesigner: prático para quem está aprendendo, pois além de criar o cubo ainda publica na PCI. Não permite editar um cubo já criado, e dá menos opções à cada item.

Se é a primeira vez que você vai mapear um cubo OLAP, use o CubeDesigner. Depois de criado e publicado (e funcionando), use o SchemaWorkbench para editar o XML.

Gravando na PCI

Tendo seguido o tutorial do CubeDesigner, o cubo vai direto para a PCI. Se você optou por salvar o esquema e depois movê-lo para a PCI, faça o seguinte:

  • Ache o esquema que você criou.
  • Copie-o para a pasta da solução Pentaho de sua escolha (clique aqui? para ver como criar uma)
  • Renomeie o arquivo de destino para terminar com mondrian.xml.

Por exemplo, se seu esquema chama-se esquema1.xml, ele deverá chamar-se esquema1.mondrian.xml na pasta de destino.

Criando a Fonte de Dados JNDI

Sem muito tempo para refinar: link na wiki internacional mostrando onde e como criar esse arquivo.

Gravando na PCI

Veja o link acima. De maneira geral, porém, basta gravar seu arquivo JNDI no diretório /pci/server/default/deploy, e renomeá-la para -ds.xml. Por exemplo, se seu JNDI chama-se MeuJNDI?.xml, ele deverá chamar-se MeuJNDI?-ds.xml na pasta de destino.

Acontece que eles não contam tudo: para que a fonte de dados esteja disponível, não basta existir nesse diretório e ter esse nome. É preciso haver referência à ela em mais dois arquivos XML, e ambos ficam no diretório \pci\jboss\server\default\deploy\pentaho.war\WEB-INF:

  • web.xml
  • jboss-web.xml

O jboss-web.xml é um arquivo pequeno, e contém referências à recursos (resource references) da aplicação. Já o web.xml contém várias definições da PCI, incluindo o IP a qual deve responder e a pasta-raiz de soluções. No final dele, porém, existe a mesma lista de referências a recursos adicionais. É nessa seção que precisa ser incluída uma descrição da fonte de dados JNDI, como um recurso adicional.

Por exemplo, para a fonte de dados MeuJNDI?.xml, você precisaria adicionar a seguinte tag XML ao final dos dois arquivos. Para o web.xml:

  <resource-ref>
    <description>meujndi</description>
    <res-ref-name>jdbc/meujndi</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
  </resource-ref>

Para o jboss-web.xml:

  <resource-ref>
    <res-ref-name>jdbc/meujndi</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <jndi-name>java:/meujndi</jndi-name>
  </resource-ref>

Preste atenção às últimas linhas de cada arquivo, pois elas contém o fecho de uma tag global, que é aberta muito antes (em geral no início de cada documento).

Por exemplo, esse é o final do meu web.xml:

    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
  </resource-ref>
</web-app>

Que é quase idêntico ao final do meu jboss-web.xml:

    <jndi-name>java:/meujndi</jndi-name>
  </resource-ref>
</jboss-web>

Criando o XAction

Baixe o Pentaho Design Studio e [[http://wiki.pentaho.com/display/studio/1.+Installation][instale-o].

Abra-o clicando no .exe (quem sabe como faz em Linux?) Crie um novo projeto e associe-o à pasta raiz da PCI. Navegue até a pasta onde você gravou o esquema e clique com o botão da direita sobre a pasta. Peça um novo objeto de BI.

Sem tempo agora: siga a segunda parte de [http://wiki.pentaho.com/display/COM/Evaluating+Pentaho+Analysis].

Gravando na PCI

Se você configurou o DesignStudio? corretamente, ao salvar o XAction já o fez no lugar correto.

Topic revision: r2 - 11 Jun 2008 - 23:41:00 - FabioDeSalles
 
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Wiki-SL? Send feedback