-
Notifications
You must be signed in to change notification settings - Fork 0
DNET_DistributedProcessingStream
ストリーム処理には、以下のようなタイプのものがあり、
は、データ収集・格納系に分類される。
データ収集・格納系の該当節を参照。
データ収集・格納系の該当節を参照。
以下のようなリアルタイム処理を行うことが出来る。
-
ステートレスな、最も単純な ETL(EAI/ETLの該当節を参照)的な処理。
-
例
- システム監視のアラート通知
- 受信データをフォーマット変換して永続化
-
ステートを保持した処理。
-
区分
- 集計処理
- 集約処理
- 差分計算
- 状態変化の検知
-
例
- 移動距離の算出(差分計算)
- ログイン通知(状態変化の検知)
-
ステートを保持し、
- 特定周期(ウィンドウ幅)で集計。
- 指定周期(スライディング幅)で再集計。
-
例
- Webサイトの過去24時間の訪問者や注文情報
- 店舗毎の過去24時間の売上情報
-
詳細:→ コチラ
- 送信の順番で受信
- 特定のノードのみ受信
ビッグデータのストリーム処理のプロダクト
※ Apache Stormとの違いはリンク先参照を。
ビッグデータのストリーム処理のプロダクト
Apache Kafkaの該当節を参照。
Apache Kafkaに同梱されるツール。
- デファクト・スタンダードの分散メッセージング・システム、
- ストリーム処理の中核と言われるようになって来ているらしい。
以下の4点が挙げられている(プロダクトによってサポートされる)。
蓄積側も処理側も継続的にリソースが利用可能である必要がある。
大量データ処理を行う場合、
蓄積側も処理側も大量データを扱うスループットが必要になる。
継続的な処理の中でデータ量が変化すると必要なスループットも変化する。
何らかの契機で、データを失う可能性がある。
全てのストリームデータ処理システム
- 下記の3要素のバランスで構成され、
- この3要素間のトレードオフがある。
課金処理などで重視される。
不正検知システムなどで重視される。
-
固定長ウィンドウ(Fixed)
1時間ごと、等の一定の時間ごとに区切った範囲のウィンドウ -
スライディング・ウィンドウ(Sliding)
毎分、過去5分間分の結果を集計して出力する。
と言った、範囲(ウィンドウ)が移動(スライディング)するウィンドウ -
セッション・ウィンドウ(Sessions)
一定時間以内にアクセスが連続した場合、
そのアクセスを紐づけるという長さが固定されないウィンドウ
-
Watermark
- どのイベント時刻まで処理したかの区切り(遅延の足切り)
- 遅れを大きくすれば正確性は増すが、遅延時間は大きくなる。
-
Trigger
-
集計結果をどのタイミングで出力するかを定義する機構
-
間隔が
- 小さ過ぎる場合、不要な処理を実行する。
- 大き過ぎる場合、結果の出力が遅れる。
-
-
Accumulation
- 集計結果出力時の累積計算方式
- 保持する時間が長いほど、システム・リソースが必要
分散処理の該当節も参照。
- An Overview of Apache Streaming Technologies – Databaseline by Ian Hellström
https://databaseline.tech/an-overview-of-apache-streaming-technologies/
- 複合イベント処理
https://ja.wikipedia.org/wiki/複合イベント処理 - Complex event processing
https://en.wikipedia.org/wiki/Complex_event_processing - Event stream processing
https://en.wikipedia.org/wiki/Event_stream_processing
- 分散ストリーム処理エンジンあれこれ
https://qiita.com/takanorig/items/aaa4f116d1564ec20dd3 - Googleが考えるストリームデータ処理とは?
https://qiita.com/kimutansk/items/d6daca473440462634a0
移行メモ
- 「ステートレスな、最も単純な ETL 的な処理」のリンク先が
http://eai/ETL#eed58b6fという不正な URL だったため、 同 Wiki の「EAI/ETL」ページ(DNET_EAIETL)に張り替えた。- 「(差分計算」「(状態変化の検知」の閉じ括弧を補った。
Tags: 移行, 分散処理, ストリーム処理, CEP, Apache Kafka, Spark Streaming, ウィンドウ処理
このWikiは「Open棟梁Project」,「OSSコンソーシアム 開発基盤部会」によって運営されています。