27
<Insert Picture Here> Oracle Complex Event Processing11g CEP 日本株式会社 Fusion Middleware 事業統括本部

OEP製品技術資料 - アプリケーションアーキテクチャ

Embed Size (px)

DESCRIPTION

OEP製品のトレーニング資料: 本スライドでは、OEPアプリケーションを構成するアーキテクチャについてご理解頂けます。

Citation preview

Page 1: OEP製品技術資料 - アプリケーションアーキテクチャ

<Insert Picture Here>

Oracle Complex Event Processing11g

CEPアプリケーションアーキテクチャアプリケーションアーキテクチャアプリケーションアーキテクチャアプリケーションアーキテクチャ日本オラクル株式会社Fusion Middleware 事業統括本部

Page 2: OEP製品技術資料 - アプリケーションアーキテクチャ

以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメン

Copyright© 2012, Oracle. All rights reserved. 2

ト(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。

OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。

Page 3: OEP製品技術資料 - アプリケーションアーキテクチャ

基本用語イベント

• イベント• スキーマ(event type)によって定義

• 複数のイベントプロパティによって構成される

イベント プロパティ

Copyright© 2012, Oracle. All rights reserved. 3

StockEventType

symbol string

lastBid float

lastAsk float

イベント プロパティ

Page 4: OEP製品技術資料 - アプリケーションアーキテクチャ

基本用語ストリームとリレーション

• ストリーム(STREAM)

• 時間順序的なイベントの連続

• 追加のみ

• イベントの削除はできない

• 終りのないデータ

• シーケンスの終りがない

Copyright© 2012, Oracle. All rights reserved.

• シーケンスの終りがない

{event1, event2, event3, event4, ., eventN}

• 例

• {{1s, event1}, {2s, event2}, {4s, event3}}

⇒ストリーム

• {{1s, event1}, {4s, event2}, {2s, event3}}

⇒ストリームではなく、イベントの集合

4

Page 5: OEP製品技術資料 - アプリケーションアーキテクチャ

基本用語ストリームとリレーション

• リレーション(RELATION)

• いくつかの瞬間的な時間Tにおけるイベントの集合

• 削除、追加および更新が可能

• 例

• T=1の時: {{event1}, {event2}, {event3}}

• T=2の時: {{event1}, {event3}, {event4}}

Copyright© 2012, Oracle. All rights reserved.

• T=2の時: {{event1}, {event3}, {event4}}

• event1 と event3は変更なし

• event2 が削除された

• event4 が追加された

5

Page 6: OEP製品技術資料 - アプリケーションアーキテクチャ

アプリケーションモデル

イベントソース

イベントシンクストリーム

Copyright© 2012, Oracle. All rights reserved.

文脈上のデータ

Page 7: OEP製品技術資料 - アプリケーションアーキテクチャ

CEPアプリケーションとは?

アダプタプロセッサ

データソース

<<Source>>

<<Sink>>

Service1 Service2

<<OSGI サービス>> <<OSGI サービス>>

エクスポート インポート

Event Processing Network (EPN)

Oracle CEP アプリケーション

チャネル

Copyright© 2012, Oracle. All rights reserved. 7

e

アダプタ

プロセッサ

アダプタ

データソース

クエリー

<<Source>>

<<Sink>>

クエリーチャネル

チャネル

Channel

Page 8: OEP製品技術資料 - アプリケーションアーキテクチャ

アダプタとは?

• アダプタは、外部システムと相互作用するイベントソースやイベントシンク

• 外部システムとのコミュニケーション管理 (例 接続、プロトコル等)

• 外部データフォーマットとイベントの変換を行う

• イベントはJavaBeanやタプルとして表わされる

• アダプタは概念

• 実行時は、アダプタと他のイベントソースやシンクと区別しない

• IDEは、アダプタがEPNの”端”として認識

Copyright© 2012, Oracle. All rights reserved.

• IDEは、アダプタがEPNの”端”として認識

8

Page 9: OEP製品技術資料 - アプリケーションアーキテクチャ

アダプタとは?

アダプタプロセッサ

データソース

<<Source>>

<<Sink>>

Service1 Service2

<<OSGI サービス>> <<OSGI サービス>>

エクスポート インポート

Event Processing Network (EPN)

OSGI バンドル/Spring アプリケーションコンテキスト

チャネル

Copyright© 2012, Oracle. All rights reserved.

e

アダプタ

プロセッサ

アダプタ

データソース

クエリー

<<Source>>

<<Sink>>

クエリー

チャネル

チャネル

チャネル

チャネル

イベント->外部フォーマット

外部フォーマット>イベント

Page 10: OEP製品技術資料 - アプリケーションアーキテクチャ

“Out-of-the-box” アダプタ

• LoadGen (Inbound)

• 主にテスト用途

• 期間やデータのレート、Ramp-up期間のサポート

• 事前定義もしくはユーザー定義のイベントタイプ

• csvgen – ユーザー定義されたイベントをCSVファイルの行としてソケットを使って送信

• loadgen – ソケットを使って、ランダムな株価情報を送信

• JMS (Inbound やややや Outbound)

Copyright© 2012, Oracle. All rights reserved.

• JMS (Inbound やややや Outbound)

• Mapベースのメッセージの自動マッピングをサポート

• 他のメッセージタイプ (例:テキストなど)へのコンバータAPIを提供

• HTTP Pub/Sub (Inbound やややや Outbound)

• JSONへのイベントの自動マッピングをサポート

• JSON文字列へ(から)のコンバーターAPIの提供

• Socket フレームワークフレームワークフレームワークフレームワーク

• 最適なパフォーマンスのためのソケットベースのアダプタを実現するためのAPIとサンプルの提供

Page 11: OEP製品技術資料 - アプリケーションアーキテクチャ

プロセッサとは?

• インメモリでストリーミングデータへの問い合わせを実行

Copyright© 2012, Oracle. All rights reserved. 11

500ms毎に毎に毎に毎に1秒間隔のウィンドウを秒間隔のウィンドウを秒間隔のウィンドウを秒間隔のウィンドウをスライディングさせて集計値を計算スライディングさせて集計値を計算スライディングさせて集計値を計算スライディングさせて集計値を計算

Page 12: OEP製品技術資料 - アプリケーションアーキテクチャ

プロセッサとは?

アダプタプロセッサ

データソース

<<Source>>

<<Sink>>

Service1 Service2

<<OSGI サービス>> <<OSGI サービス>>

エクスポート インポート

Event Processing Network (EPN)

Oracle CEP アプリケーション

DATA“A” & “C”

Copyright© 2012, Oracle. All rights reserved. 12

e

アダプタ

プロセッサ

アダプタ

データソース

<<Source>>

<<Sink>>

Channel

Select *

where

DATA = C

DATA“B” & “C”

DATA“C”

Page 13: OEP製品技術資料 - アプリケーションアーキテクチャ

チャネルとは?

• チャネルは、イベント・ソースをCQL プロセッサへ接続し、CQL プロセッサをイベント・シンクに接続するためのコンポーネント

• チャネルは2つのオブジェクトタイプを扱う• ストリーム

• CQL問い合わせが作用する主要なソース

Copyright© 2012, Oracle. All rights reserved.

• CQL問い合わせが作用する主要なソース

• リレーション

• 時間さまざまなタプルの集合(瞬間的な関連)

13

Page 14: OEP製品技術資料 - アプリケーションアーキテクチャ

チャネルとは?

アダプタプロセッサ

データソース

<<Source>>

<<Sink>>

Service1 Service2

<<OSGI サービス>> <<OSGI サービス>>

エクスポート インポート

Event Processing Network (EPN)

Oracle CEP アプリケーション

チャネル

Copyright© 2012, Oracle. All rights reserved. 14

e

アダプタ

プロセッサ

アダプタ

データソース

Queries

<<Source>>

<<Sink>>

Queriesチャネル

チャネル

チャネル

Page 15: OEP製品技術資料 - アプリケーションアーキテクチャ

Event Processing Networks (EPN)

イベント駆動のアーキテクチャはいくつかの処理ステップがユーザーロジックと混在して構成される

アダプタプロセッサ

リスナー- POJO

イベントソース

Rule

プロセッサ

クエリー

Rule

プロセッサ

クエリー

Rule

プロセッサ

クエリー

Copyright© 2012, Oracle. All rights reserved.

アダプタデータソースクエリー

クエリー

Ruleキャッシュ Rule

プロセッサ

クエリー

リスナー- OSB

イベント処理をするコンポーネントの配置やネットワークをイベント処理ネットワーク(Event Processing

Network:EPN)と呼びます

Page 16: OEP製品技術資料 - アプリケーションアーキテクチャ

Oracle CEPのアプリケーションモデルイベント処理のために設計

• Event Processing Network (EPN)として処理構造を表記として処理構造を表記として処理構造を表記として処理構造を表記• EPNではイベントのプロデューサとコンシューマを記述

• EPNは、次の要素から構成される図

• アダプタアダプタアダプタアダプタ – 外部のデータやイベントをルールによって処理されるイベントに変換する

• チャネルチャネルチャネルチャネル – フロー制御を構成するために、CQLプロセッサのソースとシンクを接続

• プロセッサプロセッサプロセッサプロセッサ - プロセッサが扱うストリームに適用されるルールのセット

• リスナーリスナーリスナーリスナー – 抽出されたイベントに必要なビジネスロジックを実装した POJOとして実装

Copyright© 2012, Oracle. All rights reserved.

• リスナーリスナーリスナーリスナー – 抽出されたイベントに必要なビジネスロジックを実装した POJOとして実装

• アプリケーションは、Springフレームワークの構成ファイルとして定義される

• WLEvsのカスタムタグにより、EPN要素のインスタンスや関連性が記述される

• (例: <wlevs:adapter>)

• イベントイベントイベントイベント• JavaBeanやMapで実装

• ランタイムのサービスとして登録される

• アダプタ、プロセッサとイベントアダプタ、プロセッサとイベントアダプタ、プロセッサとイベントアダプタ、プロセッサとイベント• OSGiのサービスとして公開され、他のアプリケーションからの利用も可能

Page 17: OEP製品技術資料 - アプリケーションアーキテクチャ

Event Processing Networks (EPN)

Copyright© 2012, Oracle. All rights reserved.

Page 18: OEP製品技術資料 - アプリケーションアーキテクチャ

イベントタイプ レポジトリ

PriceEvent

Copyright© 2012, Oracle. All rights reserved.

• EPNにイベントを登録

• EPNコンポーネントから参照されるイベントのプロパティを作成

Page 19: OEP製品技術資料 - アプリケーションアーキテクチャ

EPN要素の接続

<<イベントソース>>

<<イベントソース>

かつ<<イベントシンク>> <<イベントシンク>>

<<Reference Data>>

Copyright© 2012, Oracle. All rights reserved.

<wlevs:channel

id="InboundChannel" event-type="InboundEvent">

<wlevs:listener ref="FirstProcessor" />

<wlevs:listener ref="EventBean" />

<wlevs:source ref="InboundAdapter"/>

</wlevs:channel>

<wlevs:processor id="FirstProcessor">

<wlevs:listener ref="OutboundChannel" />

<wlevs:cache-source ref="ReferenceCacheOrDb" />

<wlevs:table-source ref="myschema.mytable"/>

</wlevs:processor>

Page 20: OEP製品技術資料 - アプリケーションアーキテクチャ

キャッシュの構成

Stream -> Cache 操作

Copyright© 2012, Oracle. All rights reserved.

<wlevs:cache

id="InputCache"

caching-system="LocalCaching"

value-type="InboundEvent"

key-properties="key">

<wlevs:cache-listener ref="CacheListener"/>

</wlevs:cache>

<wlevs:channel id="OutboundChannel">

<wlevs:listener ref="OutboundAdapter" />

<wlevs:listener ref="OutputCache" />

</wlevs:channel>

Stream -> Cache 操作Insert put

Update put

Remove delete

Page 21: OEP製品技術資料 - アプリケーションアーキテクチャ

オラクルのミドルウェア関連情報

最新情報つぶやき中最新情報つぶやき中

OracleMiddle_jpOracleMiddle_jp

twitter.com/OracleMiddle_jp/

�最新情報最新情報最新情報最新情報

�おすすめ情報おすすめ情報おすすめ情報おすすめ情報

�セミナ情報セミナ情報セミナ情報セミナ情報

などなどなどなどなどなどなどなど

Copyright© 2012, Oracle. All rights reserved. 21

slideshare.net/slideshare.net/OracleMiddleJPOracleMiddleJP

�製品資料製品資料製品資料製品資料

�顧客事例顧客事例顧客事例顧客事例

�ホワイトペーパーホワイトペーパーホワイトペーパーホワイトペーパー

などなどなどなどなどなどなどなど

Page 22: OEP製品技術資料 - アプリケーションアーキテクチャ

Copyright© 2012, Oracle. All rights reserved.

Page 23: OEP製品技術資料 - アプリケーションアーキテクチャ

■パフォーマンス診断サービス

•Webシステム ボトルネック診断サービス

•データベースパフォーマンス 診断サービス

NEW

■システム構成診断サービス

•Oracle Database構成相談サービス

•サーバー統合支援サービス

•仮想化アセスメントサービス

•メインフレーム資産活用相談サービス

•BI EEアセスメントサービス

•簡易業務診断サービス

■バージョンアップ支援サービス

■移行支援サービス

•SQL Serverからの移行支援サービス

•DB2からの移行支援サービス

•Sybaseからの移行支援サービス

ITプロジェクト全般に渡る無償支援サービス

Oracle Direct Conciergeサービス

Copyright© 2012, Oracle. All rights reserved. 23

オラクル社のエンジニアが 直接ご支援しますお気軽にご活用ください!

オラクル 無償支援 検索

■バージョンアップ支援サービス

•Oracle Databaseバージョンアップ支援サービス

•Weblogic Serverバージョンアップ支援サービス

•Oracle Developer/2000(Froms/Reports)Webアップグレード相談サービス

•MySQLからの移行支援サービス

•Postgre SQLからの移行支援サービス

•Accessからの移行支援サービス

•Oracle Application ServerからWeblogicへ移行支援サービス

NEW

NEW

Page 24: OEP製品技術資料 - アプリケーションアーキテクチャ

インストールすることなく、すぐに体験いただけます

製品無償評価サービス提供シナリオ一例

・データベースチューニング

・アプリケーション性能・負荷検証

・無停止アップグレード

・Webシステム障害解析

1日5組限定!

• サービスご提供までの流れ

Copyright© 2012, Oracle. All rights reserved. 24

http://www.oracle.com/jp/direct/services/didemo-195748-ja.html

Web問い合わせフォーム「ダイデモ」をキーワードに検索することで申し込みホームページにアクセスできます

※サービスご提供には事前予約が必要です

• サービスご提供までの流れ

1. お問合せフォームより「製品評価サービス希望」と必要事項を明記し送信下さい

2. 弊社より接続方法手順書およびハンズオン手順書を送付致します

3. 当日は、弊社サーバー環境でインターネット越しに製品を体感頂けます

Page 25: OEP製品技術資料 - アプリケーションアーキテクチャ

Oracle Direct 検索

あなたにいちばん近いオラクル

Oracle Directまずはお問合せくださいまずはお問合せください

システムの検討・構築から運用まで、ITプロジェクト全般の相談窓口としてご支援いたします。

システム構成やライセンス/購入方法などお気軽にお問い合わせ下さい。

Copyright© 2012, Oracle. All rights reserved.

http://www.oracle.com/jp/direct/inquiry-form-182185-ja.html

Web問い合わせフォーム フリーダイヤル

専用お問い合わせフォームにてご相談内容を承ります。

※こちらから詳細確認のお電話を差し上げる場合がありますので、ご登録されている連絡先が最新のものになっているか、ご確認下さい。

0120-155-096

※月曜~金曜 9:00~12:00、13:00~18:00

(祝日および年末年始除く)

システム構成やライセンス/購入方法などお気軽にお問い合わせ下さい。

Page 26: OEP製品技術資料 - アプリケーションアーキテクチャ

Copyright© 2012, Oracle. All rights reserved.

Page 27: OEP製品技術資料 - アプリケーションアーキテクチャ

Copyright© 2012, Oracle. All rights reserved. 27