b.a.b-technologie gmbh DataWarehouse 2 Dokumentation Anleitungsversion III.b Stand 04/2011 Datum: 2. Mai 2013 DE Inhaltsverzeichnis Dokumentation DataWareHouse 2.0 b.a.b – technologie gmbh im INHOUSE Dortmund Rosemeyerstr. 14 44139 Dortmund [email protected] Tel.: +49 (0) 231 – 476 425 - 30 Fax.: +49 (0) 231 – 476 425 - 59 www.bab-tec.de DataWarehouse 2.0 b.a.b-technologie gmbh 2 Inhaltsverzeichnis Dokumentation DataWarehouse 2.0 INHALTSVERZEICHNIS 1 Einführung ............................................................................................................................................ 5 2 Voraussetzungen ................................................................................................................................. 5 3 DataWarehouse 2 starten ................................................................................................................... 6 3.1 3.2 4 Neue Datenbank anlegen ............................................................................................... 6 Datenbank auswählen..................................................................................................... 7 Datenbank Verbindung im eibPort erstellen ................................................................................... 9 4.1 4.2 4.3 Datenbank ....................................................................................................................... 9 Tabelle anlegen ............................................................................................................. 10 Datenbank Verbindung überprüfen ............................................................................. 10 5 Data Warehouse 2 Lizensieren ........................................................................................................ 12 6 Datenbank Auswertung ................................................................................................................... 13 6.1 eibPorts Konfigurieren ................................................................................................... 13 6.1.1 Manuelle Konfiguration............................................................................................. 14 6.1.2 Automatische Konfiguration (via Netzwerk) ............................................................ 14 7 Abfrage starten ................................................................................................................................. 15 7.1 7.2 7.3 Zeitparameter................................................................................................................ 15 Adressfilter ..................................................................................................................... 15 Starten der Abfrage ....................................................................................................... 16 8 Daten exportieren / Auswerten ...................................................................................................... 17 9 Analyse ............................................................................................................................................... 18 10 Wichtige Hinweise zum Umgang mit der Datenbank .................................................................. 19 10.1 10.2 10.3 11 Benutzerrechte für den Datenbankbenutzer ............................................................... 19 Sortierfunktion zur Leistungsoptimierung .................................................................... 20 Event Scheduler aktivieren............................................................................................ 20 Hinweis zur Funktionalen Sicherheit: ............................................................................................. 22 DataWarehouse 2.0 b.a.b-technologie gmbh 3 Inhaltsverzeichnis Dokumentation DataWareHouse 2.0 Abbildungsverzeichnis Abbildung 1: DataWarehouse 2 - Assistent ............................................................................................... 6 Abbildung 2: Datenbankverbindungsassistent ......................................................................................... 7 Abbildung 3: Datenbankverbindung im eibPort ....................................................................................... 9 Abbildung 4: eibPort - Datenbank Status ............................................................................................... 11 Abbildung 5: Menü Hilfe Lizenz................................................................................................................ 12 Abbildung 6: Datenbank auswählen ........................................................................................................ 13 Abbildung 7: DataWarehouse - eibPort Konfigurieren.......................................................................... 13 Abbildung 8: Neue Abfrage ...................................................................................................................... 15 Abbildung 9: Adressfilter........................................................................................................................... 16 Abbildung 10: Analyse - Statistiken ......................................................................................................... 18 Abbildung 11: Meldung "Event Scheduler inaktiv" ............................................................................... 20 DataWarehouse 2.0 b.a.b-technologie gmbh 4 Dokumentation DataWarehouse 2.0 1 Einführung EINFÜHRUNG Der eibPort besitzt einen internen Ringspeicher von 20.000 Telegrammen. Bei einem Ringspeicher wird für das neueste Telegramm da s Älteste gelöscht. Je nachdem wie viel Telegrammverkehr in der Anlage herrscht und ob der eibPort einen Aufzeichnungsfilter enthält, ist dieser innerhalb von wenigen Stunden aufgebraucht. Um eine Telegrammaufzeichnung auch über einen längeren Zeitraum aufbauen zu können, müssen die Daten aus dem eibPort auf ein externes Medium abgelegt werden. Dazu bietet die eibPort Firmware eine MySQL Datenbankverbindung. Die Daten werden dabei automatisch auf einen externen Datenbankserver geschrieben. Um diese Daten am besten zu Organisieren und einer eventuellen Auswertung zuzuführen, dient die eibPort Zusatzsoftware „DataWarehouse 2“. 2 VORAUSSETZUNGEN Damit die hier beschriebenen Funktionen der DataWarehouse 2 und des eibPorts genutzt werden können ist ein MySQL Server im Netzwerk erforderlich. Die Dokumentation über dessen Installation soll hier nicht behandelt werden, da dies von Server zu Serversoftware unterschiedlich ist, und zu jedem Derivat bereits ausreichend gute Installationsanleitungen existieren. Die DataWarehouse 2 stellt folgenden Anforderungen an den MySQL Server: MySQL Version: >= 5.1.12 Außerdem muss der „root“ – User bzw. ein Benutzer mit „SUPER“ Privilegien bekannt sein, damit die DataWarehouse 2 die Datenbank und den entsprechenden Benutzer anlegen kann. Ein aktuelles Installationspaket eines MySQL Servers inklusive Anleitung gibt es hier: http://www.mysql.de Dort kann der sogenannte „Community Server“ heruntergeladen werden. DataWarehouse 2.0 b.a.b-technologie gmbh 5 Dokumentation DataWareHouse 2.0 DataWarehouse 2 starten 3 DATAWAREHOUSE 2 STARTEN Als Java Programm kann die „DataWarehouse 2“ direkt gestartet werden. Über einen Assistenten stellen Sie eine Verbindung zu einer bestehenden Datenbank her oder legen eine neue Datenbank auf einem bestehenden Server an. Abbildung 1: DataWarehouse 2 - Assistent 3.1 NEUE DATENBANK ANLEGEN Wechseln Sie in das Fenster „Datenbank anlegen“ und machen die erforderlichen Angaben. Diese sind: Server Host / Server Port Die IP-Adresse oder der Hostname des Datenbankservers. Die Port Nummer wird darunter eingetragen. Der Standardport für MySQL ist 3306. Admin Benutzer / Admin Passwort Der Admin Benutzer ist der „root“ Benutzer des Datenbankservers. Nur er hat die Rechte Neue Benutzer und Datenbanken anzulegen. Dieser Benutzer wird beim Erstellen des Datenbankservers angelegt. Hinweis: Stellen Sie zuvor sicher das der Datenbankadministrator „root“ die erforderlichen Rechte besitzt. Es kann sein dass der root Benutzer ohne Passwort angelegt ist, und nur die Rechte hat von Lokal aus auf den Server zuzugreifen. Es sollte ein Passwort vergeben sein, und der Benutzer von allen Hosts aus zuzugreifen dürfen (‚%‘). Datenbank Name Legt fest welchen Namen die neue Datenbank bekommt. Datenbank Benutzer / Passwort Ist das Benutzerkonto welches die DataWarehouse 2 benutzt. Die Benutzerdaten werden an dieser Stelle festgelegt. Durch einen Klick auf „OK“ wird die definierte Datenbank mit Benutzerkonto auf dem Server angelegt. Scheitert der Vorgang wird eine entsprechende Fehlermeldung ausgegeben. Kontrollieren Sie dennoch auf Ihrem Datenbank Server ob alles korrekt erstellt wurde (insbesondere der Benutzerrechte). DataWarehouse 2.0 b.a.b-technologie gmbh 6 Dokumentation DataWarehouse 2.0 3.2 DataWarehouse 2 starten DATENBANK AUSWÄHLEN Stellt die Verbindung zu einer bereits bestehenden Datenbank her. Außerdem kann eine Datenbankverbindung geändert werden. Für den Verbindungsassistenten brauchen Sie folgende Angaben: Abbildung 2: Datenbankverbindungsassistent Datenbank Verbindung Geben Sie der Verbindung einen Namen. Server Host Die IP-Adresse oder der Hostname des Rechners auf dem die Datenbank installiert ist. Server Port Die Portnummer auf dem der MySQL Server kommuniziert. Standard ist 3306. Data Warehouse Benutzer / Passwort Der Benutzer-Account über den die DataWarehouse 2 mit dem Datenbankserver kommuniziert. Verbindung Testen Testen Sie Ihre Verbindungsangaben. Falls die Verbindung nicht hergestellt werden kann erscheint eine Fehlermeldung mit entsprechenden Informationen. Datenbank Name Um hier eine Auswahl treffen zu können, muss der obige Verbindungstest erfolgreich verlaufen sein. Es können dann alle zugehörigen Datenbanken ausgewählt werden. Tabelle: Telegrammaufzeichnung Für die spätere Auswertung ist es wichtig dass hier die richtige Tabelle ausgewählt wird. Hier muss immer die Tabelle der Telegrammaufzeichnung ausgewählt werden. In der vordefinierten Tabellenstruktur ist das die Tabelle mit dem Namen „eib_tele“! Die Tabellenstruktur der DataWarehouse 2 Datenbank sieht folgendermaßen aus: dw_eibport dw_knx_data dw_knx_groupaddress dw_knx_grouprange dw_queries eib_tele eib_tele_JJJJ_MM (J = Jahr / M = Monat) DataWarehouse 2.0 b.a.b-technologie gmbh 7 DataWarehouse 2 starten Dokumentation DataWareHouse 2.0 Hinweis: Die Datenbank sortiert nach Ablauf jeden Tages die Tagestelegramme in ein Monatsverzeichnis. Diese werden automatisch erstellt und dienen der besseren Performanz. Weiter Informationen dazu finden Sie im letzten Kapitel. Ist die Datenbank Verbindung erfolgreich angelegt erscheint diese in der Übersicht und ist in Zukunft dort gespeichert. Um in die Auswertungsoberfläche zu gelangen muss die Verbindung einfach doppelt geklickt werden. DataWarehouse 2.0 b.a.b-technologie gmbh 8 Dokumentation DataWarehouse 2.0 4 Datenbank Verbindung im eibPort erstellen DATENBANK VERBINDUNG IM EIBPORT ERSTELLEN Nachdem die Datenbank mittels des Assistenten erfolgreich eingerichtet wurde, muss der eibPort veranlasst werden diese Datenbank mit Daten zu beschreiben. Wechseln Sie dazu in die Konfigurationsoberfläche „System“ (ConfigTool) > „Datenbank“ des eibPorts. Abbildung 3: Datenbankverbindung im eibPort 4.1 DATENBANK Konfigurieren Sie die Datenbankverbindung in dem Sie eine Rechtsklick im linken Fenster tätigen und die Auswahl „Datenbankverbindung hinzufügen“ wählen. Die Datenbank Verbindung benötigt folgende Parameter: Beschreibung Eine eindeutige Beschriftung der Verbindung. Aktivieren Aktiviert oder Deaktiviert die Verbindung. Datenbanktyp Es kann nur der Typ „MySQL“ ausgewählt werden. Host Die IP-Adresse oder der Hostname des Datenbank Servers. Port Der Port auf dem der Datenbankserver kommuniziert. Standardeinstellung ist 3306. Datenbank Bezeichnet den Datenbank Namen. Diesen haben Sie festgelegt als Sie die Datenbank über den Datenbankassistenten angelegt haben. Benutzername / Kennwort Tragen Sie hier die Daten des Datenbankbenutzers ein, den Sie in der DataWarehouse 2 angelegt haben. Drücken Sie dann unterhalb auf den „Speichern“ Button. DataWarehouse 2.0 b.a.b-technologie gmbh 9 Dokumentation DataWareHouse 2.0 Datenbank Verbindung im eibPort erstellen 4.2 TABELLE ANLEGEN Um später die richtigen Daten in der Datenbank zu haben, muss dem eibPort mitgeteilt werden in welche Tabelle er schreiben soll. Klicken Sie dazu wieder auf die neu angelegte Datenbank-verbindung mit der rechten Maustaste und wählen „Tabelle hinzufügen“. Bei der Konfiguration haben Sie folgende Parameter: Bechreibung Eine eindeutige Bezeichnung der Tabelle (z.B. „Telegrammaufzeichnung“). Aktivieren Standardmäßig ist jede neu-angelegte Tabelle aktiviert. Auf Wunsch kann Sie deaktiviert werden. Typ / Name Der eibPort bietet 3 verschiedene Datenbanktypen: Telegramme: Schreibt die Telegrammaufzeichnung in die Datenbank. Standardname „eib_tele“. Status Nachrichten: Schreibt die Adresszustandstabelle in die Datenbank. Standardname „s_table“. Log Nachrichten: Schreibt das eibPort Systemlog in die Datenbank. Standardname „ep_log“. Für die Auswertung der Telegrammdaten ist nur die Tabelle „eib_tele“ interessant. Generiere SQL Anweisung Um auf einem Datenbank Server die erforderliche Struktur anzulegen kann mittels dieser Funktion eine SQL Anweisung generiert werden. Diese kann dann kopiert und auf dem Datenbankserver ausgeführt werden. Für die DataWarehouse 2 ist das nicht nötig, das Anlegen der Datenstruktur ist bereits durch das Programm geschehen. Speichern Die Einstellungen müssen über den „Speichern“ Button gespeichert sein, bevor der eibPort in die Datenbank schreibt. 4.3 DATENBANK VERBINDUNG ÜBERPRÜFEN Um die Verbindung vom eibPort zum Datenbankserver zu überprüfen gibt es ein kleines cgi Script im eibPort welches über eine Webseite aufgerufen werden kann. Tippen Sie dazu in die Adresszeile Ihres Browser folgende Adresse: http://<eibPort_IP>/cgi-bin/db_statecgi Nachdem Sie „Enter“ gedrückt haben wird eine Seite aufgerufen die Ihnen den „eibPort database status“ ausgibt. Dort finden Sie Informationen über den Status der Verbindung. Ist die Verbindung mit der Tabelle „eib_tele“ erfolgreich hergestellt worden sieht die Ausgabe etwas so aus: DataWarehouse 2.0 b.a.b-technologie gmbh 10 Dokumentation DataWarehouse 2.0 Datenbank Verbindung im eibPort erstellen Abbildung 4: eibPort - Datenbank Status Angezeigt wird sowohl der Status der Verbindung zur Datenbank als auch der Verbindungsstatus zur entsprechenden Tabelle. Dabei wird angegeben ob die Verbindung aktiviert ist „Status: enabled“ und ob die Verbindung aktiv ist bzw. ob die Verbindung erfolgreich ist „Active?: yes“. Kann die Verbindung nicht hergestellt werden wird in der Zeile „Active?“ ein „no“ angezeigt und in der Zeile darunter eine Fehlermeldung. Z.B.: „Access denied…“ wegen falscher Benutzerdaten. Überprüfen Sie dann die Einstellungen im eibPort, ändern Sie sie ggf. und speichern die Verbindung neu ab. Um danach erneut den Datenbankstatus abzufragen, muss wieder der oben genannte URL aufgerufen werden. DataWarehouse 2.0 b.a.b-technologie gmbh 11 Dokumentation DataWareHouse 2.0 Data Warehouse 2 Lizensieren 5 DATA WAREHOUSE 2 LIZENSIEREN Um eine gültige Lizenz in die DataWarehouse 2 zu laden nutzen sie bitte das Menü „Hilfe“ > „Lizenz“ im Hauptfenster der DataWarehouse 2. Das Hauptfenster öffnet sich, sobald eine Datenbank-verbindung ausgewählt wurde. Abbildung 5: Menü Hilfe Lizenz Eine Lizenz für die DataWarehouse 2 kann über [email protected] angefordert werden. Ohne Lizenz können Sie keine Daten aus der DataWarehouse 2 exportieren. DataWarehouse 2.0 b.a.b-technologie gmbh 12 Dokumentation DataWarehouse 2.0 6 Datenbank Auswertung DATENBANK AUSWERTUNG Ist wie oben beschrieben eine Datenbankverbindung zu einer bestehenden Datenbank angelegt und befinden sich entsprechenden Daten in dieser, kann eine Auswertung angelegt werden. Klicken Sie dazu doppelt auf die Verbindung um in das Hauptfenster der DataWarehouse 2 zu gelangen. Abbildung 6: Datenbank auswählen 6.1 EIBPORTS KONFIGURIEREN Damit die DataWarehouse 2 die Telegrammdaten richtig interpretieren kann werden die Informationen über die verschiedenen Datentypen benötigt. Dazu dienen die ESF Daten (ETS Adressdatei) die auch der eibPort verwendet. Sie werden in die Datenbank geladen und mit den Telegrammdaten verknüpft. Einmal geladen stehen Sie in Zukunft immer zur Verfügung. Wählen Sie dazu in der DataWarehouse 2 das Menü „Datenbank“ > „eibPorts konfigurieren“. Es werden Ihnen automatisch alle eibPorts angezeigt die in die ausgewählte Datenbank schreiben. Dabei erscheint der eibPort Name und die entsprechende Seriennummer. Um die ESF Daten zu in die Datenbank zu laden stehen Ihnen zwei Möglichkeiten zur Verfügung: Abbildung 7: DataWarehouse - eibPort Konfigurieren DataWarehouse 2.0 b.a.b-technologie gmbh 13 Dokumentation DataWareHouse 2.0 Datenbank Auswertung 6.1.1 MANUELLE KONFIGURATION Die Adressdaten werden manuell, z.B. von der Festplatte des Client Rechners in die DataWarehouse2 geladen. Die Verknüpfung findet automatisch statt. eibPort Name Nutzen Sie am besten denselben Namen wie für den eibPort selbst. ESF Daten importieren Die ESF Daten kommen aus der ETS und enthalten die Informationen über Bezeichner und Datentyp der Adressen. Wählen Sie hier die entsprechende Datei aus (mit der Endung *.esf). Die importierten Daten werden im Fenster „ESF Daten“ angezeigt. Mit „OK“ bestätigen Sie den Vorgang, die Datei wird in der Datenbank gespeichert. 6.1.2 AUTOMATISCHE KONFIGURATION (VIA NETZWERK) Diese Funktion erlaubt es Ihnen die Adressdatei direkt vom eibPort (falls dort vorhanden) in die DataWarehouse 2 zu laden. Dazu muss der Hostname oder die IP-Adresse und der http Port des eibPorts angegeben werden. Parameter einlesen Die ESF Daten werden automatisch aus dem gewähltem eibPort übertragen. Die Daten werden dann im Fenster „ESF Daten“ angezeigt. Durch das Klicken der „OK“ Taste wird die Auswahl bestätigt und in die Datenbank geschrieben. DataWarehouse 2.0 b.a.b-technologie gmbh 14 Dokumentation DataWarehouse 2.0 7 Abfrage starten ABFRAGE STARTEN Um eine Auswertung von bestimmten Telegrammdaten erzeugen zu können, muss eine Abfrage der Datenbank nach Gruppenadresse(n) und Zeitraum erfolgen. Eine Abfrage wird über den Reiter „Neue Abfrage“ gestartet. Dort werden Zeitraum und Gruppenadressen bestimmt. 7.1 ZEITPARAMETER Für die Auswahl des Zeitraums stehen entweder das Monatsarchiv oder eine beliebige definierbare Zeitspanne zur Verfügung. Monatsarchiv Die Monatsarchive werden von der Datenbank automatisch erzeugt. Sofort nach Ende des ersten Tages eines Monats wird das neue Monatsarchiv geschrieben. Dies erfolgt durch einen sogenannten „Event Scheduler“ um 0:05 automatisch jeden Tag. Neben den Monatsarchiven gibt es noch die Auswahl „Live Aufzeichnung“. Hier befinden sich alle Telegramme des heutigen Tages. Hinweise: Bitte beachten Sie unbedingt die Hinweise zu Event Scheduler am Ende dieses Dokuments um seine einwandfreie Funktion zu gewährleisten. Abbildung 8: Neue Abfrage Zeitspanne Über dieses Menü wählen Sie aus einer Kalenderübersicht beliebige Zeiträume aus, die dann nach den gewünschten Gruppenadressen gefiltert werden. 7.2 ADRESSFILTER Im Adressfilter befinden sich alle Gruppenadressen die für die Auswertung hinzugefügt wurden. Über „Hinzufügen“ öffnet ein Auswahlmenü in der Geräte(es können auch mehrere eibPorts in eine Datenbank schreiben) und Adressen ausgewählt werden können. eibPort auswählen In jede Datenbank können mehrere eibPorts schreiben. Die Datenbank kann die Informationen anhand der eibPort - Seriennummern unterscheiden, die in jedem Datensatz enthalten ist. Um es für den Benutzer einfacher zu machen wird außerdem der eibPort Name angezeigt, sofern vorhanden. Manuelle Adresseingabe Geben Sie die Gruppenadresse, den richtigen Datentyp und ein Beschreibung der Gruppenadresse an. DataWarehouse 2.0 b.a.b-technologie gmbh 15 Dokumentation DataWareHouse 2.0 Abfrage starten Abbildung 9: Adressfilter ESF Adressauswahl Die Adressinformationen hat die Datenbank über den Menüpunkt „Datenbank“ > „eibPorts konfigurieren“ erhalten. Zum Auswahl einer Adresse diese mit der Maus markieren und auf „OK“ klicken. Es kann immer nur eine Adresse gleichzeitig ausgewählt werden 7.3 STARTEN DER ABFRAGE Haben Sie einen Zeitraum definiert und eine oder mehrere Gruppenadressen ausgewählt, können Sie über den Button „Abfrage starten“ die entsprechenden Daten aus der Datenbank filtern. Je nachdem wie umfangreich Ihre Abfrage aufgebaut ist, und wie viel Rechenleistung Ihr Datenbankserver besitzt, kann diese Abfrage etwas Zeit in Anspruch nehmen. Sie erhalten als Ausgabe ein Fenster namens „Neue Abfrage 1“. Alle Daten werden untereinander aufgelistet und nach Zeit sortiert. Über den Button „Spalten Auswählen“ wird bestimmt welche Spalten angezeigt werden. DataWarehouse 2.0 b.a.b-technologie gmbh 16 Dokumentation DataWarehouse 2.0 8 Daten exportieren / Auswerten DATEN EXPORTIEREN / AUSWERTEN Die DataWarehouse 2 versteht sich zunächst als ein Zusatzprogramm um die aufkommenden Daten zu organisieren und gemäß der ETS Information richtig zu interpretieren. Außerdem dient Sie dazu die Werte die einer grafischen Auswertung zugeführt werden sollen aus der Datenbank abzurufen und zu exportieren. Eine direkte grafische Auswertung in der DataWarehouse 2 selber ist zwar in der Zukunft angedacht, aber zurzeit nicht implementiert. Exportieren Die zuvor über die definierte Abfrage zusammengetragenen Daten werden als „Comma Seperated Value“ – Datei (*.CSV) exportiert. Als universelles Format können diese Daten dann von weiteren Programmen genutzt werden um eine grafische Auswertung daraus zu generieren (z.B. in Microsoft™ Excel). Auswerten In Zukunft soll es möglich sein über sogenannte ‚Plugins‘ eine Auswertung direkt aus der DataWarehouse 2 selber möglich zu machen. Kunden und Interessierte sollen hier die Möglichkeit haben selber Plugins für die DataWarehouse 2 zu entwickeln. DataWarehouse 2.0 b.a.b-technologie gmbh 17 Analyse 9 Dokumentation DataWareHouse 2.0 ANALYSE Der Menüpunkt „Analyse“ bietet ein paar vorgefertigte Datenbankabfragen im Sinne einer Analyse. Damit ist es möglich einige generelle Statistiken über die Datenbank bzw. über den Telegrammverkehr in der Anlage abzufragen. Abbildung 10: Analyse - Statistiken Datenbank Statistik Zeigt eine Übersicht über die verschiedenen Tabellen (Monatsarchive), wie viele Telegramme darin vorhanden sind und wie viel Speicherplatz diese verbrauchen. KNX Gruppenadressen Fragt eine Telegrammstatistik sortiert nach Gruppenadressen ab. Die Abfrage kann entweder für die Live Aufzeichnung (heutiger Tag) oder für die einzelnen Monatsarchive erfolgen. Physikalische Adressen Hier wird die Telegrammstatistik nach Physikalischen Adressen sortiert. Die Abfrage erfolgt entweder für die Live Aufzeichnung (heutiger Tag) oder für die einzelnen Monatsarchive. Die Angabe „Virtuelle GA“ beschreibt die Physikalische Adresse auf der alle virtuellen Adressen des eibPorts gesendet werden. Telegramm-Statistik Stellt eine Telegrammstatistik gruppiert nach Monaten oder einzelnen Tagen her. Wenn ein einzelner Tag gewählt wird, wird die Gesamttelegrammlast in 1h Blöcke unterteilt. Wird ein Monat gewählt werden diese nach Tagen unterteilt. DataWarehouse 2.0 b.a.b-technologie gmbh 18 Dokumentation DataWarehouse 2.0 10 Wichtige Hinweise zum Umgang mit der Datenbank WICHTIGE HINWEISE ZUM UMGANG MIT DER DATENBANK Die Datenbank muss verschiedene Anforderungen erfüllen, damit die sd mit optimaler Performance arbeiten kann. Dazu nicht nur eine Tabelle erstellt und täglich um 0:05 startet eine Optimierung der aufgezeichneten Daten. Wenn sich bereits Telegramme in der Aufzeichnung befinden, kann das erste Sortieren je nach Anzahl der Daten und Leistung des Datenbankservers durchaus einige Stunden dauern. Während dieser Zeit darf der Datenbankserver nicht heruntergefahren werden. Vor einem Herunterfahren sollte Sie vorsichtshalber eine Datenbanksicherung durchführen. Die Kriterien für den optimalen Betrieb lassen sich folgendermaßen aufteilen: Telegrammaufzeichnung Dieser Teil besteht aus zwei Komponenten: Zuerst wird eine Funktion angelegt, mit der dynamisch neue Aufzeichnungstabellen erstellt werden können, danach wird eine erste Aufzeichnungstabelle erstellt, in die der eibPort Telegramme schreiben kann. Data Warehouse Userspace Die Data Warehouse speichert Einstellungen und ESF Daten in der Datenbank. Dazu werden einige zusätzliche Tabellen angelegt. Sortiermodule Die Sortierprozeduren optimieren die aufgezeichneten Daten indem sie nach Monaten aufgeteilt und gespeichert werden. Sortierevent Täglich um 0:05 werden die Sortiermodule aufgerufen. Dazu wird ein Event angelegt was automatisch durch den MySQL Server aufgerufen wird und die Optimierung startet. Damit die tägliche Optimierung vorgenommen wird, muss der Event Scheduler gestartet sein! Um diese Voraussetzungen zu schaffen muss der DataWarehouse 2 Datenbank Benutzer die unten beschriebenen Rechte auf den dem Datenbankserver besitzen. 10.1 BENUTZERRECHTE FÜR DEN DATENBANKBENUTZER Der DataWarehouse 2 Datenbankbenutzer braucht folgende Berechtigungen: SELECT INSERT UPDATE DELETE DROP CREATE INDEX ALTER CREATE_ROUTINE ALTER_ROUTINE EXECUTE EVENT Diese können entweder über „phpMyAdmin”, „MySQL Administrator” oder über die Kommandozeile vergeben werden. Die Befehle für die Kommandozeile sind: DataWarehouse 2.0 b.a.b-technologie gmbh 19 Wichtige Hinweise zum Umgang mit der Datenbank Dokumentation DataWareHouse 2.0 CREATE USER '_username_'@'%' IDENTIFIED BY '_password_'; GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE, INDEX, ALTER, CREATE ROUTINE, ALTER ROUTINE, EXECUTE, EVENT ON '_datenbank_'.* TO '_username_'@'%'; Wir empfehlen diese Einstellungen über das Webinterface wie „phpMyAdmin“ zu machen. 10.2 SORTIERFUNKTION ZUR LEISTUNGSOPTIMIERUNG Wenn die DataWarehouse 2 die Datenbank "vorbereitet" hat, gibt es eine Tabelle in die der eibPort seine Daten schreibt: „eib_tele“. Damit in der Tabelle nicht zu viele Daten stehen, die kleinere Server mit wenig RAM (z.B. NAS Festplatten) ausbremsen, werden die Datensätze täglich umsortiert. Dazu startet nachts um 0:05 eine Sortierfunktion (siehe „Event Scheduler“). Die Datensätze werden damit in Monatsarchive unterteilt. Die Tabellen werden dann wie folgt benannt: „eib_tele_2010_01“, „eib_tele_2010_02“, „eib_tele_2010_03“ usw. In diesen Tabellen werden bei einer durchschnittlicher Telegrammlast (4 Telegramme / Sekunde) etwa 10 Millionen Datensätze pro Monat anfallen. Hinweis: Auf einem wenig leistungsfähigen Server sollte nur ein eibPort in eine Datenbank loggen, wobei durchaus mehrere Datenbanken auf einem Server laufen können. Auf einem leistungsfähigeren Server können auch mehrere eibPorts problemlos in eine Datenbank schreiben. 10.3 EVENT SCHEDULER AKTIVIEREN Der Event Scheduler wird benötigt um die Umsortierung der Daten jede Nacht zu veranlassen. Er kann nur aktiviert werden, wenn der Datenbank Benutzer sog. “SUPER” – Rechte hat. Dieser Parameter geht verloren wenn der MySQL Server neugestartet wird. Um den Event Scheduler beim Serverstart zu aktivieren muss die Konfiguration geändert werden. Abbildung 11: Meldung "Event Scheduler inaktiv" Auf der Synlogy DiskStation Greifen Sie per ssh (Windows = Putty) auf die DiskStation zu. Der ssh Dienst der DiskStation muss ggf. erst aktiviert werden. Öffnen Sie die Datei „/usr/syno/etc/rc.d/S21mysql.sh“ mit dem Texteditor „vi“. Tippen Sie also: vi /usr/syno/etc/rc.d/S21mysql.sh <Enter> DataWarehouse 2.0 b.a.b-technologie gmbh 20 Dokumentation DataWarehouse 2.0 Wichtige Hinweise zum Umgang mit der Datenbank Gehen Sie mit den Cursor Tasten zu der Zeile „MYSQL_ARGS=“. Das sind die ‚Arguments‘ mit denen der MySQL Server startet. Um im „vi“ Änderungen am Text vorzunehmen müssen Sie zunächst durch die Eingabe von „i“ in den sog. „insert“ Modus wechseln. Fügen Sie „--event-scheduler=1“ in diese Zeile ein, so dass es folgendermaßen aussieht: MYSQL_ARGS=”-—max_allowed_packet=8M -–event-scheduler=ON” Haben Sie den Eintrag geändert beenden Sie den „insert“ – Modus durch Drücken der „Esc“ –Taste und geben ein „:wq“ (Doppelpunkt, W, Q). Dadurch speichern Sie die Änderung und verlassen den „vi“. Nach Änderung der Argumente muss der MySQL Server neugestartet werden, das erreichen Sie mit folgendem Kommando: „/usr/syno/etc/rc.d/S21mysql.sh restart“ Hinweis: Bitte beachten Sie, dass diese Einstellung bei einem Firmware Update zurückgesetzt wird. Schließen Sie danach einfach die Putty Console über das „X“ oder geben Sie „exit“ ein. Das Programm „Putty“ können Sie hier herunterladen: http://www.putty.org/. Außerdem finden Sie im Internet zahlreiche Dokumentation über den Text Editor „vi“. Unter Ubuntu: Öffnen Sie Konfigurationsdatei „/etc/mysql/my.cnf“ Fügen Sie die Zeile „event-scheduler=1“ in die Sektion “Fine Tuning” ein. Der MySQL Server kann mit dem Kommando “service mysql restart” neugestartet werden. Unter xampp Version 1.7.3 Öffnen Sie die die Konfigurationsdatei „\xampp-win32-1.7.3\xampp\mysql\bin\my.ini mit einem Texteditor. Fügen Sie die Zeile „event-scheduler=1“ in die Sektion „[mysqld]“ ein, speichern Sie ab und starten Sie den MySQL Server neu. DataWarehouse 2.0 b.a.b-technologie gmbh 21 Hinweis zur Funktionalen Sicherheit: 11 Dokumentation DataWareHouse 2.0 HINWEIS ZUR FUNKTIONALEN SICHERHEIT: Diese Software dient zur Protokollierung von Daten des KNX- Bussystems. Sie dient somit zur Datensammlung von Werten die aus Anwendungen der Risikoklasse III und IV (nach IEC 65A (SEC) 123) erzeugt werden. Sollten Daten aus höheren Risikoklassen aufgezeichnet werden, so sind vom Betreiber der Software geeignete Maßnahmen zur Risikoverminderung zu treffen. Eine Haftung, sowie Schadensersatzansprüche für unmittelbare und mittelbare Folgen durch Fehlfunktion der Software sind hiermit ausgeschlossen. Siehe auch Handbuch Gebäudesystemtechnik Grundlagen des ZVEI/ZVEH. DataWarehouse 2.0 b.a.b-technologie gmbh 22