この項では、Oracle CQLルールを管理するためにOracle CEP Visualizerを使用して実行可能な通常のアプリケーション・タスクを説明します。次のトピックが含まれます。
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』
『Oracle Complex Event Processingスタート・ガイド』のOracle Continuous Query Language (CQL)の例に関する項
Oracle CEP Visualizerを使用すると、Oracle CEPアプリケーションのOracle CQLプロセッサでOracle CQLルールを管理できます。
この節では、以下のトピックについて説明します。
Oracle CEP Visualizerは、Oracle CQLビューおよび問合せの構成を簡素化するための高度な問合せウィザードを提供します。ビューまたは問合せを構成するためにOracle CQL要素をドラッグ・アンド・ドロップしたり、完全なOracle CQLビューまたは問合せのテンプレートをドラッグ・アンド・ドロップしてニーズを満たすようにカスタマイズできます。Oracle CQL問合せウィザードは、ビジネス・ユーザーが正しい構文のOracle CQLビューおよび問合せを効果的に作成し、それをデプロイ済のOracle CEPアプリケーションへ速やかに適用できるように設計されています。
「問合せウィザード」を使用すると、Oracle CQLビューおよび問合せを作成できます。Oracle CQLストリームおよびリレーションは作成できません。デプロイ済Oracle CEPアプリケーションが、ストリームおよびリレーションを提供する必要があります。詳細は、『Oracle Complex Event Processing開発者ガイドfor Eclipse』を参照してください。
注意: Oracle CQL問合せは、その入力チャネルが入力イベントを生成する場合、すぐにイベントの出力を開始します。チャネル上で問合せセレクタとアップストリームOracle CQLプロセッサを使用する場合、問合せをアップストリームOracle CQLプロセッサに追加する時刻と、ダウンストリーム・チャネル上で問合せセレクタを構成する時刻との間で、ダウンストリーム・チャネル上で要求していない問合せ結果を監視する場合があります。詳細は、4.2.1.3項「チャネル・プロパティ: アウトバウンド・チャネル」を参照してください。 |
また、既存のOracle CQLビューまたは問合せを変更できます。6.1.2項「問合せウィザードを使用したOracle CQLプロセッサでルールを編集する方法」を参照してください。
問合せウィザードを使用してOracle CQLプロセッサでルールを作成するには:
左ペインで、アプリケーションのデプロイ先のOracle CEPインスタンスの「アプリケーション」ノードへ移動して展開します。
「appname」を選択します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサを選択します。
EPNダイアグラムを使用するには:
「イベント処理ネットワーク」タブをクリックします。
使用するOracle CQLプロセッサをダブルクリックします。
ドメイン・ツリーを使用するには:
「appname」>ステージノードを展開します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサをクリックします。
右ペインで、「一般」タブをクリックします。
図6-1で示すように、「プロセッサ」パネルが表示されます。
「問合せウィザード」タブをクリックします。
図6-2で示すように、「問合せウィザード」タブが表示されます。
「問合せウィザード」キャンバスの上部にある各種ツールの詳細は、6.1.11項「問合せウィザード・ダイアグラムの管理」を参照してください。
Oracle CQL文を作成する方法を決定します。
既存のOracle CEPサーバー・テンプレートに基づいて問合せを構成するには:
「テンプレート」タブをクリックします。
テンプレートを選択し、キャンバスへドラッグ・アンド・ドロップします。
既存のユーザー定義テンプレートに基づいて問合せを構成するには:
ユーザー定義テンプレートタブをクリックします。
テンプレートを選択し、キャンバスへドラッグ・アンド・ドロップします。
一度に1つの演算子で問合せを構成するか、テンプレート・ベースのOracle CQL文に演算子を追加するには:
CQLコンストラクトタブをクリックします。
コンストラクトを選択し、キャンバスへドラッグ・アンド・ドロップします。
必要なコンストラクトをキャンバスへ追加し終えるまで繰り返します。
コンストラクト間の接続を構成します。
コンストラクトを接続するには、ソースのコンストラクトをクリックし、宛先のコンストラクトへドラッグします。
Oracle CEP Visualizerは、Oracle CQL構文に準拠している相互接続のみ許可します。
図6-3は有効な相互接続を示します。
図6-4は無効な相互接続を示します。
有効なOracle CQL構文の詳細は、『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項を参照してください。
接続の試行を一時停止するには、キーボードの[Esc]キーを押します。
既存の接続を削除するには、その接続をクリックして選択し、キーボードの[Delete]キーを押します。
コンストラクトをダブルクリックして表示されるエディタ・ダイアログを使用し、各コンストラクトを構成します。
緑のチェック・マークが付いていないコンストラクト・アイコンは構成されていません。
緑のチェック・マークが付いているコンストラクト・アイコンは構成済みです。
詳細については、次を参照してください。
任意のタイミングでOracle CQL文を保存するには、「問合せの保存」ボタンをクリックします。
図6-5で示すように、「保存されたすべての問合せ」ダイアログが表示されます。
「保存されたすべての問合せ」ダイアログには、構成中のプロセッサの保存された問合せがすべてリストで表示されています。
「問合せID」フィールドに問合せ名を入力し、「保存」をクリックします。
図6-6で示すように、確認ダイアログが表示されます。
「OK」をクリックします。
問合せは、現在使用中のコンピュータのローカル・ディスクに保存されます。問合せを再ロードするには、同一のローカル・ホストからOracle CEP Visualizerへアクセスする必要があります。
保存後にOracle CQL文を再ロードするには、問合せを開くボタンをクリックします。
図6-7で示すように、「保存されたすべての問合せ」ダイアログが表示されます。
問合せを選択し、「CQLのロード」をクリックします。
Oracle CQL文がキャンバスへロードされます。
Oracle CQL文をOracle CQLプロセッサへインジェクトするには、Output CQLコンストラクトを編集し、「ルールのインジェクト」をクリックします。
「CQLルール」タブに新しいルールが表示されます。
詳細は、6.1.9.16項「Output CQLコンストラクトの構成」を参照してください。
問合せの作成後、アウトバウンド・チャネル(問合せを作成した元のOracle CQLプロセッサからのチャネル・ダウンストリーム)のセレクタを更新します。これは、既存のイベント・タイプでのみ機能します。
詳細は、4.2.1.2項「チャネル・プロパティ: アウトバウンド・チャネル」を参照してください。
Oracle CEP Visualizerは、Oracle CQL問合せの構築を簡素化するための高度な問合せウィザードを提供します。CQL問合せタブで既存の問合せを選択し、問合せウィザードで問合せを編集できます。Oracle CQL問合せウィザードは、ビジネス・ユーザーが正しい構文のOracle CQL問合せを効率よく作成し、それをデプロイ済のOracle CEPアプリケーションへ適用できるように設計されています。
問合せウィザードは、所定のルールをインポートし、Oracle CQL演算子のセットとしてグラフィックで表示します。Oracle CQL文の他の部分に影響を及ぼさずに各演算子に移動して変更できます(SELECT式の変更など)。
既存のOracle CQL問合せおよびビューを編集できます。Oracle CQLストリームおよびリレーションは編集できません。デプロイ済Oracle CEPアプリケーションが、ストリームおよびリレーションを提供する必要があります。詳細は、『Oracle Complex Event Processing開発者ガイドfor Eclipse』を参照してください。
問合せウィザードを使用してOracle CQLプロセッサでルールを編集するには、次の手順を実行します。
左ペインで、アプリケーションのデプロイ先のOracle CEPインスタンスの「アプリケーション」ノードへ移動して展開します。
「appname」を選択します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサを選択します。
EPNダイアグラムを使用するには:
「イベント処理ネットワーク」タブをクリックします。
使用するOracle CQLプロセッサをダブルクリックします。
ドメイン・ツリーを使用するには:
「appname」>ステージノードを展開します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサをクリックします。
右ペインで、「一般」タブをクリックします。
図6-1で示すように、「プロセッサ」パネルが表示されます。
「CQLルール」タブをクリックします。
図6-32で示すように「CQLルール」タブが表示されます。
編集するルールを選択し、「問合せウィザード」ボタンをクリックします。
図6-10で示すように、キャンバス上で選択されたルールを含む問合せウィザードが開きます。
「問合せウィザード」キャンバスの上部にある各種ツールの詳細は、6.1.11項「問合せウィザード・ダイアグラムの管理」を参照してください。
任意の演算子に関連付けられたOracle CQL文を表示するには:
「ホバー」チェック・ボックスがチェックされていることを確認します。
マウス・ポインタを演算子の上に重ねます。
図6-11で示すように、Oracle CQL文が表示されます。
任意の演算子に関連付けられたOracle CQL文を変更するには、演算子をダブルクリックします。
対応するエディタ・ダイアログが表示されます。
図6-12は、「結合」演算子をダブルクリックした後のエディタ・ダイアログを示します。
エディタ・ダイアログを使用し、演算子を変更します。
すべての問合せウィザードのエディタ・ダイアログの構成に関する詳細は、6.1.9項「問合せウィザードのOracle CQLコンストラクトを構成する方法」を参照してください。
「結合の追加」ボタンをクリックし、変更を生成済のOracle CQL文へ適用します。
「検証」ボタンをクリックし、変更が正しい構文であることを確認します。
次に進む前にエラーを修正します。
「保存」をクリックして変更を保存します。
問合せはメモリーに保存されます。
問合せの出力演算子をダブルクリックします。
「ルールの置換」をクリックします。
Oracle CQLルールが変更され、新しいバージョンが「CQLルール」タブに表示されます。
出力構文を閉じます。
パラメータ化されたOracle CQL問合せを作成できます。
注意: 問合せウィザードを使用してパラメータ化された問合せは削除できず、Oracle CQL問合せは編集できません。 |
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』のパラメータ化された問合せに関する項
Oracle CQLプロセッサでパラメータ化されたルールを作成するには、次の手順を実行します。
左ペインで、アプリケーションのデプロイ先のOracle CEPインスタンスの「アプリケーション」ノードへ移動して展開します。
「appname」を選択します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサを選択します。
EPNダイアグラムを使用するには:
「イベント処理ネットワーク」タブをクリックします。
使用するOracle CQLプロセッサをダブルクリックします。
ドメイン・ツリーを使用するには:
「appname」>ステージノードを展開します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサをクリックします。
右ペインで、「一般」タブをクリックします。
図6-1で示すように、「プロセッサ」パネルが表示されます。
「CQLルール」タブをクリックします。
図6-32で示すように「CQLルール」タブが表示されます。
「問合せ」ラジオ・ボタンをクリックします。
「問合せの追加」をクリックします。
「問合せID」フィールドに問合せ名を入力します。
「問合せ」フィールドにOracle CQL問合せを入力します。
プレースホルダ文字(:
n
)を使用して、パラメータ化された値を指定します。
「有効化」オプションを構成します。
保存した後すぐに問合せを有効化するには、「true」をクリックします。
保存後も問合せの無効化を維持するには、「false」をクリックします。
「保存」をクリックします。
図6-15で示すように、確認ダイアログが表示されます。
「OK」をクリックします。
問合せは、現在使用中のコンピュータのローカル・ディスクに保存されます。問合せを再ロードするには、同一のローカル・ホストからOracle CEP Visualizerへアクセスする必要があります。
パラメータ化された問合せを編集し、6.1.4項「Oracle CQLプロセッサでパラメータ化された問合せを編集する方法」で説明されているように、パラメータ値を追加します。
問合せの作成後、アウトバウンド・チャネル(問合せを作成した元のOracle CQLプロセッサからのチャネル・ダウンストリーム)のセレクタを更新します。これは、既存のイベント・タイプでのみ機能します。
詳細は、4.2.1.2項「チャネル・プロパティ: アウトバウンド・チャネル」を参照してください。
既存のOracle CQLのパラメータ化された問合せのパラメータ値を編集できます。パラメータ値の新規リストの追加、パラメータ値の既存リストの変更、またはパラメータ値の既存リストの削除を行うことが可能です。
注意: プレースホルダ文字(: n )の追加や削除、および問合せウィザードを使用してOracle CQL問合せの編集はできません。 |
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』のパラメータ化された問合せに関する項
Oracle CQLプロセッサでパラメータ化された問合せを編集するには、次の手順を実行します。
左ペインで、アプリケーションのデプロイ先のOracle CEPインスタンスの「アプリケーション」ノードへ移動して展開します。
「appname」を選択します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサを選択します。
EPNダイアグラムを使用するには:
「イベント処理ネットワーク」タブをクリックします。
使用するOracle CQLプロセッサをダブルクリックします。
ドメイン・ツリーを使用するには:
「appname」>ステージノードを展開します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサをクリックします。
右ペインで、「一般」タブをクリックします。
図6-1で示すように、「プロセッサ」パネルが表示されます。
「CQLルール」タブをクリックします。
図6-32で示すように「CQLルール」タブが表示されます。
注意: パラメータ化された問合せでは、「問合せウィザード」ボタンを使用できません。 |
パラメータ化された問合せを選択します。
CQLルールを使用してパラメータ化された問合せを変更します。
パラメータ化された問合せにパラメータを追加するには、次の手順を実行します。
パラメータ化された問合せのパラメータを置換するには、次の手順を実行します。
パラメータ化された問合せのパラメータを削除するには、次の手順を実行します。
パラメータ化された問合せを編集するには、「問合せの編集」ボタンが使用可能になる前にすべての問合せパラメータをまず削除する必要があります。パラメータの削除の詳細は、6.1.4.3項「パラメータの削除」を参照してください。
パラメータ化された問合せを削除するには、「問合せの削除」ボタンが使用可能になる前にすべての問合せパラメータをまず削除する必要があります。詳細は、6.1.4.3項「パラメータの削除」を参照してください。
パラメータ化された問合せを停止または開始すると、パラメータ化された問合せに関連付けられたすべてのバインドが停止または開始されます。
パラメータ化された問合せを停止または開始するには、「CQLルール」タブの問合せを選択し、「停止」または「開始」ボタンをクリックします。
Oracle CQLプロセッサ内の既存のOracle CQLビューまたは問合せを削除したり、すべてのOracle CQLビューまたは問合せを削除できます。
Oracle CQLプロセッサでルールを削除するには:
左ペインで、アプリケーションのデプロイ先のOracle CEPインスタンスの「アプリケーション」ノードへ移動して展開します。
「appname」を選択します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサを選択します。
EPNダイアグラムを使用するには:
「イベント処理ネットワーク」タブをクリックします。
使用するOracle CQLプロセッサをダブルクリックします。
ドメイン・ツリーを使用するには:
「appname」>ステージノードを展開します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサをクリックします。
右ペインで、「一般」タブをクリックします。
図6-26で示すように、「プロセッサ」パネルが表示されます。
「CQLルール」タブをクリックします。
図6-32で示すように「CQLルール」タブが表示されます。
ルールのリストをフィルタし、削除するルールのタイプのみを表示します。
「ビュー」を選択し、ビュー・ルールのみを表示します。
「問合せ」を選択し、問合せビューのみを表示します。
注意: 「すべてのルール」を選択した場合、単一のルールを追加、削除、または変更できません。単一のルールを追加、削除、または変更するには、特定のビューまたは問合せを選択する必要があります。ビューまたは問合せのいずれかを変更するには、「ビュー」または「問合せ」を選択する必要があります。「すべてのルール」ページは読取り専用パネルです。また、「有効化」ラジオ・ボタンを使用すると、問合せを動的にオフにできます。 |
図6-28で示すように、「すべてのビューを削除」または「すべての問合せを削除」ボタンがアクティブになります。
削除するルールを決定します。
「OK」をクリックします。
Oracle CEP Visualizerを使用すると、Oracle CQL文を直接編集するか、問合せウィザードを使用するかのいずれかによって、既存のビューまたは問合せを置換できます。
Oracle CQLプロセッサでルールを置換するには:
左ペインで、アプリケーションのデプロイ先のOracle CEPインスタンスの「アプリケーション」ノードへ移動して展開します。
「appname」を選択します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサを選択します。
EPNダイアグラムを使用するには:
「イベント処理ネットワーク」タブをクリックします。
使用するOracle CQLプロセッサをダブルクリックします。
ドメイン・ツリーを使用するには:
「appname」>ステージノードを展開します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサをクリックします。
右ペインで、「一般」タブをクリックします。
図6-31で示すように、「プロセッサ」パネルが表示されます。
「CQLルール」タブをクリックします。
図6-32で示すように「CQLルール」タブが表示されます。
ルールのリストをフィルタし、置換するルールのタイプのみを表示します。
「ビュー」を選択し、ビュー・ルールのみを表示します。
「問合せ」を選択し、問合せビューのみを表示します。
置換するルールを選択します。
「ビュー」または「問合せ」フィールドは編集可能になり、図6-33で示すように「ルールの置換」ボタンがアクティブになります。
次のいずれかを実行して、Oracle CQL文を編集します。
「ビュー」または「問合せ」フィールドでOracle CQL文を直接編集します。
問合せウィザードでルールを編集するには、「問合せウィザード」ボタンをクリックします。
詳細は、6.1.2項「問合せウィザードを使用したOracle CQLプロセッサでルールを編集する方法」を参照してください。
変更を確定します。
「表示」または「問合せ」フィールドでOracle CQL文を直接編集した場合、ビューの置換または問合せの置換をクリックします。
問合せウィザードを使用してOracle CQL文を編集した場合、問合せウィザードで変更を確定します。
詳細は、6.1.2項「問合せウィザードを使用したOracle CQLプロセッサでルールを編集する方法」を参照してください。
Oracle CEP Visualizerを使用すると、Oracle CQLプロセッサで定義された既存ルールを表示できます。
Oracle CQLプロセッサでルールを表示するには:
左ペインで、アプリケーションのデプロイ先のOracle CEPインスタンスの「アプリケーション」ノードへ移動して展開します。
「appname」を選択します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサを選択します。
EPNダイアグラムを使用するには:
「イベント処理ネットワーク」タブをクリックします。
使用するOracle CQLプロセッサをダブルクリックします。
ドメイン・ツリーを使用するには:
「appname」>ステージノードを展開します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサをクリックします。
右ペインで、「一般」タブをクリックします。
図6-1で示すように、「プロセッサ」パネルが表示されます。
「CQLルール」タブをクリックします。
図6-32で示すように「CQLルール」タブが表示されます。
この項では、問合せウィザードが提供する各種のOracle CQLコンストラクトを構成する方法を説明しています。これには次の内容が含まれます。
RSource Oracle CQLコンストラクトは、Oracle CEPアプリケーションが提供するOracle CQLリレーションまたは作成するビューのリレーション・タイプを表します。ソースのストリーム・タイプSSourceを作成するには、6.1.9.2項「SSource CQLコンストラクトの構成」を参照してください。
詳細情報および詳しい構文は、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』のストリームおよびリレーションに関する項
『Oracle Complex Event Processing CQL言語リファレンス』の問合せ、ビュー、結合に関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
RSource CQLコンストラクトを構成するには:
図6-36で示すように、RSourceアイコンをダブルクリックします。
図6-37で示すように、RSourceエディタ・ダイアログが表示されます。
表6-1で説明されているように、ダイアログを編集します。
表6-1 問合せウィザードのRSourceエディタ属性
属性 | 説明 |
---|---|
|
ソースのタイプを選択します。
|
|
イベントのソースとして使用するリレーションまたはビューを選択します。 |
|
オプションでこのソースの別名を指定します。 |
|
このソースによって付与されたイベントのプロパティの読取り専用リスト。 |
|
このCQLコンストラクトに関連付けられた読取り専用Oracle CQLフラグメント。 |
「検証」ボタンをクリックし、変更が正しい構文であることを確認します。
次に進む前にエラーを修正します。
「保存」をクリックします。
RSourceアイコンには、構成済であることを示す緑のチェック・マークが表示されます。
SSource Oracle CQLコンストラクトは、Oracle CEPアプリケーションが提供するOracle CQLストリームまたは作成するビューのストリーム・タイプを表します。ソースのリレーション・タイプRSourceを作成するには、6.1.9.1項「RSource CQLコンストラクトの構成」を参照してください。
詳細情報および詳しい構文は、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』のストリームおよびリレーションに関する項
『Oracle Complex Event Processing CQL言語リファレンス』の問合せ、ビュー、結合に関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
SSource CQLコンストラクトを構成するには:
図6-36で示すように、SSourceアイコンをダブルクリックします。
図6-37で示すように、SSourceエディタ・ダイアログが表示されます。
表6-1で説明されているように、ダイアログを編集します。
表6-2 問合せウィザードのソース・エディタ属性
属性 | 説明 |
---|---|
|
ソースのタイプを選択します。
|
|
イベントのソースとして使用するストリームまたはビューを選択します。 |
|
オプションでこのソースの別名を指定します。 |
|
このソースによって付与されたイベントのプロパティの読取り専用リスト。 |
|
このCQLコンストラクトに関連付けられた読取り専用Oracle CQLフラグメント。 |
「検証」ボタンをクリックし、変更が正しい構文であることを確認します。
次に進む前にエラーを修正します。
「保存」をクリックします。
ソースアイコンには、構成済であることを示す緑のチェック・マークが表示されます。
Cache-Table CQLコンストラクトは、キャッシュまたはリレーショナル・データベース表が提供する通常は抽出データ・ソースの外部リレーションを表します。Cache-Table CQLコンストラクトで許可される操作は、「現在」
ウィンドウを使用して別のストリーム・ソースに結合する操作のみです。
詳細については、次を参照してください。
『Oracle Complex Event Processing管理者ガイド』のリレーショナル・データベースへのアクセスの構成に関する項
『Oracle Complex Event Processing開発者ガイドfor Eclipse』のOracle CQLプロセッサ表ソースの構成に関する項
『Oracle Complex Event Processing開発者ガイドfor Eclipse』のキャッシュの構成に関する項
『Oracle Complex Event Processing開発者ガイドfor Eclipse』のOracle CQLプロセッサ・キャッシュ・ソースの構成に関する項
『Oracle Complex Event Processingスタート・ガイド』のOracle Continuous Query Language (CQL)の例に関する項
Cache-Table CQLコンストラクトを構成するには:
Pattern Oracle CQLコンストラクトは、Oracle CQLのMATCH_RECOGNIZE
条件を表します。MATCH_RECOGNIZE
条件とは、複雑なイベント処理を実行するための主要な手段です。その様々な句を使用すると、ストリーム要素間の複雑な条件を簡潔に表し、データ・ストリームに最適化された高度な比較を実行できます。
Pattern Oracle CQLコンストラクト・エディタは、次のMATCH_RECOGNIZE
補助句のそれぞれに対してタブを提供します。
DEFINE
:この句を使用すると、1つ以上の条件を指定できます。パターン識別子、AS
演算子、および条件から構成される1つ以上のパターンを指定します。条件は、問合せまたはビューのSELECT文で使用した識別子によって指定されるストリーム、ビューまたはスライディング・ウィンドウのスキーマで任意のストリーム要素を使用できます。
図6-44 「問合せウィザードのパターン・エディタ・ダイアログ:「定義」タブ」を参照してください。
SUBSET
:この句を使用すると、1つ以上のパターンが選択するストリーム要素に名前をバインドできます。この名前のサブセットはMEASURE
およびDEFINE
句で使用できます。
MEASURE
:この句を使用すると、MATCH_RECOGNIZE
条件において式を定義し、DEFINE
句で条件に一致するストリーム要素を、問合せのSELECT文に含めることが可能な引数にバインドできます。任意のOracle CQLの組込み関数またはユーザー定義関数を使用できます。
詳細情報および詳しい構文は、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』のMATCH_RECOGNIZE
条件に関する項
『Oracle Complex Event Processing CQL言語リファレンス』のPATTERN
句に関する項
『Oracle Complex Event Processing CQL言語リファレンス』のDEFINE
句に関する項
『Oracle Complex Event Processing CQL言語リファレンス』のSUBSET
句に関する項
『Oracle Complex Event Processing CQL言語リファレンス』のMEASURES
句に関する項
『Oracle Complex Event Processing CQL言語リファレンス』の関数に関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
Pattern CQLコンストラクトを構成するには:
図6-42で示すように、「パターン」アイコンをダブルクリックします。
図6-43で示すように、「パターン」エディタ・ダイアログが表示されます。
表6-4で説明されているように、「パターン」タブを編集します。
表6-4 問合せウィザードのパターン・エディタ属性:「パターン」タブ
属性 | 説明 |
---|---|
|
この句を使用すると、 (A B* C) 表6-5は、Oracle CQLがサポートするパターン数量詞のリストを示しています。パターン数量詞を使用し、パターン一致が可能な範囲を指定します。1文字のパターン数量詞は最大または「最長照合を行う」で、最大の数量を最初に一致させるように試行します。2文字のパターン数量詞は最小または「最短照合を行う」で、最小の数量を最初に一致させるように試行します。 詳細は、『Oracle Complex Event Processing CQL言語リファレンス』の |
|
デフォルトでは、Oracle CEPはパターン一致を認識した時点で出力リレーションを更新します。期間の値を入力し、Oracle CEPがパターン一致を認識した時点と出力リレーションを更新した時点の間の遅延時間を指定します。次のいずれかを使用できます。
詳細は、『Oracle Complex Event Processing CQL言語リファレンス』の |
|
このオプション句を使用すると、 ストリーム要素をリストに従ってパーティションへ追加するには、プルダウン・メニューからストリーム要素を選択し、「追加」ボタンをクリックします。 ストリーム要素をリストに従ってパーティションから削除するには、「元に戻す」ボタンをクリックします。 詳細は、『Oracle Complex Event Processing CQL言語リファレンス』の |
|
<query id="detectPerish"><![CDATA[ select its.itemId as badItem from ItemTempStream MATCH_RECOGNIZE ( PARTITION BY ... MEASURES ... PATTERN ... DEFINE ... ) as its ]]></query> 詳細は、『Oracle Complex Event Processing CQL言語リファレンス』の |
|
このオプションを選択すると、重複するパターンに一致するようにOracle CEPを構成できます。 このオプションの選択を解除すると、1つのパターンのみに一致するようにOracle CEPを構成できます。 詳細は、『Oracle Complex Event Processing CQL言語リファレンス』の |
|
このCQLコンストラクトに関連付けられた編集可能なOracle CQLフラグメント。 |
詳細は、『Oracle Complex Event Processing CQL言語リファレンス』のPATTERN
句に関する項を参照してください。
「定義」タブをクリックします。
図6-44で示すように、「定義」タブが表示されます。
表6-5で説明されているように、「定義」タブを編集します。
表6-6 問合せウィザードのパターン・エディタ属性:「定義」タブ
属性 | 説明 |
---|---|
|
「パターン」タブの「パターン式」属性で指定したようにオブジェクト名を入力します(表6-4を参照してください)。たとえば、パターン式が次のような場合があります。 (A B* C) 次に |
|
「式ビルダー」ボタンをクリックして、式を定義します。 例: A AS (A.temp >= 25) B AS ((B.temp >= 25) and (B.element_time - A.element_time < INTERVAL "0 00:00:05:00" DAY TO SECOND)) C AS (C.element_time - A.element_time >= INTERVAL "0 00:00:05:00" DAY TO SECOND) 詳細は、6.1.9.17項「式ビルダーを使用した式の構成」を参照してください。 |
|
指定する定義のリスト。 定義をオブジェクト・リストへ追加するには、「追加」ボタンをクリックします。 定義をオブジェクト・リストから削除するには、「削除」ボタンをクリックします。 |
|
このCQLコンストラクトに関連付けられた読取り専用Oracle CQLフラグメント。 |
詳細は、『Oracle Complex Event Processing CQL言語リファレンス』のDEFINE
句に関する項を参照してください。
「サブセット」タブをクリックします。
図6-45で示すように、「サブセット」タブが表示されます。
表6-7で説明されているように、「サブセット」タブを編集します。
表6-7 問合せウィザードのパターン・エディタ属性:「サブセット」タブ
属性 | 説明 |
---|---|
|
サブセットの名前を入力します。 |
|
「パターン」タブの「パターン式」属性で指定したように、オブジェクト名のリストを入力します(表6-4を参照してください)。たとえば、次のパターンがあるとした場合: (A W+ X+ Y+ Z+) 次のようなサブセットを指定できます: S1 AS (Z) S2 AS (A) S3 AS (A,W,Y) |
|
指定するサブセットのリスト。 サブセットをサブセット・リストへ追加するには、「追加」ボタンをクリックします。 サブセットをサブセット・リストから削除するには、「削除」ボタンをクリックします。 |
|
このCQLコンストラクトに関連付けられた読取り専用Oracle CQLフラグメント。 |
詳細は、『Oracle Complex Event Processing CQL言語リファレンス』のSUBSET
句に関する項を参照してください。
「メジャー」タブをクリックします。
図6-46で示すように、「メジャー」タブが表示されます。
表6-8で説明されているように、「メジャー」タブを編集します。
表6-8 問合せウィザードのパターン・エディタ属性:「メジャー」タブ
属性 | 説明 |
---|---|
|
「パターン」タブの「パターン式」属性(表6-4を参照してください)または「サブセット」タブの「サブセット名」属性(図6-45を参照してください)で指定したように、オブジェクト名を入力します。 たとえば、パターン式が次のような場合があります。 (A B* C) 次に、任意の サブセットを定義する場合: S1 AS (Z) S2 AS (A) S3 AS (A,W,Y) この場合、任意の |
|
「式ビルダー」ボタンをクリックして、式を定義します。 例: sumDecrArm as sum(S3.c2) 詳細は、6.1.9.17項「式ビルダーを使用した式の構成」を参照してください。 |
|
指定するメジャーのリスト。 メジャーを「プロパティ」リストへ追加するには、「追加」ボタンをクリックします。 メジャーを「プロパティ」リストから削除するには、「削除」ボタンをクリックします。 |
|
このCQLコンストラクトに関連付けられた読取り専用Oracle CQLフラグメント。 |
詳細は、『Oracle Complex Event Processing CQL言語リファレンス』のMEASURES
句に関する項を参照してください。
「検証」ボタンをクリックし、変更が正しい構文であることを確認します。
次に進む前にエラーを修正します。
「保存」をクリックします。
「パターン」アイコンには、構成済であることを示す緑のチェック・マークが表示されます。
Select Oracle CQLコンストラクトは、Oracle CQLのSELECT
句を表します。WHERE
句の表現に関する詳細は、6.1.9.9項「Filter CQLコンストラクトの構成」を参照してください。
Select Oracle CQLコンストラクト・エディタは、次の補助句のそれぞれに対してタブを提供します。
select_clause
:この句を使用すると、指定するストリームまたはビューから選択するためのストリーム要素を指定できます。
opt_group_by_clause
:この句を使用すると、問合せが結果に適用するオプションのグループ化条件を指定できます。
図6-49「問合せウィザードの「選択」エディタ・ダイアログ:「グループ」タブ」を参照してください。
opt_having_clause
: この句を使用すると、返されたストリーム要素のグループを指定した条件
がTRUE
のグループへ制限します。この句を省略する場合、Oracle CEPはすべてのグループのサマリー結果を返します。
図6-50「問合せウィザードの「選択」エディタ・ダイアログ:「条件」タブ」を参照してください。
order_by_clause
:この句を使用すると、問合せが結果に適用するオプションの順序付け条件を指定できます。
図6-51「問合せウィザードの「選択」エディタ・ダイアログ:「順序」タブ」を参照してください。
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』のSelect、From、Whereブロックに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のselect_clauseに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のopt_group_by_clauseに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のopt_having_clauseに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のorder_by_clauseに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
Select CQLコンストラクトを構成するには:
図6-47で示すように、「選択」アイコンをダブルクリックします。
図6-48で示すように、「選択」エディタ・ダイアログが表示されます。
表6-9で説明されているように、「プロジェクト」タブを編集します。
通常の手順は次のとおりです。
「ソース」を選択します。
「ターゲット・イベント・タイプ」を選択します。
「プロパティ」リストのプロパティをダブルクリックし、プロパティを「プロジェクト式」フィールドへ追加します。
「式ビルダー」ボタンをクリックし、「プロジェクト式」を作成します。
「AS」フィールドで、プロジェクト式結果の別名を入力するか、いずれかの「ターゲット・イベント・タイプ」属性を選択します。
「追加」ボタンをクリックします。
プロジェクト式を削除するには、「プロジェクト」述語リストで選択して「削除」をクリックします。
オプションで、個別を選択します。
表6-9 問合せウィザードの選択エディタ属性:「プロジェクト」タブ
属性 | 説明 |
---|---|
|
Oracle CEPが選択された重複タプルの各セットのコピーを1つのみ戻すようにする場合は、このオプションを選択します。 Oracle CEPが重複を含めてすべての選択されたタプルを戻すようにする場合は、このオプションの選択を解除します。 重複タプルとは、選択リストの各式に一致する値を持つタプルです。Oracle CEPは、ネストされた集計はサポートしていません。 |
|
このOracle CQLプロセッサへ接続したダウンストリーム・チャネルによって期待されるイベント名を選択または入力します。 詳細は、『Oracle Complex Event Processing開発者ガイドfor Eclipse』のイベント・タイプに関する項を参照してください。 |
|
このプロジェクトCQLコンストラクトに接続したストリーム、リレーション、またはビューのソースCQLコンストラクトを選択します。 詳細は、6.1.9.1項「RSource CQLコンストラクトの構成」を参照してください。 |
|
このソースによって付与されたイベントのプロパティの読取り専用リスト。 詳細は、6.1.9.1項「RSource CQLコンストラクトの構成」を参照してください。 |
|
定義するプロジェクト式のリスト。 プロジェクト式を「プロジェクト述語」リストへ追加するには、「追加」ボタンをクリックします。 プロジェクト式を「プロジェクト述語」リストから削除するには、「プロジェクト述語」リストのプロジェクト式を選択し、「削除」ボタンをクリックします。 |
|
「式ビルダー」ボタンをクリックして、式を定義します。 例: LENGTH( FxQuoteStream.symbol < 100 ) 詳細は、6.1.9.17項「式ビルダーを使用した式の構成」を参照してください。 |
|
プロジェクト式結果の別名を入力するか、またはいずれかの「ターゲット・イベント・タイプ」属性を選択します。 |
|
このCQLコンストラクトに関連付けられた読取り専用Oracle CQLフラグメント。 |
詳細は、『Oracle Complex Event Processing CQL言語リファレンス』のselect_clauseに関する項を参照してください。
「グループ」タブをクリックします。
図6-48で示すように、「グループ」タブ・エディタ・ダイアログが表示されます。
表6-10で説明されているように、「グループ」タブを編集します。
通常の手順は次のとおりです。
プルダウン・メニューからソースを選択します。
「プロパティ」リストでプロパティを選択します。
選択したプロパティをグループ化プロパティのリストに追加するには、「追加」ボタンをクリックします。
プロパティを「グループ化プロパティ」リストから削除するには、「選択したグループ化プロパティ」リストのプロパティを選択し、「削除」ボタンをクリックします。
表6-10 「問合せウィザード」の選択エディタ属性:「グループ」タブ
属性 | 説明 |
---|---|
|
プルダウン・メニューからソースを選択します。 |
|
選択したソースによって付与されたイベントのプロパティ。 |
|
定義するグループ化プロパティのリスト。 選択したプロパティを「選択したグループ化プロパティ」リストへ追加するには、「追加」ボタンをクリックします。 プロパティを「グループ化プロパティ」リストから削除するには、「選択したグループ化プロパティ」リストのプロパティを選択し、「削除」ボタンをクリックします。 |
|
このCQLコンストラクトに関連付けられた編集可能なOracle CQLフラグメント。 |
詳細は、『Oracle Complex Event Processing CQL言語リファレンス』のopt_group_by_clauseに関する項を参照してください。
「条件」タブをクリックします。
図6-48で示すように、「条件」タブ・エディタ・ダイアログが表示されます。
表6-11で説明されているように、「条件」タブを編集します。
表6-11 問合せウィザードの「選択」エディタ属性:「条件」タブ
属性 | 説明 |
---|---|
条件設定の述語 |
条件設定の述語を直接入力するか、「式ビルダー」ボタンをクリックして式を定義します。 例: lastPrice > 500 詳細は、6.1.9.17項「式ビルダーを使用した式の構成」を参照してください。 条件式を生成されたCQL文へ追加するには、「追加」ボタンをクリックします。 条件式を生成されたCQL文から削除するには、「削除」ボタンをクリックします。 |
|
このCQLコンストラクトに関連付けられた編集可能なOracle CQLフラグメント。 |
詳細は、『Oracle Complex Event Processing CQL言語リファレンス』のopt_having_clauseに関する項を参照してください。
「順序」タブをクリックします。
図6-48で示すように、「順序」タブ・エディタ・ダイアログが表示されます。
表6-12で説明されているように、「順序」タブを編集します。
通常の手順は次のとおりです。
プルダウン・メニューからソースを選択します。
「プロパティ」リストでプロパティを選択します。
選択したプロパティを順序付けプロパティのリストに追加するには、「追加」ボタンをクリックします。
プロパティを「選択した順序付けプロパティ」リストから削除するには、「選択した順序付けプロパティ」リストのプロパティを選択し、「削除」ボタンをクリックします。
表6-12 問合せウィザードの「選択」エディタ属性:「順序」タブ
属性 | 説明 |
---|---|
|
プルダウン・メニューからソースを選択します。 |
|
選択したソースによって付与されたイベントのプロパティ。 |
|
定義する順序付けプロパティのリスト。 選択したプロパティを「選択した順序付けプロパティ」リストへ追加するには、「追加」ボタンをクリックします。 プロパティを「選択した順序付けプロパティ」リストから削除するには、「選択した順序付けプロパティ」リストのプロパティを選択し、「削除」ボタンをクリックします。 |
|
このCQLコンストラクトに関連付けられた編集可能なOracle CQLフラグメント。 |
詳細は、『Oracle Complex Event Processing CQL言語リファレンス』のorder_by_clauseに関する項を参照してください。
「検証」ボタンをクリックし、変更が正しい構文であることを確認します。
次に進む前にエラーを修正します。
「保存」をクリックします。
「選択」アイコンには、構成済であることを示す緑のチェック・マークが表示されます。
Join Oracle CQLコンストラクトは、2つ以上のソース間のOracle CQLの結合を表します。+
構文(非推奨)を使用して内部結合および左右の外部結合を作成できます。
注意: Oracle CQLルールがLEFT またはRIGHT OUTER JOIN 句を使用する場合、6.1.9.7項「LEFTまたはRIGHT OUTER JOINを使用したJoin CQLコンストラクトの構成」を参照してください。 |
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』の結合に関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
Join CQLコンストラクトを構成するには:
図6-52で示すように、「結合」アイコンをダブルクリックします。
図6-53で示すように、「結合」エディタ・ダイアログが表示されます。
表6-13で説明されているように、ダイアログを編集します。
表6-13 「問合せウィザード」の「結合」エディタ属性
属性 | 説明 |
---|---|
|
結合する1つ目のソースを選択します。 |
|
ソース1のプロパティの読取り専用リスト。 |
|
結合する2つ目のソースを選択します。 |
|
ソース2のプロパティの読取り専用リスト。 |
|
結合のタイプを選択します。
|
|
次のいずれかの手順を実行して、結合の述語を作成します。
|
|
このCQLコンストラクトに関連付けられた編集可能なOracle CQLフラグメント。 |
「ソース1」プルダウン・メニューからソースを選択します。
「ソース2」プルダウン・メニューからソースを選択します。
結合する「ソース1」の「プロパティ」リストでプロパティを選択します。
結合する「ソース2」の「プロパティ」リストでプロパティを選択します。
「結合タイプ」を選択します。
次のいずれかの手順を実行して、結合の述語を作成します。
プラス記号ボタンをクリックし、選択する「ソース1」および「ソース2」プロパティを使用して結合の述語を作成します。
「式ビルダー」ボタンをクリックし、任意の「ソース1」および「ソース2」プロパティおよびOracle CQLの関数や演算子を使用して結合の述語を作成します。
結合の述語を生成されたCQL文へ追加するには、「結合の追加」ボタンをクリックします。
結合の述語を生成されたCQL文から削除するには、「結合を元に戻す」ボタンをクリックします。
「検証」ボタンをクリックし、変更が正しい構文であることを確認します。
次に進む前にエラーを修正します。
「保存」をクリックします。
「結合」アイコンには、構成済であることを示す緑のチェック・マークが表示されます。
Join Oracle CQLコンストラクトは、2つ以上のソース間のOracle CQLの結合を表します。LEFT
またはRIGHT OUTER
の結合構文を使用して、Oracle CQLルールの構成を表示できます。
図6-54は、問合せのコンストラクタで例として使用するOracle CQL外部結合を示します。
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』の結合に関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
LEFTまたはRIGHT OUTER JOINを使用してJoin CQLコンストラクトを構成するには:
図6-55で示すように、「結合」アイコンをダブルクリックします。
図6-56で示すように、「結合」エディタ・ダイアログが表示されます。
図6-56 「問合せウィザード」の「結合」エディタ・ダイアログ: LEFTまたはRIGHT OUTER JOIN構文
Window Oracle CQLコンストラクトは、Oracle CQLのstream-to-relation演算子を表します。
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』のStream-to-Relation演算子(Windows)に関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
Window CQLコンストラクトを構成するには:
図6-57で示すように、「ウィンドウ」アイコンをダブルクリックします。
図6-58で示すように、「ウィンドウ」エディタ・ダイアログが表示されます。
表6-14で説明されているように、ダイアログを編集します。
表6-14 「問合せウィザード」の「ウィンドウ」エディタ属性
属性 | 説明 |
---|---|
|
パーティション化されたウィンドウを作成する場合は、1つ以上のストリーム要素を選択し、「パーティション」リストへ追加します。 ストリーム要素をパーティション・リストから削除するには、クリックしてドラッグし、パーティション・リストの値を選択してキーボードの[Delete]キーを押します。 |
|
作成するウィンドウのタイプ。 「即時」: このオプションを選択すると、出力リレーションを定義する時間ベースの範囲ウィンドウを作成できます。たとえば、 「時間」: このオプションを選択すると、順序付けられたストリームの最新部分を取得するサイズ 「行」: このオプションを選択すると、順序付けられたストリームの最後の 「パーティション」:このオプションを選択すると、次のパーティション化されたウィンドウのいずれかを作成できます。
「パーティション」タイプは、1つ以上のストリーム要素をパーティション・リストへ追加しない場合は非アクティブのままになります。オプションで、「スライド」属性を使用してこのウィンドウの時間ベースのスライドを指定します。 無制限: このオプションを選択すると、出力リレーションを定義する時間ベースの範囲ウィンドウを作成できます。たとえば、 |
|
スライディング・ウィンドウを指定します。 「行ベース」:このオプションを選択すると、行ベースのスライディング・ウィンドウのいずれかを作成できます。
「時間ベース」:このオプションを選択すると、時間ベースのスライディング・ウィンドウのいずれかを作成できます。
|
|
このCQLコンストラクトに関連付けられた編集可能なOracle CQLフラグメント。 |
パーティション化されたウィンドウが必要な場合、パーティション・リストで必要なストリーム要素を選択します。
ストリーム要素をパーティション・リストから削除するには、クリックしてドラッグし、パーティション・リストの値を選択してキーボードの[Delete]キーを押します。
「タイプ」を選択します。
「パーティション」タイプは、1つ以上のストリーム要素をパーティション・リストへ追加しない場合は非アクティブのままになります。
選択したタイプには「行ベース」または「時間ベース」を選択します。
ウィンドウのサイズを入力します。
「行ベース」タイプの場合、行数(タプルまたはストリーム要素)を入力します。
「時間ベース」タイプの場合は、時間単位数を入力して時間単位を選択します。
「スライド」を選択します。
「行ベース」タイプの場合、行数(タプルまたはストリーム要素)を入力します。
「時間ベース」タイプの場合は、時間単位数を入力して時間単位を選択します。
「検証」ボタンをクリックし、変更が正しい構文であることを確認します。
次に進む前にエラーを修正します。
ウィンドウを生成されたCQL文へ追加するには、「ウィンドウの追加」ボタンをクリックします。
「保存」をクリックします。
「ウィンドウ」アイコンには、構成済であることを示す緑のチェック・マークが表示されます。
Filter Oracle CQLコンストラクトは、Oracle CQLのWHERE
句を表します。SELECT
およびFROM
句の表現に関する詳細は、6.1.9.5項「Select CQLコンストラクトの構成」を参照してください。
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』のopt_where_clauseに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
Filter CQLコンストラクトを構成するには:
図6-59で示すように、「フィルタ」アイコンをダブルクリックします。
図6-60で示すように、「フィルタ」エディタ・ダイアログが表示されます。
表6-15で説明されているように、ダイアログを編集します。
表6-15 「問合せウィザード」の「フィルタ」エディタ属性
属性 | 説明 |
---|---|
|
フィルタの述語を直接入力するか、「式ビルダー」ボタンをクリックして式を定義します。 例: SUM( FxQuoteStream.lastPrice < 5000 ) 詳細は、6.1.9.17項「式ビルダーを使用した式の構成」を参照してください。 フィルタの述語を生成されたCQL文へ追加するには、「フィルタの追加」ボタンをクリックします。 フィルタの述語を生成されたCQL文から削除するには、「フィルタの削除」ボタンをクリックします。 |
|
このCQLコンストラクトに関連付けられた編集可能なOracle CQLフラグメント。 |
次のいずれかの手順を実行してフィルタの述語を定義します。
フィルタの述語を直接入力します。
「式ビルダー」ボタンをクリックします。
詳細は、6.1.9.17項「式ビルダーを使用した式の構成」を参照してください。
条件式を生成されたCQL文へ追加するには、「フィルタの追加」ボタンをクリックします。
条件式を生成されたCQL文から削除するには、「フィルタの削除」ボタンをクリックします。
「検証」ボタンをクリックし、変更が正しい構文であることを確認します。
次に進む前にエラーを修正します。
「保存」をクリックします。
ソースアイコンには、構成済であることを示す緑のチェック・マークが表示されます。
Union Oracle CQLコンストラクトは、Oracle CQLのUNION
またはUNION ALL
句を表します。2つのリレーション間の論理和を実行できます。リレーションはビューまたはチャネルから発行されます。2つのリレーション間または2つのストリーム間の論理和を実行できます。リレーションとストリーム間の論理和は実行できません。
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』のbinaryに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のBINARYの例: UNIONおよびUNION ALLに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
Union CQLコンストラクトを構成するには:
図6-61で示すように、「論理和」アイコンをダブルクリックします。
図6-62で示すように、「論理和」エディタ・ダイアログが表示されます。
表6-16で説明されているように、ダイアログを編集します。
表6-16 「問合せウィザード」の「論理和」エディタ属性
属性 | 説明 |
---|---|
|
論理和を実行する1つ目のソースを選択します。 |
|
ソース1のプロパティの読取り専用リスト。 |
|
論理和を実行する2つ目のソースを選択します。 |
|
ソース2のプロパティの読取り専用リスト。 |
|
論理和のタイプを選択します。
詳細は、『Oracle Complex Event Processing CQL言語リファレンス』のBINARYの例: UNIONおよびUNION ALLに関する項を参照してください。 |
|
このCQLコンストラクトに関連付けられた編集可能なOracle CQLフラグメント。 |
「ソース1」プルダウン・メニューからソースを選択します。
「ソース2」プルダウン・メニューからソースを選択します。
「論理和タイプ」を選択します。
論理和の句を生成されたCQL文へ追加するには、「論理和の追加」ボタンをクリックします。
論理和の句を生成されたCQL文から削除するには、「論理和を元に戻す」ボタンをクリックします。
「検証」ボタンをクリックし、変更が正しい構文であることを確認します。
次に進む前にエラーを修正します。
「保存」をクリックします。
「論理和」アイコンには、構成済であることを示す緑のチェック・マークが表示されます。
Intersect Oracle CQLコンストラクトは、Oracle CQLのINTERSECT
句を表します。2つのリレーション間の積集合を実行します。リレーションとストリーム間または2つのストリーム間の積集合は実行できません。
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』のbinaryに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のBINARYの例: INTERSECTに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
Intersect CQLコンストラクトを構成するには:
Minus Oracle CQLコンストラクトは、Oracle CQLのMINUS
句を表します。2つのリレーション間の論理差を実行します。リレーションとストリーム間または2つのストリーム間の論理差は実行できません。
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』のbinaryに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のBINARYの例: MINUSに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
Minus CQLコンストラクトを構成するには:
IStream Oracle CQLコンストラクトは、Oracle CQL IStreamのrelation-to-stream演算子を表します。リレーションR
へ適用されるIstream
(「ストリームの挿入」の略)には、タプルs
がR(t) - R(t-1)
の中にある場合、つまりs
がt
の時点でR
へ挿入される場合は常に(s,t)
が含まれます。タプルが同一のタイムスタンプを持ったまま挿入されて削除された場合は、IStream
は挿入を出力しません。
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』のIStream Relation-to-Stream演算子に関する項
『Oracle Complex Event Processing CQL言語リファレンス』のストリームおよびリレーションに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
IStream CQLコンストラクトを構成するには:
DStream Oracle CQLコンストラクトは、Oracle CQL DStreamのrelation-to-stream演算子を表します。リレーションR
へ適用されるDStream
(「ストリームの削除」の略)には、タプルs
がR(t-1) - R(t)
の中にある場合、つまりs
がt
の時点でR
から削除される場合は常に(s,t)
が含まれます。
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』のDStream Relation-to-Stream演算子に関する項
『Oracle Complex Event Processing CQL言語リファレンス』のストリームおよびリレーションに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
DStream CQLコンストラクトを構成するには:
RStream Oracle CQLコンストラクトは、Oracle CQL RStreamのrelation-to-stream演算子を表します。RStream
演算子は、入力リレーションの現在の状態全体を保持し、各タイム・ステップにおける挿入に従ってタプルすべてを出力します。Rstream
はリレーションの状態全体を各瞬間ごとに出力するため、リレーション・セットがあまり小さくない場合、コストが大きくなる可能性があります。
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』のRStream Relation-to-Stream演算子に関する項
『Oracle Complex Event Processing CQL言語リファレンス』のストリームおよびリレーションに関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
RStream CQLコンストラクトを構成するには:
Output Oracle CQLコンストラクトは、完全なOracle CQLの問合せまたはビューを表します。Output CQLコンストラクトを使用すると、次の操作を実行できます。
完全なOracle CQL文を見直して編集します。
Oracle CQL文のコピーを作成し、それを別名でOracle CQLプロセッサへインジェクトします。この方法は、共通の構造体を共有する複数の文を作成する必要があるときに、既存の文を複製および変更するのに便利です。
ビューと問合せの間で変換します。
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』の問合せ、ビュー、結合に関する項
『Oracle Complex Event Processing CQL言語リファレンス』のOracle CQL文に関する項
Output CQLコンストラクトを構成するには:
図6-73で示すように、「出力」アイコンをダブルクリックします。
図6-74で示すように、「出力」エディタ・ダイアログが表示されます。
表6-22で説明されているように、ダイアログを編集します。
表6-22 「問合せウィザード」の「出力」エディタ属性
属性 | 説明 |
---|---|
|
ルールの種類は次のとおりです。
詳細は、『Oracle Complex Event Processing CQL言語リファレンス』の問合せ、ビュー、および結合に関する項を参照してください。 |
|
問合せの名前。 |
|
このオプションを「True」に設定すると、保存した直後にルールを実行します。 このオプションを「False」に設定すると、保存した後にルールを実行しません。 ビューは有効化/無効化できません。ビューを使用する問合せが有効化されている場合、ビューも有効化されます。ビューを使用する問合せが無効化されている場合、ビューは効果的に無効化されます。 |
|
ビューの名前。 |
|
生成されたCQL文を編集して |
|
|
|
このCQLコンストラクトに関連付けられた編集可能なOracle CQLフラグメント。 |
Oracle CQLルール全体の新規インスタンスをOracle CQLプロセッサへインジェクトするには:
新規ルールを作成する場合、「ルールのインジェクト」をクリックします。
Oracle CQLルールの新規インスタンスがOracleルールタブに表示されます。
既存ルールを変更する場合は、次の手順を実行します。
「問合せ名」または「ビュー名」フィールド内をクリックし、問合せ名またはビュー名を変更します。
「ルールのインジェクト」をクリックします。
Oracle CQLルールの新規インスタンスが、新しい名前でOracleルールタブに表示されます。
Oracle CQLプロセッサのOracle CQLルール全体の既存インスタンスを置換するには、「ルールの置換」をクリックします。
Oracle CQLルールの既存インスタンスが、既存の名前のままOracleルールタブで更新されます。
「検証」ボタンをクリックし、変更が正しい構文であることを確認します。
次に進む前にエラーを修正します。
「保存」をクリックします。
「出力」アイコンには、構成済であることを示す緑のチェック・マークが表示されます。
問合せウィザードの式ビルダーを使用すると、各種のOracle CQL演算子、式、組込み型の単一行および集計関数、およびユーザー定義関数を使用して、式を構築できます。
詳細については、次を参照してください。
『Oracle Complex Event Processing CQL言語リファレンス』の算術演算子に関する項
『Oracle Complex Event Processing CQL言語リファレンス』の連結演算子に関する項
『Oracle Complex Event Processing CQL言語リファレンス』の式に関する項
『Oracle Complex Event Processing CQL言語リファレンス』の関数に関する項
式ビルダーを使用して式を構成するには:
CQLコンストラクト・エディタ・ダイアログ上の「式ビルダー」ボタンをクリックします。
「式ビルダー」ダイアログが表示されます。6-75は、「パターン」コンストラクト・エディタで「式ビルダー」ボタンをクリックした後の「式ビルダー」を示します。
表6-22で説明されているように、ダイアログを編集します。
表6-23 「問合せウィザード」の「式ビルダー」属性
属性 | 説明 |
---|---|
|
式を含む編集可能なフィールド。 |
|
「変数」プルダウン・メニューからソースを選択し、「プロパティ」リストで提供されるプロパティのリストを示しています。 プロパティをダブルクリックして選択し、現在の挿入ポイントで「式ビルダー」へ追加します。 |
|
「関数」プルダウン・メニューから関数カテゴリを選択し、「関数」リストで提供される関数のリストを示します。 関数を選択し、「関数の説明」フィールドでその構文を確認します。 関数をダブルクリックして選択し、現在の挿入ポイントで「式ビルダー」へ追加します。 |
|
「オペランド」をダブルクリックして選択し、現在の挿入ポイントで「式ビルダー」へ追加します。 |
|
現在選択されている関数の構文を表示する読取り専用フィールド。 |
「変数」プルダウン・メニューからソースを選択します。
「関数」プルダウン・メニューから関数カテゴリを選択します。
関数をダブルクリックして選択し、それを「式ビルダー」へ追加します。
プロパティをダブルクリックして選択し、それを関数の引数にします。
マウスを使用して、関数の閉じカッコの後に挿入バーを置きます。
「オペランド」をダブルクリックして選択し、それを「式ビルダー」へ追加します。
別のプロパティをダブルクリックするか、「式ビルダー」にリテラル値を入力します。
操作を元に戻すには、「元に戻す」ボタンをクリックします。
操作をやり直すには、「やり直し」ボタンをクリックします。
「式ビルダー」をクリアするには、消去ボタンをクリックします。
「保存」をクリックして式を保存し、CQLコンストラクト・エディタ・ダイアログに戻ります。
Oracle CEP Visualizerは、Oracle CQLビューおよび問合せの構成を簡素化するための高度な問合せウィザードを提供します。完全なOracle CQLビューまたは問合せテンプレートをドラッグ・アンド・ドロップし、必要に応じてカスタマイズできます。この手順では、独自のテンプレートを作成して問合せウィザードの「テンプレート」パレットへ追加する方法を説明します。
Oracle CQLテンプレートは、付録A「Oracle CQL問合せウィザードのテンプレート・スキーマ・リファレンス」のwlevs_queryconstructor_config.xsd
に基づいています。ただし、ユーザー定義テンプレートには次のみが含まれる場合があります。
select-block
from-block
where-block
Operator
要素および属性ID
およびtype
Operator
要素のinputs
子要素
テンプレートを使用したOracle CQLルールの作成に関する詳細は、6.1.1項「問合せウィザードを使用したOracle CQLプロセッサでルールを作成する方法」を参照してください。
問合せウィザード用Oracle CQLテンプレートを作成するには:
お気に入りのエディタを使用してXMLファイルを作成し、例6-1で示すようにヘッダーを追加します。
例6-2で示すように、Rule
要素を作成します。
例6-3で示すように、Operator
要素をテンプレートへ追加します。
一意のID
を持つそれぞれのOperator
を構成して、type
属性を指定します。
ルールのルート(または終了ポイント)である演算子のID
を持つRule
要素のroot
属性を構成します。例6-3では、10というID
を持つOutput
タイプのOperator
がルールのルートです。
例6-3 Rule要素: 演算子
<?xml version="1.0" encoding="UTF-8"?> <Rule root="10"> <select-block> <Operator ID="10" type="Output"> </Operator> <Operator ID="9" type="IStream"> </Operator> <Operator ID="7" type="Select"> </Operator> </select-block> <from-block> <Operator ID="1" type="SSource"> </Operator> <Operator ID="2" type="Window"> </Operator> <Operator ID="3" type="SSource"> </Operator> <Operator ID="4" type="Window"> </Operator> </from-block> <where-block> <Operator ID="5" type="Join"> </Operator> </where-block> </Rule>
例6-4で示すように、inputs
要素を追加して演算子を相互に接続します。
例6-4 Rule要素: 演算子の接続
<?xml version="1.0" encoding="UTF-8"?> <Rule root="9"> <select-block> <Operator ID="10" type="Output"> <inputs> <input>9</input> </inputs> </Operator> <Operator ID="9" type="IStream"> <inputs> <input>8</input> </inputs> </Operator> <Operator ID="7" type="Select"> <inputs> <input>5</input> </inputs> </Operator> </select-block> <from-block> <Operator ID="1" type="SSource"> </Operator> <Operator ID="2" type="Window"> <inputs> <input>1</input> </inputs> </Operator> <Operator ID="3" type="SSource"> </Operator> <Operator ID="4" type="Window"> <inputs> <input>3</input> </inputs> </Operator> </from-block> <where-block> <Operator ID="5" type="Join"> <inputs> <input>2</input> <input>4</input> </inputs> </Operator> </where-block> </Rule>
テンプレートXMLファイルを保存して閉じます。
注意: テンプレートXMLファイルにダブルバイト文字を入力する場合、必ずUTF-8エンコーディング方式でファイルを保存します。詳細は、1.5.1項「構成ファイルのエンコーディング: UTF-8」を参照してください。 |
テンプレートXMLファイルを、Oracle CEPサーバーのORACLE_CEP_HOME
/user_projects/domains/
DOMAIN_DIR
/
servername
/cqltemplate
ディレクトリにコピーします。ここで、ORACLE_CEP_HOME
は、d:\oracle_cep
などのOracle CEPインストール・ディレクトリを示し、DOMAIN_DIR
はドメイン・ディレクトリ名を示し、servername
はサーバー名を示します。例: d:\oracle_cep_home\user_projects\domains\mydomain\myserver1\cqltemplate
テンプレートXMLファイル名をORACLE_CEP_HOME
/user_projects/domains/
DOMAIN_DIR
/
servername
/cqltemplate
/registry.xml
ファイルへ追加します。
例6-5は、テンプレートXMLファイルexample.xml
を登録する方法を示します。
例6-5 Oracle CEP registry.xmlファイル
<?xml version="1.0" encoding="UTF-8"?> <templates> <template> <name>example</name> <filename>example.xml</filename> <description>This is an example user-defined cql statement</description> </template> </templates>
template
要素のname
子要素は、「問合せウィザード」がこのテンプレートの「ユーザー定義テンプレート」タブに表示するタイトルを決定します。
Oracle CEP Visualizerを終了し、再度ログインします。
詳細は、2.1項「Oracle CEP Visualizerの起動」を参照してください。
Oracle CQL問合せウィザードを開き、図6-76で示すように、テンプレートを「ユーザー定義テンプレート」タブで検索します。
詳細は、6.1.1項「問合せウィザードを使用したOracle CQLプロセッサでルールを作成する方法」を参照してください。
この項では、図6-77で示すように、問合せウィザード・キャンバスの上部にある各種ツールを説明します。
これらのツールを使用すると、Oracle CQL文の「問合せウィザード」ダイアグラムを管理できます。
「レイアウトの選択」プルダウン・メニューを使用して、CQLコンストラクトの配布およびその依存度の表示に関する代替方法を選択します。次のいずれかを選択できます。
左-右
下部-上部
右-左
上部-下部
「ホバー」オプションを選択すると、マウス・ポインタをステージの上に重ねたときに所定のステージに関連付けられたOracle CQL文のフラグメントを表示できます。
「ホバー」オプションの選択を解除すると、この機能が無効になります。
「ズーム・イン」および「ズーム・アウト」ボタンをクリックすると、ズーム・レベルを変更できます。これは、「ズーム」スライダを使用した操作のかわりになります(6.1.11.9項「ズーム」を参照してください)。
「ズーム」スライダを使用して、ズーム・レベルを拡大/縮小できます。これは、「ズーム・イン」および「ズーム・アウト」ボタンを使用した操作のかわりになります(6.1.11.6項「ズーム・インおよびズーム・アウト」を参照してください)。
Oracle CEP Visualizerは、Oracle CQL問合せの最適化を簡素化するための高度な問合せ計画ファシリティを提供します。
問合せ計画ファシリティを使用して、任意のOracle CQLプロセッサを内部の演算子、状態、およびシノプシスに分解し、受信/送信メッセージ数など、演算子に関する各種統計を収集できます。問合せ計画ファシリティは、Oracle CQLプロセッサごとに1つの問合せを生成し、そのOracle CQLで定義するすべての問合せおよびビューに適用します。
Oracle CQL問合せ計画ファシリティは、システム管理者がOracle CQL問合せのパフォーマンスを効果的に診断して最適化できるように設計されています。
この節では、以下のトピックについて説明します。
注意: Oracle CEP Visualizerが問合せ計画を生成する前に、Oracle CQLプロセッサ上で実行中のOracle CQL問合せ(Running属性がtrue に設定)が1つ以上ある必要があります。詳細は、6.1.8項「Oracle CQLプロセッサでルールを表示する方法」を参照してください。 |
Oracle CEP Visualizerを使用してOracle CQLプロセッサの問合せ計画を表示できます。
Oracle CQLプロセッサの問合せ計画を表示するには:
左ペインで、アプリケーションのデプロイ先のOracle CEPインスタンスの「アプリケーション」ノードへ移動して展開します。
「appname」を選択します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサを選択します。
EPNダイアグラムを使用するには:
「イベント処理ネットワーク」タブをクリックします。
使用するOracle CQLプロセッサをダブルクリックします。
ドメイン・ツリーを使用するには:
「appname」>ステージノードを展開します。ここで、「appname」は、使用するアプリケーション名です。
使用するOracle CQLプロセッサをクリックします。
右ペインで、「一般」タブをクリックします。
図6-1で示すように、「プロセッサ」パネルが表示されます。
「問合せ計画」タブをクリックします。
図6-79で示すように、「問合せ計画」タブが表示されます。
問合せ計画キャンバスの上部にある各種ツールの詳細は、6.2.2項「問合せ計画ダイアグラムの管理」を参照してください。
任意のステージの「プロパティ」表のプロパティおよび値を表示するには、次のいずれかを実行します。
右側の問合せ計画ダイアグラムの「ステージ」アイコンをクリックします。
左側の「データ」表の対応する行も選択されます。
左側の「データ」表にある、ステージに対応する行をクリックします。
「問合せ計画」ダイアグラムの対応するステージ・アイコンも選択されます。
問合せ計画を構成するには、「問合せ計画プリファレンス」ボタンをクリックします。
図6-80で示すように、「問合せ計画プリファレンス」ダイアログが表示されます。
表6-24で説明されているように、ダイアログを編集します。
表6-24 「問合せ計画プリファレンス」属性
属性 | 説明 |
---|---|
|
このオプションを選択すると、Oracle CEPは「問合せ計画」ダイアグラムでストアおよび状態を表示できるようになります。 |
|
「問合せ計画」タブ上の「データ」表の表示する統計を選択します。 表に表示される統計を構成するには、次を選択します。
グラフに表示される統計を構成するには、次を選択します。
注意: 「しきい値」の値はここで選択する統計に適用されます。 |
|
「グラフに表示される演算子の統計フィールド」の統計の最大値。このしきい値を超えるステージでは、値は「アラートの色」で指定する色で問合せ計画ダイアグラム上で表示されます。 デフォルト: 500 |
|
問合せ計画表示のしきい値に違反するステージをハイライトするために使用される色を選択します。 色を付けて違反を表示しない場合は、アラートの色に白を選択します。 デフォルト: 赤 |
|
Oracle CEPが統計を収集する頻度を指定します(秒)。 デフォルト: 5 |
統計の収集を開始するには、「統計の取得」ボタンをクリックします。
「統計の取得」ボタンが「統計の停止」ボタンに変わります。
図6-81で示すように、「データ」表の列には、現在の統計が(表プリファレンス構成の「表示される演算子の統計」フィールドに従って)表示され、しきい値の違反は(グラフおよびしきい値プリファレンス構成の「表示される演算子の統計」フィールドに従って)問合せ計画ダイアグラムに赤色で表示されます。
統計の収集を停止するには、「統計の停止」ボタンをクリックします。
割合判定ステップを決定するためにステージへドリルダウンするには、次のいずれかを実行します。
しきい値の違反を示す、右側の問合せ計画ダイアグラムのステージ・アイコンをクリックします。
左側の「データ」表の対応する行も選択されます。
左側の「データ」表にある、ステージに対応する行をクリックします。
「問合せ計画」ダイアグラムの対応するステージ・アイコンも選択されます。
ステージ間の依存関係を表示するには、「データ」表の「出力」行をクリックします。
すべての依存性ステージは、図6-82で示すように、問合せ計画ダイアグラムで選択されます。
この項では、図6-83で示すように、問合せウィザード・キャンバスの最上位に表示される各種ツールを説明します。
これらのツールを使用すると、Oracle CQL文の「問合せウィザード」ダイアグラムを管理できます。
「レイアウトの選択」プルダウン・メニューを使用して、CQLコンストラクトの配布およびその依存度の表示に関する代替方法を選択します。次のいずれかを選択できます。
左-右
下部-上部
右-左
上部-下部
Oracle CEPに命令して問合せ計画のステージの統計を収集し始めるには、「統計の取得」ボタンを使用します。
「統計の取得」ボタンをクリックすると、「統計の停止」ボタンに変わります。「統計の停止」ボタンをクリックすると、統計の収集を停止できます。