Native Analysen mit MongoDB und dem Pentaho Analyzer

Native Analysen mit MongoDB und dem Pentaho Analyzer

Pentaho & MongoDB
Pentaho & MongoDB

Der Pentaho Analyzer ist ein Tool zur Visualisierung und Auswertung von Daten. Bis vor kurzem war der Analyzer nur mit relationalen Datenbanksystemen einsetzbar. Erst seit Herbst 2014 ermöglicht Pentaho mit der Version 5.1, native Analysen auf dem MongoDB-Datenspeicher durchzuführen. Damit ist Pentaho die erste End-to-End-Analyselösung für MongoDB. Anlass, sich den Analyzer im Zusammenhang mit MongoDB näher anzuschauen.

Ad-Hoc-Analysen, Dashboards und Reports lassen sich durch die neue Unterstützung ohne umständliche manuelle Programmierung direkt erzeugen. Vor Version 5.1 war es nämlich so, dass, ähnlich wie bei anderen Software-Lösungen, die Daten aus MongoDB extrahiert, relational aufbereitet und anschließend in ein geeignetes Relational Database Management System (RDBMS) geladen werden mussten. Das ist jetzt nicht mehr nötig und macht es daher eine ziemlich spannende Geschichte. Diese Funktionalität zeigt Pentaho in einer Demoanwendung, die man sich unter http://www.pentaho.com/analytics-for-mongodb herunterladen kann.

Ich habe mir interessehalber den Integrationsprozess in der Demo genauer angeschaut. Er verläuft in drei Schritten:

  • Importieren der Rohdaten
  • Importieren der Mondrian-Schemata
  • Erzeugen der Datenbankverbindung

Bevor mit den eigentlichen Integrationen begonnen werden kann, müssen zuerst die Rohdaten im Datenbankmanagementsystem hinterlegt werden. Diese sind bereits Teil der Pentaho Enterprise Edition und finden sich im Verzeichnis /pentaho-solutons/system/samples/ mondrian-data-foodmart-json-0.3.3.zip. Wenn das passiert ist, muss man die Daten über die Funktion mongoimport -db foomart – <Name der Kollektion> –type json –file <Dateiname>in die Datenbank laden. Sie sollten dabei unbedingt auf die korrekte Benennung der Kollektionen achten:

Dateiname                                                  Name der Kollektion
sales_fact_1997_collapsed.json                 sales
foodmart_data_sales_transactions.json     sales_transactions
agg_g_ms_pcat_sales_fact_1997.json      agg_g_ms_pcat_sales_fact_1997
agg_c_10_sales_fact_1997.json                agg_c_10_sales_fact_1997

Nach dem Import der Daten hinterlegt man das Mondrian-Schema im Analyzer. Das Schema befindet sich im Verzeichnis /pentaho-solutons/system/samples/FoodMart.mongo.xml. Die Integration läuft wie bei der Einbindung der herkömmlichen Schemata relationaler Datenbanksysteme über die User Console.

Pentaho & MongoDB (Quelle: Pentaho)
Pentaho & MongoDB (Quelle: Pentaho)

Abschließend definiert man die entsprechende Datenbankverbindung. Bislang ist es leider nicht möglich, einen entsprechenden JDBC- oder ODBC- Treiber zu verwenden wie bei relationalen Datenbanken. Zum Erzeugen der Verbindung ist es notwendig, die Olap4J Properties zu bearbeiten (das kann man mit jedem gewöhnlichen Texteditor tun, die Datei findet man unter pentaho-solutions/system).

 

Dazu sind die folgenden Erweiterungen nötig:

foodmart.name=MongoFoodmart
foodmart.className=org.pentaho.platform.plugin.services.connections.PentahoSystemDriver
foodmart.connectString=jdbc:mondrian4:Host=127.0.0.1;dbname=test;authenticationDatabase=admin;DataServicesProvider=com.pentaho.analysis.mongo.MongoDataServicesProvider;Catalog=solution:/home/admin/pentaho-mongolap/test-data/FoodMart.mongo.xml;username=bizreporter;password=ENC:Yml6M3ViZWQ=

Detailansicht:

MongoFoodmart                                         Name des Mondrian-Schemas
-foodmart                                                    Name der Datenbankverbindung
-Host                                                          Server-IP, auf dem die Datenbank liegt
-dbname                                                     Name der MongoDB-Datenbank
-Catalog                                                     Serververzeichnis, in dem das Schema liegt
-username                                                  Nutzer mit Zugriff auf die Datenbank
-password                                                  Verschlüsseltes Passwort des Nutzer

Den so entstandenen Datenspeicher kann man sofort für Ad-hoc-Auswertungen, Dashboards und Reports verwenden und profitiert dabei von der hohen Geschwindigkeit von MongoDB. Durch diese neue Verbindungsmöglichkeit wird Pentaho zur ersten vollständigen Analyselösung für MongoDB, die Auswertungen in Pentaho auf MongoDB-Datenbeständen ermöglicht und die klassische N-Architektur obsolet macht.

10. März 2021

Die Rolle von Daten in der Digitalisierung

Wie wird man smart mit Hilfe von Sensoren und Open Source-Technologien?

17. März 2021

Data Catalog

Unternehmensdatenbestände einfach klassifizieren und organisieren

18. März 2021

360 Grad Impulse

360 Grad Impulse für KMU – Digitalisierung, Analytics & IoT Daten – der Motor der Digitalisierung

24. März 2021

Meet & Eat Online Event

Wie Sie mit Open Source Tools Ihre Datenrevolution vorantreiben!
Standorte