sql >> Database teknologi >  >> RDS >> Mysql

Installation af MySQL JDBC-drivere i Pentaho Data Integration og BA Server-værktøjer

Introduktion

Pentaho Data Integration og BA Server-værktøjerne leveres med mange forskellige databasedrivere. Men fra og med version 7 af Community Edition kommer de ikke med JDBC-drivere til Oracle, SQL Server eller MySQL (i dataintegrationsværktøjer). De følgende trin beskriver, hvordan du tilføjer MySQL JDBC-driverne til Pentaho.

Følg disse instruktioner om installation af Pentaho BA-server- og dataintegrationsværktøjer, hvis værktøjerne endnu ikke er installeret. Efter installation af Pentaho-værktøjerne, luk BA-serveren og dataintegrationssoftwaren ned.

Anskaffelse af MYSQL JDBC-drivere

JDBC-driverne til MySQL kaldes "Connector/J"

Besøg:https://dev.mysql.com/downloads/connector/j/

Rul ned til afsnittet med downloadmuligheder.

Sørg for, at "Platformuafhængig" er valgt

For Windows-operativsystem download ZIP-arkivet

Log ind med din Oracle-webstedskonto (eller opret en gratis). Eller klik på Start bare min download link.

Gem ZIP-filen i en mappe:

Udpak (dekomprimer) ZIP-arkivet:

Instruktioner til kopiering af JDBC-driverne til de relevante mapper i Pentaho-værktøjerne er beskrevet på næste side.

Bemærk, at fra november 2019 vil Pentaho version 8.x-værktøjerne ikke fungere direkte med de nyere MySQL Connector version 8.x-drivere. Den nemmeste løsning er at bruge MySQL 5.x Connector-driverne. En løsning er at bruge MySQL version 8.x-driverne, men bruge en generisk forbindelse. Nogle diskussioner kan findes på dette link. Et andet tip er at installere PDI MySql Plugin fra Pentaho Marketplace i Pentaho Data Integration.

Kopiering af JDBC-driverfilerne til mapperne Pentaho BA Server og Data Integration Lib

Find filen mysql-connector-java-5.1.41-bin.jar (bemærk, at den kan have et lidt anderledes navn afhængigt af versionen).

Kopier denne .jar-fil til den relevante LIB-mappe i Pentaho Community Edition-distributionen.

For Pentaho Data Integration skal målmappen være .\Pentaho\data-integration\lib som vist nedenfor:

Pentaho BA-serveren gemmer sine drivere i mappen .\pentaho-server\tomcat\lib. Sørg for, at en MySQL JDBC-driver ikke allerede er installeret. Hvis ja, behold kun den seneste kopi af .jar-filen. For eksempel inkluderer version 7.0 af Pentaho Server MySQL JDBC-driverversion mysql-connector-java-5.1.17. Denne version har dog nogle fejl, så sørg for at fjerne den mysql-connector-java-5.1.17.jar-fil og erstatte den med den seneste mysql-connector-java-5.1.41-bin.jar-fil.

Nu hvor JDBC-driverne er blevet kopieret til de relevante mapper, genstart Pentaho BA-serveren (start-pentaho) og start dataintegrationsværktøjerne (Spoon). Instruktioner om oprettelse af en databaseforbindelse i Pentaho Data Integration Tools findes på næste side.

Opsætning af en MySQL-forbindelse i Pentaho Data Integration

Følg dette sæt trin for at oprette en ny databaseforbindelse til MySQL fra Pentaho Data Integration-værktøjerne. I Pentaho Data Integration sender mange af transformationstrinene dataene til en databasetabel. Nogle eksempler kan findes i denne tutorial om Pentaho Data Integration.

Før du går i gang, skal du bruge login-legitimationsoplysninger til en MySQL-instans. Du ønsker måske at besøge min vejledning om opsætning af en gratis MySQL-instans på GearHost eller denne vejledning om installation af MySQL på Windows.

I Pentaho Data Integration skal du vælge et hvilket som helst transformationstrin, der bruger en database som output, såsom et Dimension Lookup/Update, Insert/Update eller Table Output-trin. Klik på Ny knappen ved siden af ​​forbindelsesnavnet for at åbne dialogboksen Databaseforbindelse som vist nedenfor.

Giv et navn til forbindelsen, og vælg derefter MySQL som forbindelsestype.

Angiv værtsnavnet af serveren, der kører MySQL. Hvis du har MySQL installeret på din lokale pc eller server, skal du bruge localhost som Host Name . Angiv databasenavnet og brug standard portnummer af 3306. Giv endelig MySQL-databasen Brugernavn og Adgangskode .

Klik på Test knappen for at sikre, at databaseforbindelsen fungerer korrekt.

Hvis følgende fejl vises, skal du sørge for, at MySQL JDBC-driveren .jar-filen er blevet kopieret til Pentaho Data Integration lib mappe (som diskuteret på den foregående side i denne øvelse). Afslut dataintegrationsværktøjet, og kør det igen.

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.

Bemærk, at fra november 2019 vil Pentaho version 8.x-værktøjerne ikke fungere direkte med de nyere MySQL Connector version 8.x-drivere. Den nemmeste løsning er at bruge MySQL 5.x Connector-driverne. En løsning er at bruge MySQL version 8.x-driverne, men bruge en generisk forbindelse. Nogle diskussioner kan findes på dette link. Et andet tip er at installere PDI MySql Plugin fra Pentaho Marketplace i Pentaho Data Integration.

Sørg for at indstille målskemaet i alle databaseoutput- eller dimensionsopslagstrin. I MySQL kan skemaet efterlades tomt for at bruge standard MySQL-databasen.

Hvis du havde øvet dig i at køre transformation mod H2-databasen som et mål, plejede du at gøre PUBLIC til målskemaet. for MySQL skal du bare lade målskemaet være tomt, så standarden vil blive brugt.

Den næste side dækker, hvordan man opsætter en ny databaseforbindelse og Mondrian-datakilde i Pentaho BA Server.

Opsætning af en MySQL-datakilde i Pentaho BA Server

Fra hjemmesiden for Pentaho-brugerkonsollen skal du klikke på Administrer datakilder knappen for at åbne skærmen Administrer datakilder. Det første skridt fra dette punkt vil være at oprette en ny databaseforbindelse til en MySQL-database.

Klik på Gear-ikonet for at åbne menuen, og klik derefter på Ny forbindelse... menupunkt som vist nedenfor.

Angiv et navn til den nye databaseforbindelse. Vælg MySQL som Database Type og klik derefter på indstillingen Native (JDBC) under Adgang: overskrift. Udfyld Værtsnavnet , Databasenavn , Portnummer , Brugernavn og Adgangskode til din MySQL-database. Hvis MySQL er installeret på din lokale pc eller server, skal du bruge localhost som Værtsnavn .

Når du er færdig, skal du klikke på den blå Test knappen for at teste databaseforbindelsen

Hvis der er fejl, skal du kontrollere forbindelsesoplysningerne (værtsnavn, brugernavn, adgangskode osv.) og derefter gentage testen.

Hvis du modtager en fejl vedrørende SSL-forbindelser (din forbindelse kan timeout efter et par minutter), skal du tilføje useSSL-parameteren med værdien false som vist nedenfor.

Når du er færdig, skal du klikke på OK knappen for at gemme den nye databaseforbindelse. Den nye databaseforbindelse skulle nu vises på listen:

Nu hvor forbindelsen er oprettet og testet, kan der oprettes en Mondrian-datakilde. Disse instruktioner findes på næste side.

Oprettelse af en ny datakilde i Pentaho BA Server

I Pentaho BA Server repræsenterer en datakilde et Mondrian multidimensionelt databaseskema, der sidder oven på enten et multidimensionelt datalager eller en relationsdatabase. Datakilden kræver en forbindelse til den underliggende database og en Mondrian-datamodel, der skal konstrueres oven på den. Mondrian-datamodellen består af dimensioner og mål. Dimensioner indeholder felter, der er stablet i et hierarki. Det er muligt at have flere forskellige datamodeller, der er konstrueret oven på den samme underliggende datakilde.

For at komme i gang med at oprette en ny datakilde skal du klikke på den blå Ny datakilde knap. Datakildeguiden starter.

Udfyld et nyt navn for datakilden og vælg Databaseforbindelse . Vælg databasetabell(er) som kilde Type. I dette eksempel vil vi arbejde med et stjerneskema, så vi vælger muligheden for Rapportering og analyse .

Klik på Næste knappen, og Pentaho BA-serveren vil forespørge efter skemaet for den underliggende database for databaseforbindelsen

Det næste skærmbillede i guiden viser en liste over de tabeller, der blev fundet i skemaet fra databaseforbindelsen.

Klik på en af ​​de Tilgængelige tabeller og klik derefter på højre pileknap for at flytte den til Valgte tabeller side. Gentag dette for hver af de tabeller, der vil blive inkluderet i datakilden.

Fordi dette eksempel bruger muligheden "Rapportering og analyse", skal en af ​​databasetabellerne vælges som faktatabellen . Når disse ændringer er foretaget, skal du klikke på Næste knappen for at gå til det sidste trin for at definere joinforbindelser.

Bemærk:Hvis der ikke vises nogen fremmednøgler, skal du sørge for, at du arbejder med den nyeste MySQL JDBC-driver, da den løser flere fejl. mysql-connector-java-5.1.17 er en ældre version, der leveres med Pentaho Server 7.0. Hvis du opdaterer JDBC-driveren, skal du sørge for at genstarte Pentaho BA-serveren.

For hvert par af borde skal du klikke på Nøglefeltet i den venstre tabel og det tilhørende nøglefelt i højre tabel. Klik derefter på Opret tilmelding link. I eksemplet nedenfor blev der oprettet en joinforbindelse mellem salgsfakta-tabellen og derefter customer_dim-tabellen ved hjælp af den fælles nøgle customer_dim_id.

Gentag dette for hvert par nøgler. I dette eksempel er der én faktatabel og 5 dimensionstabeller, hvilket resulterer i oprettelsen af ​​5 joins. Hvis du laver en fejl, skal du markere deltagelsen og klikke på Slet deltagelse link.

Når du er færdig, skal du klikke på Udfør knap.

Klik på OK knappen for at vende tilbage til Administrer datakilder skærm.

En ny datakilde er nu blevet oprettet med en standard datamodel. Denne datamodel skal dog redigeres. Instruktioner om redigering af en Mondrian-datamodel findes på næste side.

Rediger Mondrian-datamodellen for at definere dimensioner og mål

Fremhæv datakilden, træk tandhjulsikonet ned og vælg Rediger . Dette åbner Data Source Model Editor . Standardmodellen kopierer over alle kolonnerne fra skemaet som Dimensioner og Mål. Men denne standardmodel vil sandsynligvis ikke fungere, da hierarkier endnu ikke er defineret.

Rydning af den eksisterende datamodel

Klik på knappen vist nedenfor for at Ryd den nuværende model.

Klik på Ja, når du bliver bedt om at bekræfte for at rydde modellen

Modellen vil nu blive ryddet ud, og Mål og Dimensioner vil vise en advarsel, da der ikke er noget indhold.

Oprettelse af en ny foranstaltning

Opret et nyt mål ved at trække og slippe salgsfakta fra Tilgængelig side over til Foranstaltninger post under Analyse fanen.

Fjern hver af dimensions-id'erne og ORDER ID'et fra målene, da disse ikke virkelig er mål (de er fremmednøglerne). Klik på Customer dim id og klik derefter på det blå X at fjerne det. Gentag for de andre dimensions-id'er.

Oprettelse af KUNDE-dimensionen

Med foranstaltningerne på plads, kan Dimensioner oprettes. Klik på Dimensioner og klik derefter på Tilføj dimension knap som vist nedenfor.

Navngiv denne nye dimension KUNDE (sørg for at bruge ikke-flertalsnavne for dimensionerne) og klik på OK knap.

KUNDEN dimension vil blive oprettet med et KUNDE-hierarki under sig:

Åbn Customer Dim på panelet Tilgængelig. Træk feltet COUNTRY_NAME og slip det på CUSTOMER hierarkiet som vist nedenfor. Det kan tage et par forsøg at få dette på det rigtige sted.

Resultatet vil vise LANDETS NAVN, der vises i KUNDE-hierarkiet.

Gentag ovenstående trin for at tilføje STATE_PROVINCE og CITY til KUNDE-hierarkiet. For hvert af felterne i KUNDE-hierarkiet skal du ændre Geografi-typen, så den matcher. F.eks. skal COUNTRY_NAME have Geografitype "Land", og STATE_PROVINCE skal have Geografitype "State".

Oprettelse af datodimensionen

Klik på DIMENSIONS-posten, og klik derefter på Tilføj dimension knap. Navngiv den nye dimension DATO. Klik på navnet på DATO-dimensionen, og marker afkrydsningsfeltet for "Tidsdimension":

Træk og slip salgsåret, salgskvartalet, salgsmånedens navn, salgsdagen på året og salgsdatoen til DATO
Hierarkiet . For hvert felt skal du vælge den relevante Tidsniveautype og Kildesøjleformat .

Den udfyldte DATE-dimension skulle se sådan ud:

Oprettelse af PRODUKT-dimensionen

Klik på Dimensioner og klik derefter på Tilføj dimension knap. Navngiv den nye dimension PRODUKT. Træk og slip CATEGORY_NAME, SUB_CATEGORY_NAME og PRODUCT_NAME under PRODUCT hierarkiet .

Klik på OK knappen for at lukke Data Source Model Editor.

Log ud af Pentaho-brugerkonsollen, luk Pentaho-serveren ned ved hjælp af stop-pentaho-scriptet, og genstart derefter Pentaho Server.

Nu hvor Mondrian-datamodellen er blevet oprettet, er den nye datakilde klar til at blive brugt til at skabe visualiseringer på et dashboard eller til rapporteringsformål.

Oprettelse af et simpelt diagram ved hjælp af OLAP Chart Wizard

Opret et nyt Dashboard (eller rediger et eksisterende Dashboard), og brug OLAP-guiden til at oprette et nyt diagram

Nedenfor er MDX-forespørgslen, der automatisk genereres af OLAP-guiden:

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]


  1. Undtagelse i hovedtråden java.sql.SQLEundtagelse:Adgang nægtet for brugeren ''@'localhost' (bruger adgangskode:NEJ)

  2. Sådan ændres baggrundsfarven for en formular i Access 2016

  3. Konfiguration med høj tilgængelighed for ClusterControl-noder ved hjælp af CMON HA

  4. Opret en fremmednøgle i SQLite