Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Instalando os drivers MySQL JDBC nas ferramentas Pentaho Data Integration e BA Server

Introdução


As ferramentas Pentaho Data Integration e BA Server vêm com muitos drivers de banco de dados diferentes. No entanto, a partir da versão 7 do Community Edition, eles não vêm com drivers JDBC para Oracle, SQL Server ou MySQL (em ferramentas de integração de dados). As etapas a seguir descrevem como adicionar os drivers MySQL JDBC ao Pentaho.

Siga estas instruções sobre como instalar o servidor Pentaho BA e as ferramentas de integração de dados se as ferramentas ainda não tiverem sido instaladas. Após instalar as ferramentas Pentaho, desligue o servidor BA e o software Data Integration.

Obtendo os Drivers JDBC MYSQL


Os drivers JDBC para MySQL são chamados de “Connector/J”

Visite:https://dev.mysql.com/downloads/connector/j/




Role para baixo até a seção com as opções de download.

Certifique-se de que “Independente de plataforma” esteja selecionado

Para o sistema operacional Windows, baixe o arquivo ZIP



Faça login com sua conta no site da Oracle (ou crie uma gratuitamente). Ou clique no botão Basta iniciar meu download link.



Salve o arquivo ZIP em uma pasta:




Descompacte (descompacte) o arquivo ZIP:




As instruções para copiar os drivers JDBC para as pastas apropriadas nas ferramentas Pentaho estão descritas na próxima página.

Observe que, a partir de novembro de 2019, as ferramentas Pentaho versão 8.x não funcionarão diretamente com os drivers MySQL Connector versão 8.x mais recentes. A solução mais fácil é usar os drivers MySQL 5.x Connector. Uma solução alternativa é usar os drivers MySQL versão 8.x, mas usar uma conexão genérica. Algumas discussões podem ser encontradas neste link. Outra dica é instalar o Plugin PDI MySql do Pentaho Marketplace no Pentaho Data Integration.


Copiando os arquivos do driver JDBC para as pastas Pentaho BA Server e Data Integration Lib


Localize o arquivo mysql-connector-java-5.1.41-bin.jar (observe que ele pode ter um nome ligeiramente diferente dependendo da versão).

Copie este arquivo .jar para a pasta LIB apropriada na distribuição Pentaho Community Edition.

Para Pentaho Data Integration, a pasta de destino deve ser .\Pentaho\data-integration\lib conforme mostrado abaixo:



O Pentaho BA Server armazena seus drivers na pasta .\pentaho-server\tomcat\lib. Certifique-se de que um driver MySQL JDBC ainda não esteja instalado. Nesse caso, mantenha apenas a cópia mais recente do arquivo .jar. Por exemplo, a versão 7.0 do Pentaho Server inclui a versão MySQL JDBC Driver mysql-connector-java-5.1.17. No entanto, esta versão tem alguns bugs, então certifique-se de remover o arquivo mysql-connector-java-5.1.17.jar e substituí-lo pelo arquivo mysql-connector-java-5.1.41-bin.jar mais recente.




Agora que os drivers JDBC foram copiados para as pastas apropriadas, reinicie o Pentaho BA Server (start-pentaho) e inicie as ferramentas de integração de dados (Spoon). Instruções sobre como criar uma conexão de banco de dados no Pentaho Data Integration Tools são fornecidas na próxima página.


Configurando uma conexão MySQL no Pentaho Data Integration


Siga este conjunto de etapas para criar uma nova conexão de banco de dados com o MySQL a partir das ferramentas Pentaho Data Integration. No Pentaho Data Integration, muitas das etapas de transformação enviam os dados para uma tabela de banco de dados. Alguns exemplos podem ser encontrados neste tutorial sobre Pentaho Data Integration.

Antes de começar, você precisará de credenciais de login para uma instância MySQL. Você pode visitar meu tutorial sobre como configurar uma instância MySQL gratuita no GearHost ou este tutorial sobre como instalar o MySQL no Windows.

No Pentaho Data Integration, escolha qualquer etapa de transformação que use um banco de dados como saída, como uma etapa de Pesquisa/Atualização de Dimensão, Inserir/Atualizar ou Saída de Tabela. Clique em Novo botão próximo ao nome da conexão para abrir a caixa de diálogo Conexão do banco de dados, conforme mostrado abaixo.

Dê um nome para a conexão e selecione MySQL como o Tipo de Conexão.

Forneça o Nome do host do servidor que executa o MySQL. Se você tiver o MySQL instalado em seu PC ou servidor local, use localhost como o Nome do host . Forneça o Nome do banco de dados e use o Número da porta padrão de 3306. Por fim, forneça ao banco de dados MySQL Nome de usuário e Senha .



Clique em Testar botão para certificar-se de que a conexão com o banco de dados está funcionando corretamente.



Se o seguinte erro aparecer, certifique-se de que o arquivo .jar do driver MySQL JDBC foi copiado para o Pentaho Data Integration lib (conforme discutido na página anterior deste tutorial). Saia da ferramenta de integração de dados e execute-a novamente.


Error connecting to database [MySQLConnetion] :
     org.pentaho.di.core.exception.KettleDatabaseException: 
Error occurred while trying to connect to the database
Driver class 'org.gjt.mm.mysql.Driver' could not be found, 
make sure the 'MySQL' driver (jar file) is installed.


Observe que, a partir de novembro de 2019, as ferramentas Pentaho versão 8.x não funcionarão diretamente com os drivers MySQL Connector versão 8.x mais recentes. A solução mais fácil é usar os drivers MySQL 5.x Connector. Uma solução alternativa é usar os drivers MySQL versão 8.x, mas usar uma conexão genérica. Algumas discussões podem ser encontradas neste link. Outra dica é instalar o Plugin PDI MySql do Pentaho Marketplace no Pentaho Data Integration.

Certifique-se de definir o Esquema de Destino em qualquer saída do banco de dados ou etapas de pesquisa de Dimensão. No MySQL, o esquema pode ser deixado em branco para usar o banco de dados MySQL padrão.

Se você praticou a execução da transformação no banco de dados H2 como destino, costumava tornar PUBLIC o esquema de destino. para MySQL apenas deixe o esquema de destino em branco para que o padrão seja usado.

A próxima página aborda como configurar uma nova conexão de banco de dados e fonte de dados Mondrian no Pentaho BA Server.


Configurando uma fonte de dados MySQL no servidor Pentaho BA



Na página inicial do console do usuário Pentaho, clique em Gerenciar fontes de dados botão para abrir a tela Gerenciar fontes de dados. O primeiro passo a partir deste ponto será criar uma nova conexão de banco de dados para um banco de dados MySQL.

Clique no ícone de engrenagem para abrir o menu e, em seguida, clique em Nova conexão… item de menu como mostrado abaixo.



Forneça um nome para a nova Conexão de Banco de Dados. Selecione MySQL como o Tipo de banco de dados e, em seguida, clique na opção Nativo (JDBC) em Acesso: cabeçalho. Preencha o Nome do host , Nome do banco de dados , Número da porta , Nome de usuário e Senha para seu banco de dados MySQL. Se o MySQL estiver instalado em seu PC ou servidor local, use localhost como o Nome do host .



Quando terminar, clique no botão azul Testar botão para testar a conexão do banco de dados



Se houver algum erro, verifique as informações de conexão (nome do host, nome de usuário, senha etc.) e repita o teste.

Se você receber um erro relacionado a conexões SSL (sua conexão pode expirar após alguns minutos), adicione o parâmetro useSSL com o valor false conforme mostrado abaixo.



Quando terminar, clique em OK botão para salvar a nova conexão de banco de dados. A nova conexão de banco de dados deve aparecer agora na lista:



Agora que a conexão foi criada e testada, uma fonte de dados Mondrian pode ser criada. Essas instruções são fornecidas na próxima página.


Criando uma nova fonte de dados no servidor Pentaho BA


No Pentaho BA Server, uma fonte de dados representa um esquema de banco de dados multidimensional Mondrian que fica sobre um armazenamento de dados multidimensional ou um banco de dados relacional. A fonte de dados requer uma conexão com o banco de dados subjacente e um modelo de dados Mondrian a ser construído sobre ele. O Modelo de Dados Mondrian consiste em Dimensões e Medidas. As Dimensões contêm campos empilhados em uma hierarquia. É possível ter vários modelos de dados diferentes construídos sobre a mesma fonte de dados subjacente.


Para começar a criar uma nova fonte de dados, clique no botão azul Nova fonte de dados botão. O Assistente de fonte de dados será iniciado.

Preencha um novo nome para a Fonte de dados e selecione a Conexão de banco de dados . Escolha a(s) tabela(s) de banco de dados como a origem Tipo. Para este exemplo, trabalharemos com um esquema em estrela, por isso selecionamos a opção para Relatórios e análises .



Clique em Próximo botão e o servidor Pentaho BA irá consultar o esquema do banco de dados subjacente para a conexão de banco de dados



A próxima tela do assistente apresentará uma lista das tabelas que foram encontradas no esquema da Conexão do Banco de Dados.



Clique em uma das Tabelas Disponíveis e clique no botão de seta para a direita para movê-lo para as Tabelas selecionadas lateral. Repita isso para cada uma das tabelas que serão incluídas na fonte de dados.

Como este exemplo usa uma opção "Relatório e análise", uma das tabelas do banco de dados precisará ser selecionada como a Tabela de fatos . Depois que essas alterações forem feitas, clique no botão Próximo botão para ir para a etapa final para definir junções.




Nota:Se nenhuma chave estrangeira aparecer, certifique-se de estar trabalhando com o driver MySQL JDBC mais recente, pois ele corrige vários bugs. mysql-connector-java-5.1.17 é uma versão mais antiga que vem com o Pentaho Server 7.0. Se você atualizar o driver JDBC, certifique-se de reiniciar o Pentaho BA Server.

Para cada par de tabelas, clique no Campo-chave na Tabela Esquerda e no Campo-chave associado na tabela direita. Em seguida, clique no botão Criar associação link. No exemplo abaixo, uma junção foi criada entre a tabela sales_fact e a tabela customer_dim usando a chave comum customer_dim_id.



Repita isso para cada par de chaves. Neste exemplo há uma tabela de fatos e 5 tabelas de dimensões resultando na criação de 5 junções. Se você cometer um erro, destaque a associação e clique no botão Excluir associação link.



Ao concluir, clique no botão Concluir botão.




Clique em OK botão para retornar ao Gerenciar fontes de dados tela.



Uma nova fonte de dados foi criada com um modelo de dados padrão. No entanto, este modelo de dados precisará de alguma edição. Instruções sobre como editar um modelo de dados Mondrian são fornecidas na próxima página.


Editar o modelo de dados Mondrian para definir dimensões e medidas



Destaque a fonte de dados, puxe o ícone de engrenagem e selecione Editar . Isso abrirá o Editor de modelo de fonte de dados . O modelo padrão copia todas as colunas do esquema como Dimensões e Medidas. No entanto, esse modelo padrão provavelmente não funcionará, pois as hierarquias ainda não foram definidas.


Limpar o modelo de dados existente


Clique no botão mostrado abaixo para Limpar o modelo atual.



Quando solicitado a confirmar, clique em Sim para limpar o modelo



O modelo agora será limpo e as Medidas e Dimensões mostrarão um aviso, pois não há conteúdo.


Criando uma nova medida


Crie uma nova medida arrastando e soltando o Fato de vendas do Disponível ao lado das Medidas entrada na seção Análise aba.



Remova cada um dos IDs de dimensão e o ID do ORDER das medidas, pois essas não são realmente medidas (são as chaves estrangeiras). Clique em Customer dim id e, em seguida, clique no X azul para removê-lo. Repita para os outros IDs de dimensão.


Criando a dimensão CLIENTE


Com as Medidas no lugar, as Dimensões podem ser criadas. Clique nas Dimensões entrada e clique em Adicionar dimensão botão como mostrado abaixo.



Nomeie esta nova dimensão CUSTOMER (Certifique-se de usar nomes não plurais para as dimensões) e clique em OK botão.



O CLIENTE dimensão será criada com uma Hierarquia CUSTOMER abaixo dela:



Abra o Customer Dim no painel Available. Arraste o campo COUNTRY_NAME e solte-o na Hierarquia do CLIENTE como mostrado abaixo. Pode levar algumas tentativas para obter isso no lugar certo.



O resultado mostrará o NOME DO PAÍS que aparece na Hierarquia do CLIENTE.




Repita as etapas acima para adicionar STATE_PROVINCE e CITY à hierarquia CUSTOMER. Para cada um dos campos na Hierarquia CUSTOMER, altere o tipo de Geografia para corresponder. Por exemplo, COUNTRY_NAME deve ter o tipo de geografia “Country” e STATE_PROVINCE deve ter o tipo de geografia “State”.


Criando a dimensão de data


Clique na entrada DIMENSIONS e, em seguida, clique em Add Dimension botão. Nomeie a nova dimensão DATE. Clique no nome da dimensão DATE e marque a caixa “Time Dimension”:




Arraste e solte o Ano de vendas, Trimestre de vendas, Nome do mês de vendas, Dia do ano de vendas e Data de vendas para DATE
Hierarquia . Para cada campo, selecione o Tipo de nível de tempo apropriado e Formato da coluna de origem .



A dimensão DATE concluída deve ter a seguinte aparência:


Criando a dimensão PRODUCT


Clique nas Dimensões entrada e clique em Adicionar dimensão botão. Nomeie a nova dimensão PRODUCT. Arraste e solte CATEGORY_NAME, SUB_CATEGORY_NAME e PRODUCT_NAME na Hierarquia do PRODUCT .



Clique em OK botão para fechar o Data Source Model Editor.

Saia do Pentaho User Console, desligue o servidor Pentaho usando o script stop-pentaho e reinicie o Pentaho Server.

Agora que o Modelo de Dados Mondrian foi criado, a nova Fonte de Dados está pronta para ser usada para criar visualizações em um painel ou para fins de relatório.


Criando um gráfico simples usando o OLAP Chart Wizard


Crie um novo Dashboard (ou edite um Dashboard existente) e use o OLAP Wizard para criar um novo gráfico







Abaixo está a consulta MDX que é gerada automaticamente pelo OLAP Wizard:
select NON EMPTY({Descendants([CUSTOMER].[All CUSTOMERs] ,[CUSTOMER].[CITY])}) on ROWS, 
 NON EMPTY({Descendants([PRODUCT].[All PRODUCTs] ,[PRODUCT].[SUB CATEGORY NAME])}) on Columns 
 from [Customer_Sales]