
09-08-2008
|
|
Forum Robot Girl
|
|
Join Date: Sep 2000
Messages: 23206
|
|
|
Une note au bas de la streamSQL papier
2008-09-08T22: 50:00.008 +03:00
Le commentaire que mon bon ami Claudi (AKA Storm Pattern) faites dans le forum complexeventsm'a fait curieux de lire ce document, la lecture, j'ai eu la désagréable impression que depuis que les gens insistent à utiliser un langage de style qui implique de réfléchir à des évènements, et cela crée des problèmes sémantiques qui ils tentent de résoudre par utiliser le même type de réflexion, avec des constructions plus complexes.
Je vais utiliser un exemple simple de prendre le document, qu'ils ont dû faire face à des problèmes sémantiques qui ont été causés par la manière dont la sémantique des langages.
Le scénario (traduit de ma langue - sans le "flux") - Les événements sont signalés sur les voitures qui se déplacent à travers un segment de la route, chaque événement se compose de
Il ya aussi des événements simultanés, c'est-à-dire que plusieurs événements se produisent dans la même unité de temps (tout ce qui est le temps de granularité). Les intrants sont les événements de ce type, le résultat est - pour chaque cas, de générer un dérivé événement que les attributs d'origine des événements et la vitesse moyenne des voitures dans la même unité de temps. Si vous souhaitez voir les types de problèmes que le SQL implementators voir dans cet exemple simple, lisez la streamsql papier. Au lieu de discuter SQL, je voudrais montrer une autre façon de réfléchir sur le même problème.
La diapositive ci-dessous montre une autre façon de réfléchir à ce problème - ce qui est très simple EPN (Event Processing Network), qui dispose de deux agents techniques, d'un producteur (par exemple, un événement que l'émetteur de créer des événements à partir de flux vidéo produite par un appareil qui ressemble à la route) et un consommateur (celui qui veut voir la production d'événements) ..
Les deux agents travaillent sous le même contexte temporel (il peut être spatio-temporel, si nous voulons aussi que dans le groupe par segment de route) - dans ce cas, un contexte temporel est ouvert et fermé le début et la fin de 1 unité de temps.
- Le brut événement est appelé "position événement voiture" et cela va à deux agents.
- Le premier agent est un agrégateur qui permet de calculer (progressivement) la moyenne, car il est limité au contexte, la moyenne est de manifestations à partir de la même unité de temps, à la fin de l'unité de temps qu'il produit un événement unique "vitesse moyenne événement »de la structure
- Le second agent est un «modèle de détection" qui prend deux événements d'entrée - la "voiture position événement» de nouveau, et les dérivés événement "vitesse moyenne-événement", le schéma qui doit être identifié est l'ADN, et le «speed - moyen-événement »pour que l'agent a une politique de consommation de" réutilisation "(ce qui signifie que si un événement peut être utilisé pour plusieurs modèles). L'agent a produit un dérivé événement - et pour chaque modèle qui consiste en la «production-événement", dont la structure est la suivante:
Cette EPN n'implique pas un "flux" - la pensée est "orienté évènement", et il essaie de fournir naturel de penser à des évènements de fonctionnalité.
Commentaires:
1. Cet exemple est assez simple, peut également être résolu en mettant de la vitesse moyenne sur un événement mondial de l'Etat (ou de l'événement store / base de données) et ensuite l'enrichir en arrière - mais le cas est plus axée sur l'esprit de l'original qui travaillent par exemple sur ruisseaux.
2. Aggregator et la structure de détection sont du type des agents, il ya quelques (peu nombreuses) de plusieurs types. En règle générale, un événement de transformation du réseau composé de plusieurs types d'agents.
3. "Pattern Storm" affirme que stream SQL ignore la causalité. On peut voir la relation entre les événements d'entrée et de sortie des événements de même comme un agent de relation de causalité (il est un autre scénario en utilisant du papier), ce qui peut être mis tout en définissant l'EPN.
Une observation générale (non liée à cette annonce) - pour "anonyme" - Je vais un plaisir de répondre à votre question si vous le renvoyer et vous identifier. Je ne suis pas publier les commentaires anonymes.
Je peux envoyer la solution pour le reste des exemples dans la filière papier SQL si quelqu'un est intéressé ...
Source ...
|