[TASK] Rewrite first chapter.

This commit is contained in:
Jan Philipp Timme 2016-08-23 15:21:09 +02:00
parent 14322eef7d
commit 094af11968

View File

@ -152,24 +152,26 @@ Hannover, den \today \hfill Unterschrift
%%% Hier geht es richtig los mit dem Text!
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\chapter{Einleitung}\label{cpt:introduction}
\chapter{Motivation}\label{cpt:motivation}
Diese Arbeit beschäftigt sich mit \enquote{Complex Event Processing} (CEP), also der Verarbeitung komplexer Ereignisse auf Ereignisdatenströmen in Kombination mit Do\-män\-en\-wis\-sen, und der praktischen Umsetzung dieses Vorhabens auf Basis von RDF-Datenströmen mit der CEP-Engine \enquote{C-SPARQL}.
Mit der fortschreitenden Digitalisierung von Alltagsgegenständen und ihrer Verbindung mit dem Internet sind immer mehr offene Systeme online verfügbar, die ihre Sensordaten und Zustandsinformationen als RDF\footnote{Ressource Description Framework - Mehr dazu in Kapitel \ref{cpt:basics}}-Datenstrom anbieten. Diese Ereignisdatenströme liefern kontinuierlich Daten über hochfrequent auftretende Ereignisse, sodass sich innerhalb kürzester Zeit sehr große Datenmengen ansammeln. Diese Ereignisse bilden jeweils kleine Stücke der Realität über die in ihnen enthalten Messdaten und Zustandsinformationen ab, sofern sie nicht bedingt durch technischen Defekt oder Messfehler ungültige Daten enthalten und somit zur weiteren Verarbeitung ungeeignet sind. Weiterhin muss betont werden, dass die Gültigkeit der Ereignisdaten sehr begrenzt ist und spätestens durch das nächste Ereignis hinfällig wird.
\todo{Dem Dokument anpassen; Soll groben Ausblick auf Inhalte geben.}
Da einzelne Ereignisse für sich betrachtet nur eine begrenzte Aussagekraft haben, ist es zum höheren Verständnis der dahinter verborgenen Situation notwendig, sie mit den zuvor aufgetretenen Ereignissen in einen Kontext zu setzen, um in ihnen Muster zu erkennen und daraus höherwertige Informationen in Form von komplexen Ereignissen zu gewinnen.
Nach einem kurzen Einstieg in das Thema CEP soll der Leser einen Einblick in die Features von aktuellen CEP-Engines erhalten und am Beispiel der Engine C-SPARQL\footnote{Mehr Informationen zu C-SPARQL und Download unter \url{http://streamreasoning.org/resources/c-sparql}} die Verarbeitung von Ereignisströmen im RDF-Format in Kombination mit Domänenwissen im Detail kennenlernen.
An einem Beispielszenario soll dann der Praxiseinsatz von C-SPARQL erklärt werden, in dem einige der vorgestellten Funktionen Anwendung finden. Im Abschluss wird ein kurzer Ausblick auf die technischen Möglichkeiten des \enquote{Reasoning} gegeben --- eine Technik, die es erlaubt auf den vorhandenen und eingehenden Daten logische Operationen und Schlussfolgerungen durchzuführen um daraus neues Wissen abzuleiten.
Die Integration von Domänenwissen\footnote{Hintergrundwissen} ist der abschließende Schritt, um die Brücke zwischen den aus komplexen Ereignissen gewonnenen Kenntnissen und bereits bekannten Fakten zu schlagen, die diese gewonnenen Erkenntnisse in einen eindeutigen Zusammenhang stellen.
Um unter den genannten Bedingungen viele Ereignisdatenströme mit hochfrequenten Ereignissen in nahezu Echtzeit zu verarbeiten ist CEP\footnote{Complex-Event-Processing} das Mittel der Wahl. Hierbei werden die Ereignisse der verschiedenen Datenströme für begrenzte Zeiträume im lokalen Speicher vorgehalten, innerhalb von Sliding-Windows betrachtet und zu komplexeren Ereignissen aggregiert.
\section{Motivation}\label{cpt:motivation}
Ziel dieser Arbeit ist die praktische Nutzung der CEP-Engine \enquote{C-SPARQL} zur Verarbeitung von RDF-Ereignisdatenströmen am Beispiel einer Autoverleihgesellschaft, die ihre Fahrzeuge überwachen möchte um starken Verschleiß und sich anbahnende Defekte an ihnen erkennen möchte.
Mit der fortschreitenden Digitalisierung von Alltagsgegenständen und ihrer Verbindung mit dem Internet sind immer mehr offene Systeme online verfügbar, die ihre Sensordaten und Zustandsinformationen als RDF\footnote{Ressource Description Framework - Mehr dazu in Kapitel \ref{cpt:basics}}-Datenstrom anbieten. Ziel dieser Arbeit ist die Verarbeitung dieser Ereignisdatenströme mit der CEP-Engine C-SPARQL im Kontext einer Autoverleihgesellschaft zur Überwachung von Fahrzeugen. Dabei sollen komplexe Ereignisse aus Ereignismustern in den Datenströmen extrahiert werden und unter Integration von lokalem Domänenwissen zur weiteren Interpretation in einen eindeutigen Kontext gesetzt werden.
Ein weiteres Ziel ist die Extraktion von Erkenntnissen aus den Ereignisströmen durch das Anstellen von Schlussfolgerungen auf den erhaltenen Daten (Reasoning). Diesbezüglich soll ergründet werden, welche CEP-Engines Reasoning implementieren und wie weitreichend ihre technischen Möglichkeiten in diesem Bereich reichen.
Des weiteren soll ergründet werden, welche technischen Möglichkeiten existieren, um Reasoning auf RDF-Datenströmen zu betreiben - eine Technik, die Erkenntnisse aus den Ereignisströmen durch Anstellung von Schlussfolgerungen auf den Daten der Datenströme extrahiert.
Diesbezüglich soll ergründet werden, welche CEP-Engines Reasoning bereits implementieren und wie weit ihre technischen Möglichkeiten in diesem Bereich reichen.
\section{Szenario}\label{cpt:scenario}
\todo{Eventuell platziere ich die Details des Szenarios vor das Konzept-Kapitel und halte die Beschreibung allgemeiner?}
Beispielszenario im Kontext dieser Arbeit ist eine Autoverleihgesellschaft, die ihren Fuhrpark überwachen möchte um ihren Kunden vergünstigte Tarife für verschleißarmes Fahrverhalten anbieten zu können. Weiterhin soll auf plötzlich auftretende Probleme an den Leihwagen möglichst schnell reagiert werden können um Schäden zu begrenzen, gefährliche Situationen zu vermeiden und bei Bedarf dem Kunden unverzüglich einen Ersatzwagen oder andere Hilfeleistungen anbieten zu können. Um all dies zu erreichen, werden zwei RDF-Datenströme zur späteren Verarbeitung mit der CEP-Engine C-SPARQL eingerichtet.
\paragraph{Statusdatenstrom der Autos}
@ -203,6 +205,8 @@ Um die Ereignisdaten aus den beiden beschriebenen Datenströmen bei der Verarbei
\chapter{Grundlagen}\label{cpt:basics}
\todo{Zusammenfassungsüberleitung über das Kapitel}
\section{Einführung in das semantische Web}
@ -292,7 +296,7 @@ CONSTRUCT {
\item Warum ist Reasoning überhaupt wichtig und sinnvoll?
\end{itemize}
Durch den Einsatz von Ontologien ergibt sich die Möglichkeit, auf RDF-Daten Ontologie-gestützt Schlussfolgerungen anstellen zu können (\enquote{Reasoning}). In diesem Prozess werden aus den in RDF-Daten vorhandenen Fakten (Terminology Box, kurz: TBox) und den in den verwendeten Ontologien definierten Objektklassen, Regeln und Zusammenhängen (Assertion Box, kurz: ABox) neues Wissen abgeleitet \cite{hsh:integrating} und die lokale Datenbasis damit angereichert. So können beispielsweise implizite Klassentypen errechnet werden (Ein Kind ist eine Person), oder regelbasierte Attribute ermittelt werden: Max fährt ein Fahrzeug + das Fahrzeug ist ein Kran $\Longrightarrow$ Max ist ein Kranführer.
Durch den Einsatz von Ontologien ergibt sich die Möglichkeit, auf RDF-Daten Ontologie-gestützt Schlussfolgerungen anstellen zu können (\enquote{Reasoning}). In diesem Prozess werden aus den in RDF-Daten vorhandenen Fakten (Assertion Box, kurz: ABox) und den in den verwendeten Ontologien definierten Objektklassen, Regeln und Zusammenhängen (Terminology Box, kurz: TBox) neues Wissen abgeleitet \cite{hitzler:semanticweb} und die lokale Datenbasis damit angereichert. So können beispielsweise implizite Klassentypen errechnet werden (Ein Kind ist eine Person), oder regelbasierte Attribute ermittelt werden: Max fährt ein Fahrzeug + das Fahrzeug ist ein Kran $\Longrightarrow$ Max ist ein Kranführer.
Enthält eine Ontologie Informationen über verschiedene Verwandtschaftsgrade in Familien, so ist es beispielsweise möglich auf Basis der Daten aus Listing~\ref{lst:sample_rdf_data} zusätzliche Verbindungen wie \enquote{isBrotherOf} und \enquote{isSisterOf} zu errechnen. Limitiert werden diese Möglichkeiten lediglich durch die OWA (Open World Assumption), also die Annahme einer offenen Welt, über die unvollständiges Wissen vorliegt. Deshalb dürfen für Reasoning nur explizit bekannte Fakten genutzt werden: Nur weil in Listing~\ref{lst:sample_rdf_data} keine Informationen über Eltern vorhanden sind, heißt das erst einmal nicht, dass Max und Marie wirklich Waisenkinder sind. Weiterführende Beispiele zu den Möglichkeiten von OWL Reasoning finden sich unter \cite{man:owl}.
@ -332,6 +336,8 @@ Insgesamt liegt die Herausforderung von CEP darin, in kürzester Zeit große Dat
\chapter{Gegenüberstellung existierender CEP-Engines}
\todo{Zusammenfassungsüberleitung über das Kapitel}
Es gibt bereits einige Technologien um Ereignisströme zu verarbeiten.
Im Folgenden stelle ich nun ein paar bekannte CEP-Systeme kurz vor.
@ -409,6 +415,8 @@ Grobe Eckpunkte zur Orientierung:
\chapter{CEP auf RDF-Datenströmen (Konzept)}
\todo{Zusammenfassungsüberleitung über das Kapitel}
Hier kommt der Part hin mit der abstrakten CQL für die Situation + C-SPARQL-Queries
@ -469,6 +477,9 @@ WHERE {
\chapter{Nutzung der Engine C-SPARQL (Implementation)}
\todo{Zusammenfassungsüberleitung über das Kapitel}
In diesem Kapitel wird die C-SPARQL-Engine konkret vorgestellt und verwendet.
\begin{itemize}
\item RDF-Datenströme
@ -623,6 +634,8 @@ Wie und wo werden Dateien in welchen Formaten abgelegt, müssen sie zuvor in der
\chapter{Fazit}
\todo{Zusammenfassungsüberleitung über das Kapitel}
\begin{itemize}
\item Bewertung der Ergebnisse im Abgleich mit den Anforderungen und dem Aufwand?
\item Ist es für die Anforderungen (und mehr) praxistauglich?
@ -632,6 +645,9 @@ Wie und wo werden Dateien in welchen Formaten abgelegt, müssen sie zuvor in der
\chapter{Ausblick}
\todo{Eventuell mit Ausblick mergen}
\begin{itemize}
\item Kann man mit der Engine in Zukunft noch mehr schaffen?
\item Wie steht es um Reasoning? Geht das? Wenn ja, nur RDFS oder auch OWL? \todo{Ist der Unterschied zwischen den Beiden fürs erste sehr wichtig oder führt das zu weit?}