TECHNIK Leitebene [1] Um einer Flut von Daten Herr zu werden, bedarf es ausgeklügelter Softwarelösungen . Bildquelle: Daniel Muller – Fotolia.com [1] Hochfrequente Datenströme in relationalen Datenbanksystemen speichern Die Datenflut meistern Bei der Handhabung von Sensordaten zu Simulations- und Optimierungszwecken ist nicht nur die schiere Datenmenge ein Problem, sondern auch die Geschwindigkeit, mit der die Sensoren Daten sammeln. Außerdem müssen mehrere Nutzer gleichzeitig mit den Daten arbeiten können, ohne diese immer wieder zu kopieren. Eine Software, die bereits vor der Datenbank eingreift, löst diese Probleme. Entsprechend der Zunahme an industriellen Überwachungs- und Steuerungsaufgaben hat sich die Verwendung von Sensordaten im Laufe der Zeit verändert. Wurden zunächst die kontinuierlich eingehenden Daten quasi online ausgewertet und anschließend verworfen, wird es heute mehr und mehr notwendig, diese Daten zu sammeln, abzuspeichern und sie offline zu Simulations- und anderen Auswertungszwecken wieder zu verwenden – zum Beispiel um neue Anwendungsszenarien oder Anlagenoptimierungen zu erarbeiten. Mangels technischer Alternativen geschieht diese Datensammlung in der Regel auf sogenannten Flat Files, das heißt, auf einfachen, sequenziell beschriebenen Dateien. Mit der Konsequenz, dass weder ein wahlfreier Zugriff auf bestimmte Daten noch eine gemeinsame Auswertung durch unterschiedliche Personen oder Anwendungen ohne das Kopieren der Daten möglich ist. Klassische relationale Datenbanken, die eben diese Nachteile beseitigen würden, sind meist nicht in der Lage, hochfrequente Datenströme abzuspei- chern. Untersuchungen haben gezeigt, dass die normale Schreiblast eines relationalen Datenbanksystems lediglich bei 1 bis 1,2 kHz liegt. Zwar kann ein gepuffertes Schreiben bis zu 250 000 Datensätze mit einem Schreibbefehl abspeichern, jedoch entspricht das keiner Schreiblast von 250 kHz, also dem Maximum des mit gepuffertem Einfügen überhaupt zu erreichenden Datendurchsatzes. Entfernen aller für die Anwendung entbehrlicher Funktionen wie Benutzerverwaltung, SQL-Unterstützung, Backup- Funktionalität, Erweiterbarkeit oder Transaktionen erreicht. Eine andere Möglichkeit, das Problem der langsamen Datenbanken zu überwinden, ist der Kiwi-Ansatz (Kill It With Iron). Hier wird das Problem durch Parallelisierung, Hardwareskalierung und dynamische Lastverteilung umgangen, was in der Regel aber mit erheblichen Investitionen in neue Server- und Clustersysteme oder Clouds verbunden ist. Dieses Vorgehen ist eher ineffizient, da das eigentliche Problem aus folgenden Gründen langfristig nicht befriedigend zu lösen ist. ➜ Clusterlösungen erfordern einen zusätzlichen Investitionsaufwand, der allein im Softwarebereich mit bis zu 40 % der ursprünglichen Installationskosten kalkuliert werden muss. ➜ Hardwarezukauf geht mit einer kontinuierlichen Budgetbelastung durch Energiekosten einher und ist deshalb mit den Zielsetzungen der Green-IT unvereinbar. Nur das nötigste Eine Zwischenlösung stellen sogenannte Flat-File-Datenbanken dar. Analog zu Flachen Dateien bestehen auch hier die Datensätze aus jeweils einer Zeile. Wird ein Datensatz hinzugefügt, erhält die Datei eine neue Zeile. Die Modellierung eines Datensatzes mit Feldern geschieht über spezielle Trennzeichen oder feste Feldlängen – zum Beispiel CSV-Dateien, bei denen Kommata zum Trennen der Felder dienen. Bekannte Produkte, die diesen Ansatz unterstützen, sind Berkeley DB von Oracle und MySQL CSV. Der Geschwindigkeitsvorteil dieser Datenbanken wird allerdings durch konsequentes ➜ 26 <strong>IEE</strong> • 12-2010
TECHNIK Leitebene Der Windpark Alpha Ventus erzeugt mit seinen Sensordaten eine Schreiblast von rund 60 kHz. Relationale Datenbanksysteme können mit dieser Menge nicht umgehen. Bildquelle: Alpha Ventus/Doti 2009 <strong>IEE</strong> • 12-2010 27