Data Science

Wissenschaftliches Rechnen innerhalb von Datenbanken – Viterbi-Algorithmus

Bei der Überwachung und Steuerung von Systemen kommen häufig Sensoren zum Einsatz, die durch Messung physikalischer Größen Zustände quantitativ erfassen. Eine Analyse der Messergebnisse ermöglicht es, in geeigneter Weise auf Zustandsänderungen zu reagieren oder Zusammenhänge bzw. Ausreißer zu erkennen. Dieser Prozess produziert zum Teil große Datenmengen, die selektiert, aggregiert, gespeichert und analysiert werden sollen. Dafür kommen meist Datenbanken zur Speicherung und Verfahren des maschinellen Lernens und des Data-Minings zur Analyse zum Einsatz.

Da für die Vorhersage von Events oder Handlungen sowie der Erkennung von Clustern oder Muster durch Algorithmen (Machine Learning) oft Minimierungsverfahren und Statistik Anwendung finden, sind für viele dieser Analyse-Verfahren und auch anderer Operationen wissenschaftlichen Rechnens Vektorraumoperationen notwendig.

Eine Verarbeitung der Daten direkt im Datenbanksystem bietet gegenüber anderen Lösungen einige Vorteile. Dazu zählt die Nachhaltigkeit von SQL als „intergalactic dataspeak“ 1)Stonebraker, Michael ; Rowe, Lawrence A. ; Lindsay, Bruce G. ; Gray, Jim ; Carey, Michael J. ; Brodie, Michael L. ; Bernstein, Philip A. ; Beech, David: Third-generation database system manifesto. In: ACM sIGMOD record 19 (1990), Nr. 3, S. 31–44. Ferner ist durch die Standardisierung von SQL als Anfragesprache2)ISO/IEC TR 19075 zu erwarten, dass die Anfragen sowohl weitgehend unabhängig vom verwendeten Datenbanksystem sind, als auch in absehbarer Zukunft noch funktionieren werden. Als ein weiterer Vorteil kann die Sicherheit der Daten betrachtet werden, da die Daten das Datenbanksystem zur Analyse nicht verlassen müssen. Allerdings ist SQL als mengenorientierte und deklarative Sprache untypisch für Vektorraumoperationen, was möglicherweise zu einem Abbildungsproblem der Algorithmen in die Sprache oder einem Performanz-Verlust gegenüber etablierten Umgebungen für wissenschaftliches Rechnen, Machine Learning und Big Data wie beispielsweise R, TensorFlow oder Hadoop-basierten Systemen wie Apache Flink oder Apache Spark führen kann. Frühere Untersuchungen 3)Stonebraker, Michael ; Abadi, Daniel J. ; DeWitt, David J. ; Madden, Samuel ; Paulson, Erik ; Pavlo, Andrew ; Rasin, Alexander: MapReduce and parallel DBMSs: friends or foes? In: Commun. ACM 53 (2010), Nr. 1, S. 64–71. http://dx.doi.org/10.1145/1629175.1629197. – DOI 10.1145/1629175.16291974)Dietrich, Daniel ; Fenske, Ole ; Schomacker, Stefan ; Schweers, Philipp ; Heuer, Andreas: Stonebraker versus Google: 2-0 Scores in Rostock – A Comparison of Big Data Analytics Environments (Stonebraker gegen Google: Das 2: 0 fällt in Rostock). In: Klassen, Gerhard (Hrsg.) ; Conrad, Stefan (Hrsg.): Proceedings of the 30th GI-Workshop Grundlagen von Datenbanken, Wuppertal, Germany, May 22-25, 2018. Bd. 2126, CEUR-WS.org, 2018 (CEUR Workshop Proceedings), 101–107 zeigten bereits, dass Datenbanken den speziellen Tools nicht prinzipiell unterlegen sind.

In dieser Arbeit möchte ich einen Überblick über die mathematischen Grundlagen (Kapitel 2), Technologien (Kapitel 3) sowie einige konkrete Systeme (Kapitel 4) geben.

Anmerkungen   [ + ]

Hinterlasse einen Kommentar

siebzehn − 8 =

You can encrypt your comment so that only Daniel can read it.

Do NOT follow this link or you will be banned from the site!