ヘッダーをスキップ
Oracle® Complex Event Processingスタート・ガイド
11g リリース1(11.1.1)
B61656-01
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

1 Oracle CEPの概要

この節では、次の項目について説明します。

1.1 Oracle Complex Event Processingの紹介

Oracle CEP(以前のWebLogic Event Server)は、高性能イベント駆動型アプリケーションの開発とデプロイメントのためのJavaサーバーです。Equinox OSGiベースの軽量Javaアプリケーション・コンテナであり、Oracle CEP Service Engineなどの共有サービスを含みます。Oracle CEP Service Engineは、Oracle Continuous Query Language(Oracle CQL)に基づいてリッチな宣言型環境を実現します。Oracle CQLは、ビジネス・オペレーションの管理の効率と有効性を高めるように、ストリーミング・データをサポートする構文が追加されたSQLベースの問合せ言語です。Oracle CEPでは、JRockit Real Timeを使用して極めて高いスループットとマイクロ秒単位の速度がサポートされます。また、完全なリアルタイムのエンドツーエンドJava Event-Driven Architecture(EDA)開発プラットフォームのために、Oracle CEP VisualizerおよびOracle CEP IDE for Eclipse開発用ツールが提供されます。

Oracle CEPには、ビジネス・ロジックを含むユーザーのJavaコード(POJO)をデプロイする機能があります。Oracle CEP内でビジネス・ロジックを実行することにより、時間およびイベント駆動型アプリケーション向けの高度に調整されたフレームワークが提供されます。

1.2 Oracle CEPの概念

図1-1に、イベント駆動型システムの概要を示します。

図1-1 イベント駆動型システムの例

図1-1の説明が続きます
「図1-1 イベント駆動型システムの例」の説明

イベント駆動型システムは、通常、複数のイベント・ソース、リアルタイム・イベント駆動型アプリケーション、およびイベント・シンクで構成されています。Oracle CEPサーバーと、そのサーバーにデプロイするOracle CEPアプリケーションが、イベント駆動型アプリケーションを構成します。イベント・ソースは通常のイベント・データのストリームを生成します。Oracle CEPアプリケーションはイベント・ストリームをリスニングし、これらのイベントを処理して特別なイベントを生成します。イベント・シンクは特別なイベントを受信します。

イベント・ソース、イベント駆動型アプリケーション、およびイベント・シンクは互いに独立しているため、他のコンポーネントに変更を加えることなくこれらのコンポーネントを追加または削除できます。これはイベント駆動型アーキテクチャの重要な特性です。

イベント駆動型アプリケーションはルールによって駆動されます。Oracle CEPでは、Oracle Continuous Query Language(Oracle CQL)を使用してルールは問合せとして表されます。これらの問合せはデータ・ストアに対して永続化され、イベントの着信ストリームの処理およびイベントの発信ストリームの生成に使用されます。通常、問合せはフィルタリングおよび集計機能を実行し、着信イベント・ストリームの特別なイベントを検出して抽出します。このため、発信イベント数は着信イベント数をはるかに下回ります。

Oracle CEPはイベント駆動型アプリケーション開発用のミドルウェアです。Oracle CEPアプリケーションは、本質的にイベント駆動型アプリケーションです。

次に、アプリケーション自体について説明します。アプリケーションは、図1-2に示すようにOracle CEPサーバーによってホストされる軽量のコンテナです。

図1-2 Oracle CEPアプリケーション

図1-2の説明が続きます
「図1-2 Oracle CEPアプリケーション」の説明

通常、Oracle CEPアプリケーションは次の種類のコンポーネントによって構成されます。

1.3 イベント処理ネットワーク

アダプタ、チャネル、プロセッサ、およびビジネス・ロジックPOJOを任意に相互接続してイベント処理ネットワーク(EPN)を形成できます。EPNのトポロジの例を次に示します。

EPNには重要な特性が2つあります。

1.4 使用例

Oracle CEPの使用例は様々な業種やアプリケーションに及びます。多様な使用例のごく一部を次に示します。

1.5 Oracle CEP機能の概要

Oracle CEPの主な機能の概要を次に示します。

1.6 サポート対象のプラットフォーム

Oracle CEPのサポート対象プラットフォームの詳細は、http://www.oracle.com/technology/software/products/ias/files/oracle%20fusion%20middleware%2011gR1%20(11.1.1.x)%20certification%20matrix.xlsを参照してください。

ご使用のプラットフォームに対応するインストール・プログラムは、http://www.oracle.com/technology/software/products/middleware/htdocs/111110_fmw.htmlにあります。詳細は、2.2項「インストールの概要」を参照してください。

1.7 Oracle CEP IDE for Eclipse

Oracle CEP IDE for Eclipseは、図1-3に示すように、Oracle CEPアプリケーションを開発するプログラマを対象としています。

図1-3 Oracle CEP IDE for Eclipse

図1-3の説明が続きます
「図1-3 Oracle CEP IDE for Eclipse」の説明

Oracle CEP IDE for Eclipseは、Oracle CEPアプリケーションの開発、デプロイ、およびデバッグを支援するためにデザインされたEclipse IDEのプラグインです。

Oracle CEP IDE for Eclipseの主な機能は次のとおりです。

詳細は、次を参照してください。

1.8 Oracle CEP Visualizer

Oracleによって、Oracle CEP Visualizer(図1-4)という高度なランタイム管理コンソールが提供されます。

図1-4 Oracle CEP Visualizer

図1-4の説明が続きます
「図1-4 Oracle CEP Visualizer」の説明

Oracle CEP Visualizerを使用すると、Oracle CEPサーバー・ドメインとそのドメインにデプロイするOracle CEPアプリケーションの管理、チューニングおよび監視をすべてブラウザから行うことができます。Oracle CEP Visualizerでは、洗練された様々なランタイム管理ツールが提供されます。これにはOracle CQLおよびEPLのルールの管理や作成も含まれます。

詳細は、Oracle CEP Visualizerユーザーズ・ガイド

1.9 Oracle CEP 11g リリース1(11.1.1)の新機能

このバージョンのOracle CEPには、次の新機能があります。

1.9.1 高可用性とスケーラビリティ

このリリースでは、Oracle CEPによって高可用性の入力および出力アダプタが提供されるため、様々な高可用性のサービス・オプションを備えたOracle CEPアプリケーションを構築できます。

参照:

  • Eclipse用Oracle CEP開発者ガイドの高可用性に関する項

  • Oracle CEP管理者ガイドのマルチサーバー・ドメインの概要に関する項

このリリースでは、Oracle CEPによって新しいスケーラビリティ・コンポーネントが提供されます。これを使用すると、高可用性があるかどうかに関係なくアプリケーションを拡張できます。

参照:

  • Eclipse用Oracle CEP開発者ガイドのスケーラビリティに関する項

  • Eclipse用Oracle CEP開発者ガイドのパフォーマンス・チューニングに関する項

1.9.2 イベントの記録と再生

Oracle CEPのイベント・リポジトリ機能を使用すると、イベント処理ネットワーク(EPN)を通じて流れるイベントを記録、格納できるため、後からイベントを再生できます。イベント・リポジトリは、プロセッサやチャネルなどのステージごとに構成されます。

このリリースでは、Oracle CEPサーバーはイベント・ストアとしてBerkeleyデータベースを使用します。

参照:

  • Eclipse用Oracle CEP開発者ガイドのイベントの記録と再生の構成に関する項

  • Oracle CEP Visualizerユーザーズ・ガイドのEPNを流れるイベントの記録と再生に関する項

  • Oracle CEP管理者ガイドのイベントの記録と再生を制御するコマンドに関する項

1.9.3 Oracle CEP IDE for Eclipse

このリリースでは、Oracle CEP IDE for Eclipseによって次の機能が提供されます。

  • Eclipse 3.5およびWTP 3.1のサポート。

  • アプリケーション・ライブラリのサポート。Eclipse用Oracle CEP開発者ガイドのアプリケーション・ライブラリの管理に関する項を参照してください。

  • 構成ファイルまたはアセンブリ・ファイルの作成。Eclipse用Oracle CEP開発者ガイドのOracle CEP IDE for Eclipseを使用したコンポーネント構成ファイルの作成方法に関する項を参照してください。

  • ローカルまたはリモートOracle CEPサーバーの作成

    参照:

    • Eclipse用Oracle CEP開発者ガイドのローカルOracle CEPサーバーおよびサーバー・ランタイムの作成方法に関する項

    • Eclipse用Oracle CEP開発者ガイドのリモートOracle CEPサーバーおよびサーバー・ランタイムの作成方法に関する項

  • グループ名別のマルチサーバー・ドメインへのアプリケーションのデプロイ。Eclipse用Oracle CEP開発者ガイドのOracle CEPサーバーへのアプリケーションのデプロイ方法に関する項を参照してください。

  • [Ctrl]を押しながらクリックするハイパーリンク・ナビゲーション。Eclipse用Oracle CEP開発者ガイドのハイパーリンクに関する項を参照してください。

  • イベント処理ネットワーク(EPN)のノードを選択して「削除」をクリックすると削除できます。

1.9.4 Visualizer管理コンソール

このリリースでは、Oracle CEP Visualizerによって次の機能が提供されます。

  • 新しい高可用性アーキテクチャのサポート

  • イベント・トレースとイベント・インジェクション。Oracle CEP Visualizerユーザーズ・ガイドのイベント・インスペクタ・サービスおよびストリーム・ビジュアライザによるアプリケーション・テストに関する項を参照してください。

  • 構成バージョン管理。Oracle CEP Visualizerユーザーズ・ガイドの構成履歴の管理に関する項を参照してください。

1.9.5 Oracle Continuous Query Language(Oracle CQL)

Oracle Continuous Query Language(Oracle CQL)は、ストリーミング・データをサポートする構文追加されたSQLベースの問合せ言語です。Oracle CQLを使用すると、データ・ストリームに対して問合せを作成し、Oracle CEPを使用する複雑なイベント処理(CEP)を実行できます。

このリリースでは、Oracle CQLに次の機能が含まれています。

  • データ・カートリッジ。Oracle CEPのCQL言語リファレンスのデータ・カートリッジの概要に関する項を参照してください。

  • データ・カートリッジのTABLE句。Oracle CEPのCQL言語リファレンスのデータ・カートリッジTABLE問合せに関する項を参照してください。

  • DIFFERENCE USING句。Oracle CEPのCQL言語リファレンスの問合せ結果の違いの検出に関する項を参照してください。

  • ALIASES要素。Oracle CEPのCQL言語リファレンスのAliases要素を使用する別名の定義に関する項を参照してください。

  • 外部リレーション(キャッシュおよびデータベース)に対する問合せの複雑な述語。述語の副句で論理演算子(ANDORNOTなど)を使用する問合せや、副句の比較属性に対して算術演算子を使用する問合せを作成できます。

    たとえば、次の問合せがサポートされるようになりました。

    SELECT * FROM S[NOW], MyExternalRelation    WHERE S.C1 + S.C2 = MyExternalRelation.C1 * F(S.C1)
    

    リレーショナル・データベース表に対して結合を行う問合せでは、Oracle CQLによってすべての種類の複雑な述語がサポートされます。詳細は、Eclipse用Oracle CEP開発者ガイドのOracle CQLプロセッサ表ソースの構成に関する項を参照してください。

    キャッシュに対して結合を行う問合せの場合は、制約事項に注意する必要があります。詳細は、Oracle CEPのCQL言語リファレンスのキャッシュに対する結合の作成に関する項を参照してください。

1.9.6 Webサービスのサポート

このリリースでは、Eclipse用Oracle CEP開発者ガイドに、Oracle CEPアプリケーションとWebサービスを統合する方法の手順が記載されています。

Eclipse用Oracle CEP開発者ガイドのWebサービスの構成に関する項を参照してください。

1.9.7 JMSアダプタ

このリリースでは、着信と発信両方のJMSアダプタが処理済セッションを使用できます。つまり、着信JMSアダプタと発信JMSアダプタの両方で、セッション処理済の子要素を含むJMSアダプタを構成できます。

Eclipse用Oracle CEP開発者ガイドのJMSアダプタの構成に関する項を参照してください。

1.9.8 サンプル

このリリースでは、Oracle CEPに新しいサンプルが含まれます。Oracle Spatialデータ・カートリッジ・サンプルです。

3.8項「Oracle Spatialデータ・カートリッジのサンプル」を参照してください。

1.9.9 ドメイン・ディレクトリ構造の変更点

クラスタリングおよびマルチ・サーバー環境をサポートするために用意されているサンプル・ドメインのディレクトリ構造が変更されました。

これまでは、すべてのドメイン・ファイルがORACLE_CEP_HOME/ocep_11.1/samples/domains/helloworld_domainなどのドメイン・ディレクトリの直下に格納されていました。ORACLE_CEP_HOMEはOracle CEPの最上位インストール・ディレクトリを指します。

このリリースでは、ドメイン・ディレクトリには単一のサーバーに対応する1つまたは複数のサブディレクトリがあります。このディレクトリに、該当のサーバーのすべての構成ファイルが含まれます。たとえば、HelloWorldドメインには単一のサーバーが含まれており、このサーバーの構成ファイルはORACLE_CEP_HOME/ocep_11.1/samples/domains/helloworld_domain/defaultserverディレクトリにあります。

ドメイン作成用の新しいConfiguration Wizardは、更新されたこのディレクトリ構造に対応しています。

参照:

  • Oracle CEP管理者ガイドのOracle CEPスタンドアロンサーバー・ドメインの作成に関する項

  • Oracle CEP管理者ガイドのOracle CEPマルチサーバー・ドメインの作成に関する項

1.10 次のステップ