History DB
Das Konzept zur Archivierung von Prozessdaten behandelt das Speichern und Auslesen von Informationen, die im laufenden Betrieb einer Prozesssteuerung bzw. -visualisierung anfallen. Dabei handelt es sich um Werte und Meldungen, die durch Änderungen der Werte generiert werden. In der Datenarchivierung wird die Verwaltung der dadurch entstehenden Datenbestände auf Systemadministrationsebene (Sichern, Auslagern, Löschen von Daten) erklärt.
Die Archivierung von Prozessdaten stellt den Spezialfall einer Datenbankanwendung dar.
Das Konzept
-
Trennung in Wert- und Meldehistorie. Alarme werden wie bisher von Archiv Control Panel verwaltet.
-
Organisation in einer Matrix (DPE x Time)
-
Mehrere Archive sind möglich. Damit ist eine strukturierte Archivierung möglich: es können Werte, die häufig auftreten, getrennt werden von denen, die selten auftreten.
-
Jedes Archiv wird durch einen eigenen Archivprozess verwaltet
-
Jedes Archiv besteht aus einer Reihe chronologisch geordneter Archivdateien
-
Jedes Datenpunktelement kann in eines oder in mehrerer Archive gespeichert werden (zukünftige Option, noch nicht in aktueller Version implementiert)
-
Jedes Archiv wird für eine maximale Zahl von Datenpunktelementen und -werten konfiguriert. Die einzelnen DPE innerhalb eines Archivs dürfen unterschiedlichen Datentyps sein. Im Hinblick auf eine vernünftige Verwaltung sollten folgende Punkte bei Archivdefinitionen beachtet werden: Dynamik (etwa gleiche Änderungsrate aller DPE in einem Archiv), logische Zugehörigkeit, notwendige Verfügbarkeit im System
Vorteile
-
Platzsparende Speicherstruktur
-
Effiziente Schreiblogik (ein Direktzugriff)
-
schnelles chronologisches Lesen von Werten je DPE (vorwärts und rückwärts)
-
einfaches Archivmanagement durch konfigurierbare Archivsatzgrößen
-
keine Mehrfach-Zugriffs-Probleme (außer Online-Backup)
-
Unterschiedliche Archivierungsmöglichkeiten für Datenpunkte.
Hinweis
Sämtliche Zeitangaben für Dateiwechsel und Datensicherung werden als UTC Zeiten (coordinated universal time, früher als GMT = Greenwich mean time) behandelt! Das entspricht Mitteleuropäische Zeit -1 Stunde.
Hinweis
Bei der Verwendung der History DB kann es bei großen Datensätzen zu hohen Wartezeiten kommen. Um diesen Wartezeiten entgegenzuwirken, kann mittels des Config-Eintrages "queryMaxValues" eine maximale Anzahl der Werte pro Abfrage festgelegt werden, um nicht sämtliche Datensätze abzufragen, und so ein schnelleres Ergebnis zu erhalten.
Achtung
Unter Linux kann es bei großen Datensätzen innerhalb der History DB zu Problemen mit Abfragen kommen. Ursache hierfür kann der Linux-Parameter "open files" sein. Standardmäßig ist dieser Wert auf 1024 gesetzt. Sollten jedoch mehr als 1024 Dateien bei der Abfrage der History DB geöffnet werden, erzeugt dies einen Fehler. Lösung hierbei ist das Setzen des Parameters "open files" auf einen höheren Wert (mittels "ulimit -n WERT"). Richtwert: Anzahl der Dateien des ValueArchives x 2 + Reserve. z.B.: 3000 Dateien des ValueArchives x 2 = 6000 und eine Reserve von 1000 ergibt eine Wert von 7000 ("ulimit -n 7000")
Hinweis
Grund für den Faktor "x 2" ist der Umstand, dass zwei Datei-Handle pro Archivsatz notwendig sind.
Für die Zeitwerte und Variablen ist folgendes zu beachten:
- Laufzeitwerte/Alarme können mit einer Genauigkeit von bis zu Nanosekunden erstellt werden.
- Historische Datenbanken behalten die korrekte Reihenfolge bei, speichern aber nur bis zu Millisekunden, d.h. sie verwerfen die Teile mit höherer Genauigkeit.
- Der Vergleich von Zeitvariablen berücksichtigt nur Millisekunden. Zeitvariablen, die sich nur im Mikrosekunden- oder Nanosekundenbereich unterscheiden, würden von den eingebauten Vergleichsmethoden als gleichwertig angesehen.
Voraussetzungen
Auf dem Rechner sollte ein Netzwerk installiert sein. Es genügt aber ein Netzwerk, dass auf einen PC beschränkt ist. Eine Möglichkeit dazu ist die Installation eines MS Loopback-Adapter als Netzwerkkarte.
Unter Systemsteuerung > Netzwerk > Netzwerkkarte muss der Eintrag MS Loopback-Adapter in der Liste enthalten sein. Gegebenenfalls kann hier auch der "MS Loopback-Adapter" entweder hinzugefügt (Taste Hinzufügen) oder entfernt (Taste Entfernen) werden.
Hinweis
Die WHERE-Bedingung "!= NULL" wird für HDB nicht unterstützt (wird zu "!= 0" umgewandelt).
Kapitel | Beschreibung |
---|---|
Grundlagen History DB | Einleitung, Konzept und Vorteile, sowie Links zu den Kapitelseiten |
Archive anlegen und parametrieren | Vorstellung der Parametrierpanels |
Archivierung starten | Archivprozess in der Console starten |
Projekte kopieren/nachziehen mit der History DB | Schrittweise Anleitung |
Zuordnung von Datenpunktelementen zu Archiven | Panel für das _archive Konfig |
History DB - Komprimierung der Archive | Komprimierung von abgeschlossenen Archivsätzen der History DB ab Version 2.12.1 |
Archive auslagern/sichern | Sichern der Archive und Auslagerung mit Panel Historiendatenbank Aktion |
Archivstatus | Panel für Information über aktuelle Aktionen wie Dateiwechsel und Auslagerung |
Datentypen der History DB | Welche Datentypen können archiviert werden |
Details zur History DB | Interne Datenpunkte und Konzepte |
Glossar | Erklärung der Begriffe, die in der History DB verwendet werden |