[TASK] Generic commit.
This commit is contained in:
parent
166088151b
commit
4f81eeebb1
|
@ -390,13 +390,13 @@ Eine CEP-Regel besteht aus zwei Teilen: Zuerst definiert der \texttt{CONDITION}-
|
|||
CONDITION (Ereignismuster)
|
||||
... weitere Bedingungen ...
|
||||
\end{lstlisting}
|
||||
Sind alle Bedingungen im \texttt{CONDITION}-Teil erfüllt, so \enquote{matcht} die Regel\cite{hsh:cep}. Im darauffolgenden \texttt{ACTION}-Teil wird eine Reihe von Aktionen definiert, die ausgeführt werden sollen, sobald die Bedingungen der Regel eintreffen. Da die Daten der Ereignisse, auf die der \texttt{CONDITION}-Teil gepasst hat, für die weitere Verarbeitung von Interesse ist, stehen sie im \texttt{ACTION}-Teil zur Verfügung.
|
||||
Sind alle Bedingungen im \texttt{CONDITION}-Teil erfüllt, so \enquote{matcht} die Regel\cite{hsh:cep}. Im darauffolgenden \texttt{ACTION}-Teil wird eine Reihe von Aktionen definiert, die ausgeführt werden sollen, sobald die Bedingungen der Regel eintreffen. Dies kann beispielsweise die Erzeugung eines neuen Ereignisses oder das Anstoßen eines Dienstes sein. Da die Daten der Ereignisse, auf die der \texttt{CONDITION}-Teil gepasst hat, für die weitere Verarbeitung von Interesse ist, stehen sie im \texttt{ACTION}-Teil zur Verfügung.
|
||||
\begin{lstlisting}[mathescape=true,label={},caption={}]
|
||||
ACTION
|
||||
... auszulösende Aktionen ...
|
||||
\end{lstlisting}
|
||||
Matcht eine Regel, so werden die in ihr definierten Aktionen ausgeführt --- die Regel feuert\cite{hsh:cep}. Zusammengefasst sieht eine CEP-Regel wie folgt aus:
|
||||
\begin{lstlisting}[mathescape=true,label={lst:abstract_cep_rule_one},caption={Grundgerüst einer CEP-Regel}]
|
||||
\begin{lstlisting}[mathescape=true,label={lst:abstract_cep_rule_basics},caption={Grundgerüst einer CEP-Regel}]
|
||||
CONDITION (Ereignismuster)
|
||||
... weitere Bedingungen ...
|
||||
ACTION
|
||||
|
@ -429,7 +429,7 @@ Natürlich ist es auch möglich, ein Ereignisfenster auf Basis von Ereignissen z
|
|||
\end{lstlisting}
|
||||
|
||||
Die Definition des verwendeten Ereignisfensters wird am \texttt{CONDITION}-Teil der CEP-Regel platziert, sodass diese nun wie folgt aussieht:
|
||||
\begin{lstlisting}[mathescape=true,label={lst:abstract_cep_rule_two},caption={CEP-Regel mit Definition eines Ereignisfensters}]
|
||||
\begin{lstlisting}[mathescape=true,label={lst:abstract_cep_rule_with_window},caption={CEP-Regel mit Definition eines Ereignisfensters}]
|
||||
CONDITION (Ereignismuster)[WindowSize:15min,StepSize:10s]
|
||||
... weitere Bedingungen ...
|
||||
ACTION
|
||||
|
@ -439,15 +439,22 @@ ACTION
|
|||
|
||||
\paragraph{Mustererkennung}
|
||||
\todo{Mehr! Mustererkennung!}
|
||||
Komplexere Sachverhalte kann man häufig über ihre Ereignismuster erkennen. Hierbei spielen die Ereignissequenzen und die zeitlichen Beziehungen zwischen Ereignissen eine Rolle. Um ein \enquote{bedeutungsvolles Ereignismuster} zu erkennen, wird eine CEP-Regel definiert, die dieses Muster beschreibt.
|
||||
Ein Beispiel für ein Ereignismuster, welches unsachgemäß abgestellte PKW erkennen kann, sieht so aus:
|
||||
Komplexe Vorgänge kann man häufig über Muster aus den Ereignissen erkennen, die sie auslösen. Hierbei spielen Ereignissequenzen und die zeitlichen Beziehungen zwischen Ereignissen eine Rolle. Um ein \enquote{bedeutungsvolles Ereignismuster} zu erkennen, wird eine CEP-Regel definiert, die dieses Muster in ihrem \texttt{CONDITION}-Teil beschreibt.
|
||||
Ein Beispiel für ein Ereignismuster, welches unsachgemäß abgestellte PKW erkennen kann, könnte so aussehen:
|
||||
\begin{itemize}
|
||||
\item Ereignis: Motor wurde abgeschaltet
|
||||
\item \st{Ereignis: Handbremse wurde angezogen} (\textbf{nicht} passiert!)
|
||||
\item Ereignis: PKW wurde verriegelt
|
||||
\end{itemize}
|
||||
|
||||
Man könnte nun eine CEP-Regel definieren, die für jeweils \emph{den selben} PKW nach den Ereignissen \enquote{Motor wurde abgeschaltet} und \enquote{PKW wurde verriegelt} sucht und zwischen diesen Ereignissen kein Ereignis \enquote{Handbremse wurde angezogen} erwartet. Matcht diese Regel, so könnte man darauf basierend ein neues Ereignis erzeugen, welches auf diesen Umstand hinweist --- oder direkt einen Alarm auslösen und beispielsweise den Fahrer benachrichtigen.
|
||||
Um nun eine CEP-Regel zu definieren, die für jeweils \emph{den selben} PKW nach den Ereignissen \enquote{Motor wurde abgeschaltet} und \enquote{PKW wurde verriegelt} sucht und zwischen diesen Ereignissen kein Ereignis \enquote{Handbremse wurde angezogen} erwartet, müssen zunächst weitere Sprachkonstrukte für CEP-Regeln vorgestellt werden.
|
||||
|
||||
\begin{lstlisting}[mathescape=true,label={lst:abstract_cep_rule_two},caption={CEP-Regel mit Definition eines Ereignisfensters}]
|
||||
CONDITION (Ereignismuster)[WindowSize:15min,StepSize:10s]
|
||||
... weitere Bedingungen ...
|
||||
ACTION
|
||||
... auszulösende Aktionen ...
|
||||
\end{lstlisting}
|
||||
|
||||
\todo{GRAFIK: Mustererkennung grob zeigen?}
|
||||
|
||||
|
|
Loading…
Reference in New Issue