BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Greg Young氏,CEP(複合イベント処理)を語る

Greg Young氏,CEP(複合イベント処理)を語る

原文(投稿日:2014/01/29)へのリンク

過去の記録データ全体にクエリを行うような,時間軸に対して実行しなければならない問題には,Complex Event Processing(CEP/複合イベント処理)が非常に有効だ – Greg Young氏は先日のプレゼンテーションで,このように提言した。
氏はイベント処理を,発生したある事象に関連するデータの経緯を解析し,そこから結論を導き出す方法だ,と説明している。ひとつの例は,異なった時間に発生した事象を関連付けしたい場合に用いられる,時間的相関の問合せだ。Twitterストリーム上で ,"誕生日" という単語を使ってから1分以内に "プレゼント" を使ったユーザを見つけ出す,あるいは臨床試験において,試験期間中の異なる時間にある特定の反応を示した患者を検索する,といった例が考えられる。

問合せの作成に氏が使用しているのは,イベントストリーム上で動作するクエリ言語で,JavaScriptで実装されている。JavaScriptでクエリを記述するため,Webブラウザを使用した記述やデバッグも可能だ。
このクエリ言語は,イベントソース(Event Source) の概念に従って開発されたNoSQLであるEvent Store に含まれている。イベントソーシングでは,状態を直接的に表現する代わりに,ある特定の時間に発生した事実(fact)の連続として表現する。この方法でデータを保存することにより,現在の状態だけでなく,状態の変化がすべて保存されるため,情報が失われることがなくなる。

事実ないしイベントを保存することは,タイムマシンを作るようなもので,ある時間に立ち戻って過去の状態を見ることが可能になる。例えば,今日作成したレポート処理を実行して,1ヶ月前のレポートを発行することができるのだ。
もうひとつのユースケースは,未来の方向に注目して,予測能力を評価するというものだ。1ヶ月前の時点で予測モデルを実行して今日の結果を予測し,実際の結果との比較を行うことでこれが可能になる。

Event Storeはオープンソースプロダクトで,修正版BSDライセンスで公開されている。最初のリリースは2012年9月だ。

Event Storeのリードアーキテクトを務めるGreg Young氏は,CQRS (Command Query Responsibility Segregation / コマンドクエリ責務分離) という造語で有名な独立系コンサルタントである。

この記事に星をつける

おすすめ度
スタイル

BT