2008.04.30 Wednesday 13:01
ストリーム処理エンジンのこれまでとStreamSpinner
”その人の過去を知れば、その人を分かる”ようにストリーム処理エンジンの今までの流れを見直す。
そして、その流れの中でStreamSpinnerがどこに向かっていくのか?
*引用は先生の報告書と先輩の発表。自分なりに噛み砕いたつもり
ストリームデータに対する処理基盤としての研究は
Models and Issues in Data Stream Systems
の2002年の論文から始まる。(読んでないので、今度読もう!)
当初は既に普及している関係データモデルの概念にストリームデータを適応させて、その上で性能向上やメモリ使用量の制御などの研究が行われてきた。この時代を第一世代Stream Processing Engine(SPE)と呼ぶ。
第一世代のエンジンとしては、Aurora,STREAM,TelegraphCQ,NiagaraCQなどがある。これらのエンジンでは、データストリームをタプルとみなした時に新しく必要となる演算を保持している。それは、ストリームをリレーションに変換する演算子(windowの概念があり、time-base,tuple-base,partinoned window)、リレーションをストリームに変換する演算子(Istream,Dstream,Rstream.加,減,)である。
第二世代では、第一世代のモデルに対して分散処理を導入して、高性能化や対故障性を実現した。
このエンジンはBorealis,StreamSpinnerである。先日読んだ分散環境における演算の配置最適化の論文はここに相当する。
第三世代では、多様なアプリケーション(信号処理やイベントマッチング)に適した特殊な演算を導入した特化型SPEが開発されている。これは、RFID用途のSASE,PEEX,HiFiや信号処理解析には"The case for a signal-oriented data stream management system"などがある。
さて、このような流れの中でStreamSpinnerがどこに向かっているのか?
ストリーム処理での演算共有、DBMSとの連結、分散処理、そして動的環境対応。
では、StreamSpinnerに足りないものは?(先輩プレゼン引用)
1、ストリームデータの意味記述
・ストリームデータの意味情報を問い合わせに利用したい
2、環境変化への適応
・情報源の変化
・問合せのローミング機能
・環境に応じた適応型ラッパー(これは、就活中に研究所のプレゼンの時に言われた)
3、コンパクトさ
・Java(Standard edition)が動くマシン
4、セキュリティ
・セキュリティには現状では無関心。他人の問合せ削除可能
などなど
過去を知って、現在の問題が分かっているから、あとは対応ですね。。。
研究 | - | -