4 コンポーネント構成スキーマ
この章では、Oracle/Middleware/my_osa/osa/wlevs_application_config.xsd
スキーマに含まれる要素のリファレンスを示します。このスキーマは、Oracle Stream Analyticsアプリケーションのコンポーネント(アダプタ、チャネル、キャッシング・システム、イベントBeanなど)を構成するために使用するXMLファイルの背後にあります。
この章の内容は次のとおりです。
4.1 accept-backlog
この要素を使用すると、ソケット上で許可される待機中の接続の最大数を定義できます。この要素はnetio要素内でのみ適用できます。この要素には、子要素も属性もありません。
次の例は、コンポーネント構成ファイル内のaccept-backlog
要素の使用方法を示します。
<netio> <provider-name>providerCache</provider-name> <num-threads>1000</num-threads> <accept-backlog>50</accept-backlog> </netio>
4.2 active
active要素を使用すると、イベント・トレースのオンとオフを切り替えることができます。true
の場合、イベント・トレースはオンです。false
の場合、イベント・トレースはオフです。active
要素の値がfalse
に設定されている場合、channel-name
値は無視されます。この要素には、子要素も属性もありません。
次の例はイベント・トレース用のプロセッサを構成する方法を示します。trace-parameters
要素のactive
子要素はトレースをオンにすることを指定し、channel-name
要素はトレースされる要素の送信先のHTTPパブリッシュ・サブスクライブ(HTTP pub-sub)チャネルを指定します。
<processor> <name>FindCrossRates</name> <trace-parameters> <active>true</active> <channel-name>/NonClusteredServer/fx/FindCrossRates/output</channel-name> </trace-parameters> <rules> <!-- Query rules omitted. --> </rules> </processor>
4.3 adapter
この要素を使用すると、カスタム・アダプタ・コンポーネントを定義できます。この要素には、次の子要素があり、属性はありません。
次の特殊なadapter要素も参照してください。http-pub-sub-adapter、jms-adapter、edn-adapter、csv-adapter、obr-adapter、またはrmi-adapterの各要素。
次の例はコンポーネント構成ファイル内のadapter
要素の使用方法を示します。この例では、adapterの一意の識別子はtrackdata
です。
<adapter> <name>trackdata</name> <symbols> <symbol>BEAS</symbol> <symbol>IBM</symbol> </symbols> </adapter>
adapter
コンポーネント構成要素は、次の子要素をサポートしており、属性はありません。
4.4 amount
この要素を使用すると、診断プロファイルの期間を定義できます。amount
要素には、子要素も属性もありません。
この要素は、次のいずれかの要素とともに使用できます。
次の例は、コンポーネント構成ファイル内のamount
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <max-latency> <collect-interval> <amount>1000</amount> <unit>s</unit> </collect-interval> <name>testProfile0MaxLat</name> <start-location> <application>diagnostic</application> <stage>MetricSubscriber</stage> <direction>INBOUND</direction> </start-location> <end-location> <application>diagnostic</application> <stage>MonitorProcessor</stage> <direction>OUTBOUND</direction> </end-location> </max-latency> </profile> </diagnostic-profiles>
4.5 append
append
要素をCSVアウトバウンド・アダプタとともに使用すると、イベント・データを出力CSVファイルに追加するかどうかを指定できます(存在する場合)。true
の場合、Oracle Stream Analyticsは既存のCSV出力ファイルにデータを追加します。false
の場合、Oracle Stream Analyticsは新しいCSVファイルを作成するか、同じ名前の既存のCSVファイルを上書きします。この要素には、子要素も属性もありません。
次の例はStockTradeCSVOutboundAdapter
のアセンブリ・ファイル・エントリを示します。append
要素の値はfalse
です。
<wlevs:adapter id="StockTradeCSVOutboundAdapter" provider="csv-outbound"> <wlevs:instance-property name="eventType" value="TradeEvent"/> <wlevs:instance-property name="outputFile" value="/scratch/mpawlan/oep9-19/oep/utils/load-generator/StockData.csv"/> <wlevs:instance-property name="append" value="false"/> </wlevs:adapter>
4.6 application
この要素を使用して、Oracle Stream Analyticsサーバーが外部ステージに適用するアプリケーションのタイプを定義します。診断プロファイルでは、この要素は常にdiagnostic
の値を持ちます。この要素には、子要素も属性もありません。
次の例は、コンポーネント構成ファイル内のapplication
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <max-latency> <collect-interval> <amount>1000</amount> <unit>s</unit> </collect-interval> <name>testProfile0MaxLat</name> <start-location> <application>diagnostic</application> <stage>MetricSubscriber</stage> <direction>INBOUND</direction> </start-location> <end-location> <application>diagnostic</application> <stage>MonitorProcessor</stage> <direction>OUTBOUND</direction> </end-location> </max-latency> </profile> </diagnostic-profiles>
4.7 average-interval
average-interval
要素を使用すると、メトリックを収集する時間間隔を定義できます。この要素には、次の子要素があり、属性はありません。
次の例は、コンポーネント構成ファイル内のaverage-interval
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <throughput> <throughput-interval> <amount>100000</amount> <unit>MICROSECONDS</unit> </throughput-interval> <average-interval> <amount>100000000</amount> <unit>NANOSECONDS</unit> </average-interval> <location> <application>diagnostic</application> <stage>AlertEventStream</stage> <direction>INBOUND</direction> </location> </throughput> </profile> </diagnostic-profiles>
4.8 average-latency
診断プロファイルにおける平均待機時間の計算を定義するためにこの要素を使用します。
次の例はコンポーネント構成ファイル内のaverage-latency
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <average-latency> <start-location> <application>diagnostic</application> <stage>MetricSubscriber</stage> <direction>INBOUND</direction> </start-location> <end-location> <application>diagnostic</application> <stage>MonitorProcessor</stage> <direction>OUTBOUND</direction> </end-location> <threshhold> <amount>100</amount> <unit>MILLISECONDS</unit> </threshhold> </average-latency> </profile> </diagnostic-profiles>
4.9 bindings (jms-adapter)
Oracle Stream Analyticsアプリケーションでは、com.oracle.cep.cluster.hagroups.ActiveActiveGroupBean
クラスを使用して、受信JMSストリームを通知グループごとにパーティション化できます。これにより、jms-adapter
bindings
要素を使用して、通知グループを特定のmessage-selector
値と関連付けることができます。
この要素には、group-binding子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のbindings
要素の使用方法を示します。この構成を持つアプリケーションがサーバーにデプロイされたときに、ActiveActiveGroupBean_group1
が含まれるcluster
要素のgroups
子要素がサーバーにある場合、次のようになります。
-
400より大きい
acctid
プロパティを持つイベントが処理されます。 -
CONDITION
パラメータはacctid > 400
として定義されます。
<jms-adapter> <name>JMSInboundAdapter</name> <event-type>StockTick</event-type> <jndi-provider-url>t3://ppurich-pc:7001</jndi-provider-url> <destination-jndi-name>./Topic1</destination-jndi-name> <user>weblogic</user> <password>weblogic1</password> <work-manager>JettyWorkManager</work-manager> <concurrent-consumers>1</concurrent-consumers> <session-transacted>true</session-transacted> <message-selector>${CONDITION}</message-selector> <bindings> <group-binding group-id="ActiveActiveGroupBean_group1"> <param id="CONDITION">acctid > 400</param> </group-binding> <group-binding group-id="ActiveActiveGroupBean_group2"> <param id="CONDITION">acctid BETWEEN 301 AND 400</param> </group-binding> <group-binding group-id="ActiveActiveGroupBean_group3"> <param id="CONDITION">acctid BETWEEN 201 AND 300</param> </group-binding> <group-binding group-id="ActiveActiveGroupBean_group4"> <param id="CONDITION">acctid <= 200</param> </group-binding> </bindings> </jms-adapter>
4.10 bindings (processor)
プロセッサのbindings
要素を使用すると、プロセッサ・コンポーネントにおいて1つ以上のパラメータ化されたOracle CQLルールのバインドを定義できます。bindings
コンポーネント構成要素には、binding
子要素があり、属性はありません。
次の例は、コンポーネント構成ファイル内のbindings
要素の使用方法を示します。
<processor> <name>processor1</name> <record-parameters> <dataset-name>test1data</dataset-name> <event-type-list> <event-type>SimpleEvent</event-type> </event-type-list> <provider-name>test-rdbms-provider</provider-name> <batch-size>1</batch-size> <batch-time-out>10</batch-time-out> </record-parameters> <rules> <rule id="rule1"><![CDATA[ select stockSymbol, avg(price) as percentage from StockTick retain 5 events where stockSymbol=? having avg(price) > ? or avg(price) < ? ></rule> </rules> <bindings> <binding id="rule1"> <params>BEAS,10.0,-10.0</params> <params id="IBM">IBM,5.0,5.0</params> </binding> </bindings> </processor>
4.11 buffer-size
buffer-size
要素を使用すると、内部ストア・バッファのサイズを定義できます。このバッファは、ストアに書き込む必要がある非同期更新を一時的に保存するために使用されます。動的更新はサポートしていません。この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のbuffer-size
要素の使用方法を示します。
<caching-system> <name>providerCachingSystem</name> <cache> <name>providerCache</name> <max-size>1000</max-size> <eviction-policy>FIFO</eviction-policy> <time-to-live>60000</time-to-live> <idle-time>120000</idle-time> <write-behind> <work-manager-name>JettyWorkManager</work-manager-name> <batch-size>100</batch-size> <buffer-size>100</buffer-size> <buffer-write-attempts>100</buffer-write-attempts> <buffer-write-timeout>100</buffer-write-timeout> </write-behind> <work-manager-name>JettyWorkManager</work-manager-name> <listeners asynchronous="false"> <work-manager-name>JettyWorkManager</work-manager-name> </listeners> </cache> </caching-system>
4.12 buffer-write-attempts
buffer-write-attempts
要素を使用すると、ユーザー・スレッドがストア・バッファに書き込むために行う試行回数を定義できます。ユーザー・スレッドとは、キャッシュ・エントリの作成または更新を行うスレッドです。ユーザー・スレッドがストア・バッファに書き込むことができない場合(すべての書き込み試行が失敗した場合)、同期的にストアを起動します。この要素は動的に変更されます。
この要素には、子要素も属性もありません。
次の例は、コンポーネント構成ファイル内のbuffer-write-attempts
要素の使用方法を示します。
<caching-system> <name>providerCachingSystem</name> <cache> <name>providerCache</name> <max-size>1000</max-size> <eviction-policy>FIFO</eviction-policy> <time-to-live>60000</time-to-live> <idle-time>120000</idle-time> <write-behind> <work-manager-name>JettyWorkManager</work-manager-name> <batch-size>100</batch-size> <buffer-size>100</buffer-size> <buffer-write-attempts>100</buffer-write-attempts> <buffer-write-timeout>100</buffer-write-timeout> </write-behind> <work-manager-name>JettyWorkManager</work-manager-name> <listeners asynchronous="false"> <work-manager-name>JettyWorkManager</work-manager-name> </listeners> </cache> </caching-system>
4.13 buffer-write-timeout
buffer-write-timeout
要素を使用すると、ユーザー・スレッドがストア・バッファへの書き込み試行を中断するまでの待機時間をミリ秒単位で定義できます。ストア・バッファへの書き込み試行が失敗するのは、バッファがいっぱいの場合のみです。タイムアウト後は以降のバッファへの書き込み試行はbuffer-write-attemptsの値に基づいて行われます。この要素は動的に変更されます。
この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のbuffer-write-timeout
要素の使用方法を示します。
<caching-system> <name>providerCachingSystem</name> <cache> <name>providerCache</name> <max-size>1000</max-size> <eviction-policy>FIFO</eviction-policy> <time-to-live>60000</time-to-live> <idle-time>120000</idle-time> <write-behind> <work-manager-name>JettyWorkManager</work-manager-name> <batch-size>100</batch-size> <buffer-size>100</buffer-size> <buffer-write-attempts>100</buffer-write-attempts> <buffer-write-timeout>100</buffer-write-timeout> </write-behind> <work-manager-name>JettyWorkManager</work-manager-name> <listeners asynchronous="false"> <work-manager-name>JettyWorkManager</work-manager-name> </listeners> </cache> </caching-system>
4.14 cache
cache
要素を使用すると、コンポーネントのキャッシュを定義できます。cacheは、イベントを格納する一時記憶域で、Oracle Stream Analyticsアプリケーションの全体的なパフォーマンスを改善することのみを目的として作成されます。キャッシュは、アプリケーションが正常に機能するためには必要ありません。Oracle Stream Analyticsのアプリケーションは、キャッシュへのイベントのパブリッシュやキャッシュからのイベントの消費を行うオプションで、イベントの可用性およびアプリケーションのパフォーマンスを向上させることができます。
この要素には、次の子要素があり、属性はありません。
-
次のいずれか。
次の例はコンポーネント構成ファイル内のcache
要素の使用方法を示します。
<caching-system> <name>providerCachingSystem</name> <cache> <name>providerCache</name> <max-size>1000</max-size> <eviction-policy>FIFO</eviction-policy> <time-to-live>60000</time-to-live> <idle-time>120000</idle-time> <write-none/> <work-manager-name>JettyWorkManager</work-manager-name> <listeners asynchronous="false"> <work-manager-name>JettyWorkManager</work-manager-name> </listeners> </cache> </caching-system>
4.15 caching-system
caching-element
要素を使用すると、Oracle Stream Analyticsローカル・キャッシング・システム・コンポーネントを定義できます。キャッシング・システムは、キャッシング実装の構成済インスタンスを示します。キャッシング・システムは、構成済キャッシュの名前付きセットを定義する他、それらの任意のキャッシュが複数のマシン上に分散配置されている場合には、リモート通信の構成も定義します。
この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のcaching-system
要素の使用方法を示します。
<caching-system> <name>providerCachingSystem</name> <cache> <name>providerCache</name> <max-size>1000</max-size> <eviction-policy>FIFO</eviction-policy> <time-to-live>60000</time-to-live> <idle-time>120000</idle-time> <write-none/> <work-manager-name>JettyWorkManager</work-manager-name> <listeners asynchronous="false"> <work-manager-name>JettyWorkManager</work-manager-name> </listeners> </cache> </caching-system>
4.16 channel
channel要素を使用すると、チャネル・コンポーネントを定義できます。Oracle Stream Analyticsアプリケーションには1つ以上のチャネル・コンポーネントが含まれます。このコンポーネントはアダプタとプロセッサ間やプロセッサとイベントBean(ビジネス・ロジックPOJO)間のような別のタイプのコンポーネント間をイベントが往来する物理的なパイプを表します。
この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のchannel
要素の使用方法を示します。この例ではchannelの一意の識別子はMatchOutputChannel
です。
<channel> <name>monitoring-control-stream</name> <max-size>10000</max-size> <max-threads>1</max-threads></channel>
4.17 channel (http-pub-sub-adapterの子要素)
channel
要素を使用すると、http-pub-sub-adapterがパブリッシュまたはサブスクライブする対象のチャネルを指定できます。いずれのチャネルもローカル/リモートであろうとパブリッシュ用/サブスクライブ用であろうとすべてのhttp-pub-sub-adapterに割り当てられます。この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のchannel
要素の使用方法を示します。この例ではlocalPublisher
パブリッシュ/サブスクライブ・アダプタはパターン/channel2
を用いてローカル・チャネルにパブリッシュします。
<http-pub-sub-adapter>
<name>localPublisher</name>
<server-context-path>/pubsub</server-context-path>
<channel>/channel2</channel>
</http-pub-sub-adapter>
4.18 channel-name
channel-name
要素を使用すると、イベントをインジェクトするチャネルまたはトレースされたイベントを送信するチャネルの名前を指定できます。この要素には、子要素も属性もありません。active
要素の値がfalse
の場合、channel-name
値は無視されます。
要素の値は、次の形式のチャネルへのパスにし、スラッシュで始まる必要があります。
-
イベント・トレース: /serverID/appID/stageID/output
-
イベント・インジェクション: /serverID/appID/stageID/input
次の例はイベント・トレース用のプロセッサを構成する方法を示します。trace-parameters
要素のactive
子要素はトレースをオンにすることを指定し、channel-name
要素はトレースされる要素の送信先のHTTP pub-subチャネルを指定します。
<processor> <name>FindCrossRates</name> <trace-parameters> <active>true</active> <channel-name>/NonClusteredServer/fx/FindCrossRates/output</channel-name> </trace-parameters> <rules> <!-- Query rules omitted. --> </rules> </processor>
4.20 coherence-cache-config
この要素を使用するとcoherence-caching-system
用のOracle Coherenceキャッシュ構成を定義できます。この要素には、子要素も属性もありません。
次の例は、コンポーネント構成ファイル内のcoherence-cache-config
要素の使用方法を示します。
<coherence-caching-system> <name>nativeCachingSystem</name> <coherence-cache-config> applications/cache_cql/coherence/coherence-cache- </coherence-cache-config></coherence-caching-system>
4.21 coherence-caching-system
coherence-caching-system
要素を使用すると、Oracle Coherenceキャッシング・システム・コンポーネントを定義できます。キャッシング・システムは、キャッシング実装の構成済インスタンスを示します。キャッシング・システムは、構成済キャッシュの名前付きセットを定義する他、それらの任意のキャッシュが複数のマシン上に分散配置されている場合には、リモート通信の構成も定義します。
この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のcoherence-caching-system
要素の使用方法を示します。この例ではchannelの一意の識別子はnativeCachingSystem
です。
<coherence-caching-system> <name>nativeCachingSystem</name> <coherence-cache-config> applications/cache_cql/coherence/coherence-cache- </coherence-cache-config> </coherence-caching-system>
4.22 coherence-cluster-config
coherence-cluster-config
要素を使用すると、coherence-caching-system
用のOracle Coherenceクラスタ構成を定義できます。この要素には、子要素も属性もありません。
次の例は、コンポーネント構成ファイル内のcoherence-cache-config
要素の使用方法を示します。
<coherence-caching-system> <name>nativeCachingSystem</name> <coherence-cluster-config> applications/cluster_cql/coherence/coherence-cluster- </coherence-cluster-config></coherence-caching-system>
4.23 collect-interval
collect-interval
要素を使用すると、診断プロファイルにおいてaverage-latency
またはmax-latency
要素の収集間隔を定義できます。この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のcollect-interval
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <max-latency> <collect-interval> <amount>1000</amount> <unit>s</unit> </collect-interval> <name>testProfile0MaxLat</name> <start-location> <application>diagnostic</application> <stage>MetricSubscriber</stage> <direction>INBOUND</direction> </start-location> <end-location> <application>diagnostic</application> <stage>MonitorProcessor</stage> <direction>OUTBOUND</direction> </end-location> </max-latency> </profile> </diagnostic-profiles>
4.24 concurrent-consumers
concurrent-consumers
要素を使用すると、作成するコンシューマ数を定義できます。デフォルト値は1です。この要素には、子要素も属性もありません。
この値を1より大きい数字に設定した場合は、コンバータBeanがスレッド・セーフであることを確認してください。これは、コンバータBeanがコンシューマ間で共有されるためです。concurrent-consumers
の値が1より大きく、すべてのコンシューマを同時に実行する場合、このJMSアダプタと関連付けるwork-managerの構成方法を検討してください。
-
work-manager
が他のコンポーネント(その他のアダプタおよびJetty)と共有されている場合、work-manager
属性max-threads-constraint
をconcurrent-consumers
の設定以上に設定します。 -
work-manager
が共有されていない場合(つまり、この受信JMSアダプタ専用の場合)、work-manager
属性max-threads-constraint
をconcurrent-consumers
と同じ設定にします。
詳細は、「work-manager」を参照してください。
次の例はコンポーネント構成ファイル内のconcurrent-consumers
要素の使用方法を示します。
<jms-adapter> <name>jmsInbound-text</name> <connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <concurrent-consumers>1</concurrent-consumers> <session-transacted>false</session-transacted> </jms-adapter>
4.28 connection-jndi-name
connection-jndi-name
要素を使用すると、JMS接続ファクトリのJNDI名を定義できます。Oracle Stream AnalyticsサーバーJMSのデフォルト値は、weblogic.jms.ConnectionFactory
です。
<jms-adapter> <name>jmsInbound-text</name> <connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <concurrent-consumers>1</concurrent-consumers> <session-transacted>false</session-transacted> </jms-adapter>
次の例はコンポーネント構成ファイル内のconnection-jndi-name
要素の使用方法を示します。
4.29 connection-encrypted-password
connection-encrypted-password
要素を使用すると、JMSサービス・プロバイダへの接続取得時にOracle Stream Analyticsが使用する暗号化されたjms-adapter
パスワードを定義できます。この要素には、子要素も属性もありません。
Oracle Stream Analyticsは、javax.jms.ConnectionFactory
のcreateConnection
メソッドを呼び出して、JMS宛先(JMSキューまたはトピック)への接続を作成するときに、connection-user
要素と、connection-password
要素またはconnection-encrypted-password
要素(構成されている場合)を使用します。それ以外の場合、Oracle Stream Analyticsはuser
要素とpassword
要素(またはencrypted-password
要素)を使用します。connection-encrypted-password
またはconnection-password
のいずれかを使用します。ただし、両方を使用することはできません。
次の例はコンポーネント構成ファイル内のconnection-encrypted-password
要素の使用方法を示します。
<http-pub-sub-adapter> <name>remotePub</name> <server-url>http://localhost:9002/pubsub</server-url> <channel>/test1</channel> <event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type> <user>wlevs</user> <password>wlevs</password> <connection-user>wlevscon</user> <encrypted-password>{Salted-3DES}s4YUEvH4Wl2DAjb45iJnrw==</encrypted-password> </http-pub-sub-adapter>
4.30 connection-password
connection-password
要素を使用すると、JMSサービス・プロバイダへの接続取得時にOracle Stream Analyticsが使用するjms-adapter
パスワードを定義できます。この要素には、子要素も属性もありません。
Oracle Stream Analyticsは、javax.jms.ConnectionFactory
のcreateConnection
メソッドを呼び出して、JMS宛先(JMSキューまたはトピック)への接続を作成するときに、connection-user
要素と、connection-password
要素またはconnection-encrypted-password
要素(構成されている場合)を使用します。それ以外の場合、Oracle Stream Analyticsはuser
要素とpassword
要素(またはencrypted-password
要素)を使用します。
connection-password
またはconnection-encrypted-password
のいずれかを使用します。ただし、両方を使用することはできません。
次の例はコンポーネント構成ファイル内のconnection-password
要素の使用方法を示します。
<http-pub-sub-adapter> <name>remotePub</name> <server-url>http://localhost:9002/pubsub</server-url> <channel>/test1</channel> <event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type> <user>wlevs</user> <password>wlevs</password> <connection-user>wlevscon</user> <connection-password>wlevscon</password> </http-pub-sub-adapter>
4.31 connection-user
connection-user
要素を使用すると、Oracle Stream AnalyticsがJMSサービス・プロバイダへの接続取得時に使用するjms-adapter
のユーザー名を定義できます。この要素には、子要素も属性もありません。
Oracle Stream Analyticsは、javax.jms.ConnectionFactory
のcreateConnection
メソッドを呼び出して、JMS宛先(JMSキューまたはトピック)への接続を作成するときに、connection-user
要素と、connection-password
要素またはconnection-encrypted-password
要素(構成されている場合)を使用します。それ以外の場合、Oracle Stream Analyticsはuser
要素とpassword
要素(またはencrypted-password
要素)を使用します。
アプリケーションでconnection-user
およびconnection-password
(またはconnection-encrypted-password
)の設定を使用できます。その場合、一方のセキュリティ・プロバイダはJNDIアクセスに使用され、JMSアクセスには別のセキュリティ・プロバイダが使用されます。
次の例はコンポーネント構成ファイル内のconnection-user
要素の使用方法を示します
<http-pub-sub-adapter> <name>remotePub</name> <server-url>http://localhost:9002/pubsub</server-url> <channel>/test1</channel> <event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type> <user>wlevs</user> <password>wlevs</password> <connection-user>wlevscon</user> <connection-password>wlevscon</password> </http-pub-sub-adapter>
4.32 context-path
context-path
要素を使用すると、Webサーバー上でアプリケーションをデプロイする場所を指定できます。context-path
要素には、子も属性もありません。
次の例は構成ファイル内のcontext-path
要素の使用方法を示します。
<rest-adapter> <name>httpInbound</name> <event-type-name>CallCenterActivity</event-type-name> <context-path>/testhttpadapter</context-path> </rest-adapter> <jaxb-mapper> <name>xmlMapperBean</name> <event-type-name>CallCenterActivity</event-type-name> <metadata>external_metadata_case1.xml</metadata> </jaxb-mapper> <csv-mapper> <name>csvMapperBean</name> <context-path>org.callcenter</context-path> <validate>false</validate> </csv-mapper>
4.33 csv-adapter
EDNに入力するためにカンマ区切りの値形式でデータを受信するにはCSVインバウンド・アダプタを使用し、EDNから出力するカンマ区切りの値形式でデータを送信するにはCSVアウトバウンド・アダプタを使用します。csv-adapter
要素には、次の子要素があり、属性はありません。
次の構成ファイルの例は、csv-adapter
要素を使用してCSVのインバウンド・アダプタおよびアウトバウンド・アダプタを作成する方法を示します。
<csv-adapter> <name>StockTradeCSVInboundAdapter</name> </csv-adapter> <csv-adapter> <name>StockTradeCSVOutboundAdapter</name> </csv-adapter>
4.34 csv-mapper
csv-mapper
要素を使用すると、着信CSVデータを処理できます。この要素には、次の子要素があり、属性はありません。
次の例は構成ファイル内のcsv-mapper
要素の使用方法を示します。
<rest-adapter> <name>httpInbound</name> <event-type-name>CallCenterActivity</event-type-name> <context-path>/testhttpadapter</context-path> </rest-adapter> <jaxb-mapper> <name>xmlMapperBean</name> <event-type-name>CallCenterActivity</event-type-name> <metadata>external_metadata_case1.xml</metadata> </jaxb-mapper> <csv-mapper> <name>csvMapperBean</name> <context-path>org.callcenter</context-path> <validate>false</validate> </csv-mapper>
4.35 database
database
要素を使用すると、Oracle CQLプロセッサのデータベース参照を定義できます。この要素には、子要素がなく、次の属性があります。
表4-1 databaseコンポーネント構成要素の属性
属性 | 説明 | データ型 | 必須? |
---|---|---|---|
|
この問合せの一意の識別子です。 |
|
はい |
|
Oracle Stream Analyticsサーバー・ファイル内で定義されているデータ・ソースの名前。 |
|
はい |
次の例は、コンポーネント構成ファイル内のdatabase
要素の使用方法を示します。
<processor> <name>proc</name> <rules> <rule id="rule1"><![CDATA[ SELECT symbol, price FROM ExchangeEvent retain 1 event, StockDb ('SELECT symbol FROM Stock WHERE symbol = ${symbol}') ></rule> </rules> <database name="StockDb" data-source-name="StockDs" /> </processor>
4.36 decision-function
decision-function要素を使用すると、使用するOBR決定関数の名前を指定できます。この要素には、子要素も属性もありません。
次の例はdecision-function
要素の使用方法を示します。
<processor> <name>helloworldProcessor</name> <rules> <query id="helloworldRule"> <!-- <![CDATA[ select * from helloworldInputChannel[range 10 slide 5] > --> select * from helloworldInputChannel[now] </query> </rules> </processor> <obr-adapter> <name>OBRAdapter</name> <dictionary-url>file:helloworld.rules</dictionary-url> <decision-function>handler1</decision-function> </obr-adapter>
4.37 default-session
default-session
要素は、1つ以上のsession
要素が必要な場合に使用します。デフォルトでは、すべてのsession
タグが、default-session
タグで宣言されているすべての要素を継承します。
4.38 delivery-mode
delivery-mode
要素を使用すると、jms-adapter
用の配信モードを定義できます。この要素には、子要素も属性もありません。
有効な配信モードは、次のとおりです。
-
persistent
(デフォルト) -
nonpersistent
次の例は、コンポーネント構成ファイル内のdelivery-mode
要素の使用方法を示します。
<jms-adapter> <name>jmsOutbound-map</name> <event-type>JMSTestEvent</event-type> <jndi-provider-url>t3://localhost:7001</jndi-provider-url> <destination-jndi-name>Topic1</destination-jndi-name> <delivery-mode>nonpersistent</delivery-mode> </jms-adapter>
4.39 description
description
属性を使用して、QuickFixアダプタのsession
要素またはconfiguration
要素の説明を入力します。
次の例はQuickFixアダプタ内のdescription
要素の使用方法を示します。
<quickfix-adapter> <name>quickfixAdpater</name> <event-type>MyConfigEvent</event-type> <default-session description="default configuration"> ... <configuration description="identifier-message format"> <config-name>BeginString</config-name> <config-value>FIXT.0.1</config-value> </configuration> </default-session> <session description="ordertracker configuration"> <configuration description="identifier-acceptor"> <config-name>SenderCompID</config-name> <config-value>QA</config-value> </configuration> <configuration description="identifier-initiator"> <config-name>TargetCompID</config-name> <config-value>ORACLE</config-value> </configuration> </session> </quickfix-adapter>
4.40 destination-jndi-name
destination-jndi-name
必須要素を使用すると、jms-adapter
用のJMS宛先名を定義できます。この要素には、子要素も属性もありません。
JNDI名または実際のdestination-name
のいずれかを指定します。ただし、両方は指定できません。
次の例は、コンポーネント構成ファイル内のdestination-jndi-name
要素の使用方法を示します。
<jms-adapter> <name>jmsOutbound-map</name> <event-type>JMSTestEvent</event-type> <jndi-provider-url>t3://localhost:7001</jndi-provider-url> <destination-jndi-name>Topic1</destination-jndi-name> <delivery-mode>nonpersistent</delivery-mode> </jms-adapter>
4.41 destination-name
destination-name
必須要素を使用すると、jms-adapter
用のJMS宛先名を定義できます。この要素には、子要素も属性もありません。
実際の宛先名またはdestination-jndi-name
のいずれかを指定します。ただし、両方は指定できません。
次の例は、コンポーネント構成ファイル内のdestination-name
要素の使用方法を示します。
<jms-adapter> <name>jmsInbound-text</name> <connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <concurrent-consumers>1</concurrent-consumers> <session-transacted>false</session-transacted> </jms-adapter>
4.42 destination-type
destination-type
要素を使用すると、jms-adapter
用のJMS宛先タイプを定義できます。この要素には、子要素も属性もありません。
有効な値はTOPIC
またはQUEUE
です。durable-subscription
プロパティがtrue
に設定されている場合は常に、このプロパティをTOPIC
に設定する必要があります。
次の例は、コンポーネント構成ファイル内のdestination-type
要素の使用方法を示します。
<jms-adapter> <name>jmsInbound-text</name> <connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <destination-type>TOPIC</destination-name> <durable-subscription>true</durable-subscription> <durable-subscription-name>JmsDurableSubscription</durable-subscription-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <concurrent-consumers>1</concurrent-consumers> <session-transacted>false</session-transacted> </jms-adapter>
4.43 diagnostic-profiles
diagnostic-profiles
要素を使用すると、1つ以上のOracle Stream Analytics診断プロファイルを定義できます。この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のdiagnostics-profiles
要素の使用方法を示します。この例ではchannelの一意の識別子はmyDiagnosticProfiles
です。
<diagnostics-profiles> <name>myDiagnosticProfiles</name> <profile> ... </profile> </diagnostics-profiles>
4.44 dictionary-url
dictionary-url要素を使用すると、使用するルールおよび決定関数が含まれるOBRディクショナリ・ファイルへのパスを指定できます。この要素には、子要素も属性もありません。
次の例はdictionary-url
要素の使用方法を示します。
<processor> <name>helloworldProcessor</name> <rules> <query id="helloworldRule"> <!-- <![CDATA[ select * from helloworldInputChannel[range 10 slide 5] > --> select * from helloworldInputChannel[now] </query> </rules> </processor> <obr-adapter> <name>OBRAdapter</name> <dictionary-url>file:helloworld.rules</dictionary-url> <decision-function>handler1</decision-function> </obr-adapter>
4.45 direction
direction
要素を使用して、end-location
またはstart-location
診断プロファイルの方向を定義します。この要素には、子要素も属性もありません。
有効な値は次のとおりです。
-
INBOUND
-
OUTBOUND
次の例は、コンポーネント構成ファイル内のdirection
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <max-latency> <collect-interval> <amount>1000</amount> <unit>s</unit> </collect-interval> <name>testProfile0MaxLat</name> <start-location> <application>diagnostic</application> <stage>MetricSubscriber</stage> <direction>INBOUND</direction> </start-location> <end-location> <application>diagnostic</application> <stage>MonitorProcessor</stage> <direction>OUTBOUND</direction> </end-location> </max-latency> </profile> </diagnostic-profiles>
4.46 durable-subscription
durable-subscription
要素を使用すると、jms-adapter
のJMSトピック・サブスクリプションが恒久的であるかどうか、つまりサブスクライバが非アクティブになった場合も永続化できるかどうかを指定できます。有効な値はtrue
またはfalse
です。このプロパティは、destination-type
がTOPIC
に設定されている場合にのみ有効です。
この要素には、子要素も属性もありません。
次の例は、コンポーネント構成ファイル内のdurable-subscription
要素の使用方法を示します。
<jms-adapter> <name>jmsInbound-text</name> <connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <destination-type>TOPIC</destination-name> <durable-subscription>true</durable-subscription> <durable-subscription-name>JmsDurableSubscription</durable-subscription-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <concurrent-consumers>1</concurrent-consumers> <session-transacted>false</session-transacted> </jms-adapter>
4.47 durable-subscription-name
durable-subscription-name
要素を使用すると、jms-adapter
の恒久サブスクリプションを一意に識別するための名前を指定できます。恒久サブスクリプションは、サブスクライバが非アクティブになった場合も永続化できます。この要素には、子要素も属性もありません。
次の例は、コンポーネント構成ファイル内のdurable-subscription-name
要素の使用方法を示します。
<jms-adapter> <name>jmsInbound-text</name> <connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <destination-type>TOPIC</destination-name> <durable-subscription>true</durable-subscription> <durable-subscription-name>JmsDurableSubscription</durable-subscription-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <concurrent-consumers>1</concurrent-consumers> <session-transacted>false</session-transacted> </jms-adapter>
4.48 duration
この要素を使用すると、schedule-time-range-offset
またはtime-range-offset
要素の時間範囲を次の形式で定義できます。HH
は時間数、MM
は分数、およびSS
は秒数です。
HH:MM:SS
この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のduration
要素の使用方法を示します。
<record-parameters> <dataset-name>tuple1</dataset-name> <event-type-list> <event-type>TupleEvent1</event-type> </event-type-list> <provider-name>test-rdbms-provider</provider-name> <store-policy-parameters> <parameter> <name>timeout</name> <value>300</value> <parameter> </store-policy-parameters> <time-range-offset> <start>2010-01-20T05:00:00</start> <duration>03:00:00</duration> </time-range-offset> <batch-size>1</batch-size> <batch-time-out>10</batch-time-out> </record-parameters>
4.49 edl-file
EDNアダプタにロードされる必須EDLファイルの名前です。指定した名前を持つEDLファイルは、META-INF/wlevs/edn/
ディレクトリ内のアプリケーション・バンドルにパッケージ化する必要があります。この要素には、子要素も属性もありません。
次の例はedl-file
要素の使用方法を示します。
<edn-adapter> <name>ednOutboundAdapterJaxb</name> <edl-file>CallCenterEvents.edl</edl-file> <schema-file>callcenter.xsd</schema-file> <validate>true</validate> <package-name>org.callcenter</package-name> <raw-xml-content>false</raw-xml-content> <jndi-provider-url>vm://localhost</jndi-provider-url> <jndi-factory>org.apache.activemq.jndi.ActiveMQInitialContextFactory </jndi-factory> <user>test1</user> <password>test123</password> <delivery-mode>nonpersistent</delivery-mode> </edn-adapter>
4.50 edn-adapter
edn-adapter
要素を使用すると、Oracle SOA Suiteイベント・ネットワークとのインタフェースを確立できます。EDNインバウンド・アダプタを使用すると、Oracle SOA Suiteイベント・ネットワークからの着信データを受信できます。EDNアウトバウンド・アダプタを使用すると、アウトバウンド・データをOracle SOAイベント・ネットワークに送信できます。
この要素には、次の子要素があり、属性はありません。client-id
およびdurable-subscription-name
要素は、EDN入力アダプタに対してのみ適用されます。残りはEDNの入力アダプタと出力アダプタの両方に適用されます。
リスト内のclient-id
およびdurable-subscription-name
を除くすべての要素は、EDNの入力アダプタと出力アダプタの両方に適用されます。client-id
およびdurable-subscription-name
要素は、入力EDNアダプタに固有の要素です。
-
次のいずれか。
次の例はEDNインバウンド・アダプタ構成を示します。インバウンドEDNアダプタは、アセンブリ・ファイルに指定されているCallCenterActivityEvent
の定義が含まれるEDLファイルをロードします。スキーマ・ファイルはスキーマ検証用として提供されます。パッケージ名は、スキーマによって生成されたJAXBクラス用として使用されます。RAW XMLコンテンツは、EDN XML転送がRAW XMLとして表されることを意味します。JNDIプロバイダおよびファクトリを使用すると、Oracle SOA SuiteがEDNを特定できるようになります。
<edn-adapter> <name>ednInboundAdapterJaxb</name> <edl-file>CallCenterEvents.edl</edl-file> <schema-file>callcenter.xsd</schema-file> <validate>true</validate> <package-name>org.callcenter</package-name> <raw-xml-content>false</raw-xml-content> <jndi-provider-url>vm://localhost</jndi-provider-url> <jndi-factory>org.apache.activemq.jndi.ActiveMQInitialContextFactory </jndi-factory> <user>test1</user> <password>test123</password> </edn-adapter>
4.51 enabled
この要素を使用すると、診断プロファイルを有効化するかどうかを定義できます。この要素には、要素も属性もありません。
有効な値は次のとおりです。
-
true
-
false
<diagnostic-profiles>
<name>myselfprofiles</name>
<profile>
<name>testProfile0</name>
<enabled>true</enabled>
<start-stage>MetricSubscriber</start-stage>
<max-latency>
<start-location>
<application>diagnostic</application>
<stage>MetricSubscriber</stage>
<direction>INBOUND</direction>
</start-location>
<end-location>
<application>diagnostic</application>
<stage>MonitorProcessor</stage>
<direction>OUTBOUND</direction>
</end-location>
</max-latency>
</profile>
</diagnostic-profiles>
4.52 encrypted-password
encrypted-password
要素を使用すると、ハッキングを阻止するために別の形式に変更されるパスワードを作成できます。この要素には、子要素も属性もありません。
encrypted-password
要素は次の親要素で使用します。
-
http-pub-sub-adapter
:encrypted-password
要素を使用すると、Oracle Stream Analyticsアプリケーションがパブリッシュする対象となるHTTPパブリッシュ/サブスクライブ・サーバーがユーザー認証を要求する場合に暗号化されたパスワードを定義できます。 -
jms-adapter
: Oracle Stream AnalyticsはJNDIInitialContext
を取得するときに、user
要素とpassword
要素(またはencrypted-password
要素)を使用します。Oracle Stream Analyticsは、javax.jms.ConnectionFactory
のcreateConnection
メソッドを呼び出して、JMS宛先(JMSキューまたはトピック)への接続を作成するときに、connection-user
要素と、connection-password
要素またはconnection-encrypted-password
要素(構成されている場合)を使用します。それ以外の場合、Oracle Stream Analyticsはuser
要素とpassword
要素(またはencrypted-password
要素)を使用します。 -
rmi-adapter:
encrypted-password
要素を使用すると、Oracle WebLogic Serverに対するRMI認証用として暗号化されたユーザー・パスワードを定義できます。 -
edn-adapter:
encrypted-password
要素を使用すると、Oracle SOA SuiteのEDNまたはJMS認証用として暗号化されたユーザー・パスワードを定義できます。
注意:
encrypted-password
またはpassword
のいずれかを使用します。ただし、両方を使用することはできません。
次の例は、コンポーネント構成ファイル内のencrypted-password
要素の使用方法を示します。
<http-pub-sub-adapter> <name>remotePub</name> <server-url>http://localhost:9002/pubsub</server-url> <channel>/test1</channel> <event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type> <user>wlevs</user> <encrypted-password>{Salted-3DES}s4YUEvH4Wl2DAjb45iJnrw==</encrypted-password> </http-pub-sub-adapter>
4.53 end
end
要素を使用して、time-range
要素またはschedule-time-range
要素の終了時間を定義します。この要素には、子要素も属性もありません。
終了時間を次のXMLスキーマのdateTime
値の形式として表します。
yyyy-mm-ddThh:mm:ss
たとえば、開始を2010年1月20日午前5時、終了を2010年1月20日午後6時に指定するには、次のように入力します。
<time-range> <start>2010-01-20T05:00:00</start> <end>2010-01-20T18:00:00</end> </time-range>
XMLスキーマのdateTime
形式の完全な詳細は、http://www.w3.org/TR/xmlschema-2/#dateTime-lexical-representation
を参照してください。
次の例はコンポーネント構成ファイル内のend
要素の使用方法を示します。
<record-parameters> <dataset-name>tuple1</dataset-name> <event-type-list> <event-type>TupleEvent1</event-type> </event-type-list> <provider-name>test-rdbms-provider</provider-name> <store-policy-parameters> <parameter> <name>timeout</name> <value>300</value> <parameter> </store-policy-parameters> <time-range> <start>2010-01-20T05:00:00</start> <end>2010-01-20T18:00:00</end> </time-range> <batch-size>1</batch-size> <batch-time-out>10</batch-time-out> </record-parameters>
4.54 end-location
end-location
要素を使用すると、診断プロファイルにおいてaverage-latency
またはmax-latency
要素の終了位置を定義できます。この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のend-location
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <max-latency> <collect-interval> <amount>1000</amount> <unit>s</unit> </collect-interval> <name>testProfile0MaxLat</name> <start-location> <application>diagnostic</application> <stage>MetricSubscriber</stage> <direction>INBOUND</direction> </start-location> <end-location> <application>diagnostic</application> <stage>MonitorProcessor</stage> <direction>OUTBOUND</direction> </end-location> </max-latency> </profile> </diagnostic-profiles>
4.55 event-bean
event-bean
要素を使用すると、イベントBeanコンポーネントを定義できます。この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のevent-bean
要素の使用方法を示します。この例ではchannelの一意の識別子はmyEventBean
です。
<event-bean> <name>myEventBean</name> </event-bean>
4.56 event-interval
CSVインバウンド・アダプタでevent-interval
要素を使用すると、選択した単位で読取りイベント間の間隔を指定できます。使用可能な単位は、nanoseconds、microseconds
、milliseconds
およびseconds
です。この要素には、子要素も属性もありません。
イベント間で待機する間隔です。使用可能な単位は、nanoseconds
、microseconds
、milliseconds
およびseconds
です。たとえば、イベント間隔が1秒に設定されている場合、CSV入力アダプタはすべてのイベントを処理するまでに1秒間待機します。ただし、スレッド処理に関連するオーバーヘッドが存在するため、実際の待機時間はイベント間隔より若干長くなります。したがって、イベント間隔は短くしすぎないようにしてください。
次のコードは、イベント間隔が25 nanoseconds
、初期遅延が40秒であるCSVアダプタを示します。使用可能な単位は、nanoseconds、microseconds
、milliseconds
およびseconds
です。
<csv-adapter> <name>csv-inbound-adapter</name> <event-interval units="nanoseconds">25</event-interval> <initial-delay units="seconds">40</initial-delay> </csv-adapter>
4.57 event-type
event-type
要素を使用すると、イベントに含まれるデータを定義できます。この要素には、子要素も属性もありません。
event-type
要素は次の親要素で使用します。
-
-
パブリッシュ: オプション。パブリッシュ用のローカルおよびリモートの両方のHTTP Pub-Subアダプタについて、パブリッシュされるイベントのタイプを制限するために、
JavaBean
イベントの完全修飾クラス名を指定します。指定しない場合、HTTP pub-subアダプタに送信されたすべてのイベントがパブリッシュされます。 -
サブスクライブ: 必須。サブスクライブ用のローカルおよびリモートの両方のHTTP Pub-Subアダプタについて、着信メッセージがマップされる
JavaBean
の完全修飾クラス名を指定します。実行時、Oracle Stream Analyticsはメッセージ内の受信キー/値のペアを使用して、メッセージ・データを指定されたイベント・タイプにマップします。
このクラスをEPNアセンブリ・ファイルに
wlevs:event-type-repository
要素、wlevs:class
子要素として登録する必要があります。 -
-
jms-adapter
:event-type
要素を使用すると、プロパティがJMSメッセージのプロパティに一致するイベント型を指定できます。この子要素は、Oracle Stream AnalyticsにJMSメッセージとイベント間の変換を自動的に行わせる場合にのみ指定します。独自のカスタム・コンバータBeanを作成済の場合はこの要素を指定しません。 -
record-parameters
:event-type
要素を使用すると、記録するイベントを指定できます。
event-type
要素の値はイベント型のリポジトリで定義したいずれかのイベント型にします。
次の例はコンポーネント構成ファイル内のevent-type
要素の使用方法を示します。
<record-parameters> <dataset-name>tuple1</dataset-name> <event-type-list> <event-type>TupleEvent1</event-type> </event-type-list> <provider-name>test-rdbms-provider</provider-name> <batch-size>1</batch-size> <batch-time-out>10</batch-time-out> </record-parameters>
4.58 event-type-name
event-type-name
要素を使用すると、イベント・タイプの名前を指定できます。イベント・タイプは、イベントに含まれるデータを定義するデータ構造です。
event-type-name
要素には、子も属性もありません。次の例は構成ファイル内のこの要素の使用方法を示します。
<rest-adapter> <name>httpInbound</name> <event-type-name>CallCenterActivity</event-type-name> <context-path>/testhttpadapter</context-path> </rest-adapter> <jaxb-mapper> <name>xmlMapperBean</name> <event-type-name>CallCenterActivity</event-type-name> <metadata>external_metadata_case1.xml</metadata> </jaxb-mapper> <csv-mapper> <name>csvMapperBean</name> <context-path>org.callcenter</context-path> <validate>false</validate> </csv-mapper>
4.59 eviction-policy
eviction-policy
要素を使用すると、max-size
の到着時にキャッシュが使用する削除ポリシーを定義できます。この要素には、子要素も属性もありません。
有効な値は次のとおりです。
-
FIFO
: 先入れ先出し。 -
LRU
: 最も長い期間使用されていない -
LFU
: 最も使用頻度が低い(デフォルト) -
NRU
: 最近使用されていない
次の例はコンポーネント構成ファイル内のeviction-policy
要素の使用方法を示します。
<caching-system> <name>providerCachingSystem</name> <cache> <name>providerCache</name> <max-size>1000</max-size> <eviction-policy>FIFO</eviction-policy> <time-to-live>60000</time-to-live> <idle-time>120000</idle-time> <write-none/> <work-manager-name>JettyWorkManager</work-manager-name> <listeners asynchronous="false"> <work-manager-name>JettyWorkManager</work-manager-name> </listeners> </cache> </caching-system>
4.60 fail-when-rejected
fail-when-rejected
要素を使用すると、オファー・タイムアウトの期限切れ時にイベント・キューがいっぱいである場合にcom.bea.wlevs.ede.api.EventProcessingException
タイプの例外を発生させるかどうかを指定できます。false
に設定すると、または何も設定しないと、例外が生成されるのではなく、イベントが削除されます。この構成は、max-size
値が0より大きいイベント・キューにのみ適用されます。デフォルト値はfalse
です。オファー・タイムアウトの設定の詳細は、「offer-timeout」を参照してください。
この要素には、子要素も属性もありません。
次の例では、イベント・キューが一杯の間に15秒経過するとEventProcessingException
を生成するように、チャネルを構成しています。
<channel> <name>QueuedChannel</name> <max-size>1000</max-size> <max-threads>1</max-threads> <offer-timeout>15000000000</offer-timeout> <fail-when-rejected>true</fail-when-rejected> </channel>
4.61 group-binding
JMSインバウンド・アダプタのjms-adapter
要素にgroup-binding
子要素を追加するために、コンポーネント構成ファイルを編集します。各可能JMSメッセージ・セレクタ値に対して1つのgroup-binding
要素を追加します。詳細は、「bindings (jms-adapter)」を参照してください。
この要素には、param子要素およびgroup-id属性があります。group-id属性は必須で、タイプはString
であり、子要素をグループ化するクラスタ要素の名前です。
次の例はコンポーネント構成ファイル内のgroup-binding
要素の使用方法を示します。
<jms-adapter> <name>JMSInboundAdapter</name> <event-type>StockTick</event-type> <jndi-provider-url>t3://ppurich-pc:7001</jndi-provider-url> <destination-jndi-name>./Topic1</destination-jndi-name> <user>weblogic</user> <password>weblogic1</password> <work-manager>JettyWorkManager</work-manager> <concurrent-consumers>1</concurrent-consumers> <session-transacted>true</session-transacted> <message-selector>${CONDITION}</message-selector> <bindings> <group-binding group-id="ActiveActiveGroupBean_group1"> <param id="CONDITION">acctid > 400</param> </group-binding> <group-binding group-id="ActiveActiveGroupBean_group2"> <param id="CONDITION">acctid BETWEEN 301 AND 400</param> </group-binding> <group-binding group-id="ActiveActiveGroupBean_group3"> <param id="CONDITION">acctid BETWEEN 201 AND 300</param> </group-binding> <group-binding group-id="ActiveActiveGroupBean_group4"> <param id="CONDITION">acctid <= 200</param> </group-binding> </bindings> </jms-adapter>
4.62 heartbeat
heartbeat
要素を使用して、システム・タイムスタンプされたchannel
コンポーネントに、新しいハートビート・タイム・アウトを定義します。デフォルトでは、タイムアウト値は100ミリ秒(100,000,000ナノ秒)です。この要素には、子要素も属性もありません。ハートビートは、一定秒数ごとにチャネルでのデータの到着をチェックします。
Oracle Stream Analyticsは、この設定値を経過してもチャネルにデータが到着しない場合、システムによってタイムスタンプが付加されたリレーション・チャネルまたはストリーム・チャネル上にハートビートを生成します。
システムによってタイムスタンプが付加されたリレーションまたはストリームにheartbeat子要素が適用されるのは、プロセッサに送信を行うイベント・チャネルにイベントが到着せず、プロセッサが時間ベースのウィンドウや期間のパターン照合などの一時的な演算子をいくつか含む文を使用して構成されている場合のみです。
次の例はコンポーネント構成ファイル内のheartbeat
要素の使用方法を示します。この例ではchannelの一意の識別子はMatchOutputChannel
です。
<channel> <name>MatchOutputChannel</name> <max-size>0</max-size> <max-threads>0</max-threads> <selector>match</selector> <heartbeat>10000</heartbeat> </channel>
4.63 http-pub-sub-adapter
http-pub-sub-adapter要素を使用すると、HTTPパブリッシュ/サブスクライブ・サーバー・アダプタを定義できます。
この要素には、次の子要素があり、属性はありません。
-
次のいずれか。
-
次のいずれか。
次の例はコンポーネント構成ファイル内のhttp-pub-sub-adapter
要素の使用方法を示します。この例ではadapterの一意の識別子はremotePub
です。
<http-pub-sub-adapter> <name>remotePub</name> <server-url>http://localhost:9002/pubsub</server-url> <channel>/test1</channel> <event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type> <user>wlevs</user> <password>wlevs</password> </http-pub-sub-adapter>
4.64 idle-time
idle-time
要素を使用すると、キャッシュ・エントリがアクセスされないときにキャッシュ・エントリが能動的にキャッシュから削除されるまでの時間をミリ秒数単位で定義できます。デフォルトではidle-timeは設定されていません。この要素は動的に変更されます。この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のidle-time
要素の使用方法を示します。
<caching-system> <name>providerCachingSystem</name> <cache> <name>providerCache</name> <max-size>1000</max-size> <eviction-policy>FIFO</eviction-policy> <time-to-live>60000</time-to-live> <idle-time>120000</idle-time> <write-none/> <work-manager-name>JettyWorkManager</work-manager-name> <listeners asynchronous="false"> <work-manager-name>JettyWorkManager</work-manager-name> </listeners> </cache> </caching-system>
4.65 initial-delay
アダプタでinitial-delay
要素を使用すると、イベントの読取りを開始するまでの時間をナノ秒単位で指定できます。initial-delay
要素には、子も属性もありません。
次のコードは、イベント間隔が25 nanoseconds
、初期遅延が40秒であるCSVアダプタを示します。使用可能な単位は、nanoseconds、microseconds
、milliseconds
およびseconds
です。
<csv-adapter> <name>csv-inbound-adapter</name> <event-interval units="nanoseconds">25</event-interval> <initial-delay units="seconds">40</initial-delay> </csv-adapter>
4.66 inject-parameters
inject-parameters
要素を使用すると、イベント処理ネットワークのステージにイベント・インジェクションを構成できます。この要素には、次の子要素があり、属性はありません。
次の例に示すコンポーネント構成の一部は、イベント・インジェクション用にプロセッサを構成する方法を示しています。inject-parameters
要素のactive
子要素はインジェクションをオンにすることを指定し、channel-name
要素はインジェクトされる要素の送信先のHTTPパブリッシュ・サブスクライブ(HTTP pub-sub)チャネルを指定します。
<processor> <name>FindCrossRates</name> <inject-parameters> <active>true</active> <channel-name>/NonClusteredServer/fx/FindCrossRates/input</channel-name> </inject-parameters> <rules> <!-- Query rules omitted. --> </rules> </processor>
4.67 jaxb-mapper
jaxb-mapper
要素を使用すると、着信XMLおよびJSONデータを処理できます。この要素には、次の子要素があり、属性はありません。
子要素
例
次の例は構成ファイル内のjaxb-mapper
要素の使用方法を示します。
<rest-adapter> <name>httpInbound</name> <event-type-name>CallCenterActivity</event-type-name> <context-path>/testhttpadapter</context-path> </rest-adapter> <jaxb-mapper> <name>xmlMapperBean</name> <event-type-name>CallCenterActivity</event-type-name> <metadata>external_metadata_case1.xml</metadata> </jaxb-mapper> <csv-mapper> <name>csvMapperBean</name> <context-path>org.callcenter</context-path> <validate>false</validate> </csv-mapper>
4.68 jms-adapter
jms-adapter
要素を使用すると、JMSアダプタ・コンポーネントを定義できます。この要素には、次の子要素があり、属性はありません。
子要素
-
次のいずれか。
-
次のいずれか。
-
次のいずれか。
例
次の例はコンポーネント構成ファイル内のjms-adapter
要素の使用方法を示します。この例ではadapterの一意の識別子はjmsInbound-text
です。
<jms-adapter> <name>jmsInbound-text</name> <jndi-provider-url>t3://localhost:7001</jndi-provider-url> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <concurrent-consumers>1</concurrent-consumers> <session-transacted>false</session-transacted> </jms-adapter>
4.69 jndi-factory
オプションのjndi-factory
要素を使用すると、jms-adapter
またはrmi-adapterのJNDIファクトリを定義できます。Oracle Stream AnalyticsサーバーJMSのデフォルトのJNDIファクトリ名の値は、weblogic.jndi.WLInitialContextFactory
です。
この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のjndi-factory
要素の使用方法を示します。
<jms-adapter> <name>jmsInbound-text</name> <jndi-factory>weblogic.jndi.WLInitialContextFactory</jndi-factory> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <concurrent-consumers>1</concurrent-consumers> <session-transacted>false</session-transacted> </jms-adapter>
4.70 jndi-name
jndi-name
要素を使用すると、アプリケーションがRemote Method Invocation (RMI)の入力アダプタおよび出力アダプタを介して特定およびアクセスする必要があるコンポーネントのJava Naming and Directory Interface (JNDI)名を指定できます。
次の例はjndi-name
要素の使用方法を示します。
<rmi-adapter> <name>rmi-outbound-adapter</name> <jndi-name>RMIOutboundJNDIName</jndi-name> <jndi-provider-url>t3://localhost:7001</jndi-provider-url> <jndi-factory>weblogic.jndi.WLInitialContextFactory</jndi-factory> </rmi-adapter>
4.71 jndi-provider-url
jndi-provider-url
必須要素を使用すると、jms-adapter
のJNDIプロバイダURLを定義できます。この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のjndi-provider-url
要素の使用方法を示します。
<jms-adapter> <name>jmsInbound-text</name> <jndi-provider-url>t3://localhost:7001</jndi-provider-url> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <concurrent-consumers>1</concurrent-consumers> <session-transacted>false</session-transacted> </jms-adapter>
4.72 listeners
listeners
要素を使用すると、キャッシュ・リスナーの動作を定義できます。この要素には、work-manager-name
子要素およびasynchronous属性があります。
work-manager-name子要素は、リスナーの非同期的な起動に使用されるワーク・マネージャを指定します。同期起動を有効化すると、Oracle Stream Analyticsはワーク・マネージャの値を無視します。ワーク・マネージャがキャッシュそのものに指定されている場合、この値はリスナーのみを起動するためにオーバーライドします。
asynchronous属性は必須のBoolean
型であり、true
の場合はリスナーを非同期的に実行します。デフォルト値はfalse
です。
次の例はコンポーネント構成ファイル内のlisteners
要素の使用方法を示します。
<caching-system> <name>providerCachingSystem</name> <cache> <name>providerCache</name> <max-size>1000</max-size> <eviction-policy>FIFO</eviction-policy> <time-to-live>60000</time-to-live> <idle-time>120000</idle-time> <write-behind> <work-manager-name>JettyWorkManager</work-manager-name> <batch-size>100</batch-size> <buffer-size>100</buffer-size> <buffer-write-attempts>100</buffer-write-attempts> <buffer-write-timeout>100</buffer-write-timeout> </write-behind> <work-manager-name>JettyWorkManager</work-manager-name> <listeners asynchronous="false"> <work-manager-name>JettyWorkManager</work-manager-name> </listeners> </cache> </caching-system>
4.73 location
location
要素を使用して、診断プロファイルにおいてthroughput
要素の位置を定義します。この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のlocation
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <throughput> <throughput-interval> <amount>100000</amount> <unit>MICROSECONDS</unit> </throughput-interval> <average-interval> <amount>100000000</amount> <unit>NANOSECONDS</unit> </average-interval> <location> <application>diagnostic</application> <stage>AlertEventStream</stage> <direction>INBOUND</direction> </location> </throughput> </profile> </diagnostic-profiles>
4.74 max-latency
max-latency
要素を使用すると、診断プロファイルの最大待機時間計算を定義できます。この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のmax-latency
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <max-latency> <start-location> <application>diagnostic</application> <stage>MetricSubscriber</stage> <direction>INBOUND</direction> </start-location> <end-location> <application>diagnostic</application> <stage>MonitorProcessor</stage> <direction>OUTBOUND</direction> </end-location> </max-latency> </profile> </diagnostic-profiles>
4.75 max-size
max-size
要素は次の親要素で使用します。
-
channel
:max-size
子要素を使用すると、チャネルの最大サイズを指定できます。サイズがゼロのチャネルは、同期的にイベントを受け渡します。サイズがゼロでないチャネルはイベントを非同期的に処理し、リクエストされたサイズに従ってイベントをバッファリングします。max-threads
がゼロの場合、max-size
はゼロになります。デフォルト値は0 (ゼロ)です。 -
cache
:max-size
要素を使用すると削除またはページングが発生した後のメモリー内のキャッシュ要素数を定義できます。現状では最大キャッシュサイズは2^31-1エントリです。この要素は動的に変更されます。
この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のmax-size
要素の使用方法を示します。
<stream> <name>monitoring-control-stream</name> <max-size>10000</max-size> <max-threads>1</max-threads> </stream>
4.76 max-threads
max-threads
要素を使用すると、Oracle Stream Analyticsサーバーがchannel
のイベントを処理するために使用するスレッドの最大数を定義できます。この要素には、子要素も属性もありません。
デフォルト値は0 (ゼロ)です。max-size
属性が0の場合は、max-threads
の値の設定には影響がありません。
0に指定する場合、チャネルは受渡しのように機能します。max-threads > 0
の場合、チャネルは従来のブロッキング・キューのように機能し、アップストリーム・コンポーネントがイベントのプロデューサ、ダウンストリーム・コンポーネントがイベントのコンシューマになります。キューのサイズはmax-sizeの構成によって定義されます。キューからイベントを消費するスレッドは、最大でmax-threads
の数までとなります。
max-threads
は、再デプロイすることなく0から正の整数に(つまり、パス・スルーから複数スレッドに)変更できます。しかし、max-threads
を正の整数から0に(つまり、複数スレッドからパス・スルーに)変更する場合は、アプリケーションを再デプロイする必要があります。max-size
が0の場合は、この値の設定に影響はありません。
次の例は、ンポーネント構成ファイル内のmax-threads
要素の使用方法を示します。
<channel> <name>monitoring-control-stream</name> <max-size>10000</max-size> <max-threads>1</max-threads> </channel>
4.77 message-selector
message-selector
要素をJMSメッセージ・セレクタとともに使用すると、jms-adapter
でメッセージをフィルタできます。この要素には、子要素も属性もありません。
メッセージ・セレクタ式の構文はSQL92の条件式構文、メッセージ・ヘッダー、およびプロパティのサブセットに基づきます。たとえば、EventType
プロパティに基づいたメッセージを選択するには次を使用します。
EventType = 'News' OR 'Commentary'
次の例はコンポーネント構成ファイル内のmessage-selector
要素の使用方法を示します。
<jms-adapter> <name>jmsInbound-text</name> <connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <message-selector>EventType = 'News' OR 'Commentary'</message-selector> <session-transacted>false</session-transacted> </jms-adapter>
4.78 metadata
metadata
要素を使用すると、JAXBマッピングをカスタマイズするためのJAXB Boxy外部メタデータが含まれるファイルの名前を指定できます。この要素はオプションであり、子要素も属性もありません。
次の例は構成ファイル内のmetadata要素の使用方法を示します。
<rest-adapter> <name>httpInbound</name> <event-type-name>CallCenterActivity</event-type-name> <context-path>/testhttpadapter</context-path> </rest-adapter> <jaxb-mapper> <name>xmlMapperBean</name> <event-type-name>CallCenterActivity</event-type-name> <metadata>external_metadata_case1.xml</metadata> </jaxb-mapper> <csv-mapper> <name>csvMapperBean</name> <context-path>org.callcenter</context-path> <validate>false</validate> </csv-mapper>
4.79 name
要素の名前です。name
要素は次の親要素で使用します。
-
EPNコンポーネント:
name
要素を使用すると、このアプリケーション構成要素をアセンブリ・ファイル内の対応する要素に関連付けることができます。有効な値は、対応するアセンブリ・ファイルのid
属性です。 -
diagnostic-profiles
:name
要素を使用するとdiagnostic-profiles
要素およびそのprofile
子要素のそれぞれを一意で識別できます。 -
parameter
:name
要素を使用して、名前および値のペアの名前を定義します。
この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のname
要素の使用方法を示します。この例ではchannelの一意の識別子はmyDiagnosticProfiles
です。
<diagnostics-profiles> <name>myDiagnosticProfiles</name> <profile> ... </profile> </diagnostics-profiles>
4.80 netio
netio
要素を使用すると、コンポーネントのネットワーク入力/出力ポートを定義できます。
注意:
adapter
要素の子である場合、この要素は内部使用のみ可能です。
この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のnetio
要素の使用方法を示します。
<netio> <provider-name>providerCache</provider-name> <num-threads>1000</num-threads> </netio>
4.81 num-threads
num-threads
要素を使用すると、コンポーネントのネットワーク入力/出力ポートにおけるスレッド数を定義できます。この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のnum-threads
要素の使用方法を示します。
<netio> <provider-name>providerCache</provider-name> <num-threads>1000</num-threads> </netio>
4.82 obr-adapter
obr-adapter
アダプタを使用すると、イベントをJavaコードとして処理することにより、Oracle Business Rules (OBR)を評価し、結果に基づいてイベントをトリガーできます。OBRアダプタを使用すると、OBRロジックをCQLプロセッサのダウンストリームに追加できます。
この要素には、次の子要素があり、属性はありません。
次の例はOBRアダプタ構成を示します。
<processor> <name>helloworldProcessor</name> <rules> <query id="helloworldRule"> <!-- <![CDATA[ select * from helloworldInputChannel[range 10 slide 5] > --> select * from helloworldInputChannel[now] </query> </rules> </processor> <obr-adapter> <name>OBRAdapter</name> <dictionary-url>file:helloworld.rules</dictionary-url> <decision-function>handler1</decision-function> </obr-adapter>
4.83 offer-timeout
offer-timeout
要素を使用すると、イベント・キューが一杯で保留中の挿入(オファー)がブロックされている場合に、保留中のイベントが削除されるか例外が生成されるまでの時間を指定できます。fail-when-rejected
値がtrueに設定されている場合は例外が生成され、それ以外の場合はイベントが削除されます。この設定は、max-size
値が0より大きいイベント・キューにのみ適用されます。offer-timeout
値はナノ秒で指定する必要があります。デフォルトでは60秒です。
この要素には、子要素も属性もありません。
次の例では、イベント・キューが一杯の間に15秒経過するとEventProcessingException
を生成するように、チャネルを構成しています。
<channel> <name>QueuedChannel</name> <max-size>1000</max-size> <max-threads>1</max-threads> <offer-timeout>15000000000</offer-timeout> <fail-when-rejected>true</fail-when-rejected> </channel>
4.84 output-file
output-file
エントリを使用すると、CSVアウトバウンド・アダプタによってアウトバウンド・イベント・データが保存される場所を指定できます。この要素には、子要素も属性もありません。
append要素を使用すると、新しいファイルを作成するか、既存のファイルを上書きするか、既存のファイルに追加できます。
次の例はStockTradeCSVOutboundAdapterのアセンブリ・ファイル・エントリを示します。
<wlevs:adapter id="StockTradeCSVOutboundAdapter" provider="csv-outbound"> <wlevs:instance-property name="eventType" value="TradeEvent"/> <wlevs:instance-property name="outputFile" value="/scratch/mpawlan/oep9-19/oep/utils/load-generator/StockData.csv"/> <wlevs:instance-property name="append" value="false"/> </wlevs:adapter>
4.85 package-name
スキーマによって生成されたJAXBのクラスのオプションのパッケージ名です。設定されている場合、指定したパッケージ名により、EDLファイルから推測されたパッケージ名がオーバーライドされます。この要素には、子要素も属性もありません。
次の例はpackage-name
要素の使用方法を示します。
<edn-adapter> <name>ednOutboundAdapterJaxb</name> <edl-file>CallCenterEvents.edl</edl-file> <schema-file>callcenter.xsd</schema-file> <validate>true</validate> <package-name>org.callcenter</package-name> <raw-xml-content>false</raw-xml-content> <jndi-provider-url>vm://localhost</jndi-provider-url> <jndi-factory>org.apache.activemq.jndi.ActiveMQInitialContextFactory </jndi-factory> <user>test1</user> <password>test123</password> <delivery-mode>nonpersistent</delivery-mode> </edn-adapter>
4.86 param
param
要素を使用して、メッセージ・セレクタ値をmessage-selector
要素で指定されたパラメータ名と関連付けます。この要素には、子要素がなく、id
属性があります。id属性は必須で、タイプはString
であり、message-selector
要素に渡す値を識別します。
詳細は、「bindings (jms-adapter)」を参照してください。
次の例はコンポーネント構成ファイル内のparam
要素の使用方法を示します。この構成を使用するアプリケーションが、Oracle Stream Analyticsサーバーにデプロイされて、そのサーバーのcluster
要素のgroups
子要素にActiveActiveGroupBean_group1
が含まれている場合、CONDITION
パラメータはacctid > 400
になります。acctid
プロパティが400を超えるイベントは、アプリケーションにより処理されます。
<jms-adapter> <name>JMSInboundAdapter</name> <event-type>StockTick</event-type> <jndi-provider-url>t3://ppurich-pc:7001</jndi-provider-url> <destination-jndi-name>./Topic1</destination-jndi-name> <user>weblogic</user> <password>weblogic1</password> <work-manager>JettyWorkManager</work-manager> <concurrent-consumers>1</concurrent-consumers> <session-transacted>true</session-transacted> <message-selector>${CONDITION}</message-selector> <bindings> <group-binding group-id="ActiveActiveGroupBean_group1"> <param id="CONDITION">acctid > 400</param> </group-binding> <group-binding group-id="ActiveActiveGroupBean_group2"> <param id="CONDITION">acctid BETWEEN 301 AND 400</param> </group-binding> <group-binding group-id="ActiveActiveGroupBean_group3"> <param id="CONDITION">acctid BETWEEN 201 AND 300</param> </group-binding> <group-binding group-id="ActiveActiveGroupBean_group4"> <param id="CONDITION">acctid <= 200</param> </group-binding> </bindings> </jms-adapter>
4.87 parameter
parameter
要素を使用して、コンポーネントのname
およびvalue
パラメータを定義します。この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のparameter
要素の使用方法を示します。
<record-parameters> <dataset-name>tuple1</dataset-name> <event-type-list> <event-type>TupleEvent1</event-type> </event-type-list> <provider-name>test-rdbms-provider</provider-name> <store-policy-parameters> <parameter> <name>timeout</name> <value>300</value> <parameter> </store-policy-parameters> <batch-size>1</batch-size> <batch-time-out>10</batch-time-out> </record-parameters>
4.88 params
params
要素を使用すると、bindings (processor)
要素のパラメータを定義できます。この要素の値は単純型の値のカンマ区切りリストです。値の順序は、このbinding
に関連するOracle CQLルールにおけるパラメータの順序に対応している必要があります。
この要素には、子要素がなく、id
属性があります。id
属性は必須ではなく、タイプはString
であり、params
要素の一意の識別子です。
次の例はコンポーネント構成ファイル内のparams
要素の使用方法を示します。
<processor> <name>processor1</name> <record-parameters> <dataset-name>test1data</dataset-name> <event-type-list> <event-type>SimpleEvent</event-type> </event-type-list> <provider-name>test-rdbms-provider</provider-name> <batch-size>1</batch-size> <batch-time-out>10</batch-time-out> </record-parameters> <rules> <rule id="rule1"><![CDATA[ select stockSymbol, avg(price) as percentage from StockTick retain 5 events where stockSymbol=? having avg(price) > ? or avg(price) < ? ></rule> </rules> <bindings> <binding id="rule1"> <params>BEAS,10.0,-10.0</params> <params id="IBM">IBM,5.0,5.0</params> </binding> </bindings> </processor>
4.89 partition-order-capacity
partition-order-capacity
要素を使用すると、ordering-constraint属性がPARTITION_ORDEREDに設定されている場合に問合せパーティションの最大容量を定義できます。この要素には、子要素も属性もありません。
パラレル実行用のCQLプロセッサが構成されていて、ordering-constraint
属性がPARTITION_ORDEREDに設定されている場合、channel
コンポーネントでpartition-order-capacity
要素を設定します。
容量の値をより広い範囲に適用するために、サーバー構成ファイル内にこれを設定できます。「コンポーネント構成スキーマ」を参照してください。
次の例は、コンポーネント構成ファイル内のpartition-order-capacity
要素の使用方法を示します。
<channel> <name>MatchOutputChannel</name> <max-size>0</max-size> <max-threads>0</max-threads> <selector>match</selector> <partition-order-capacity>20</partition-order-capacity> </channel>
4.90 password
password
要素を使用すると、次の親要素でパスワードを定義できます。この要素には、子要素も属性もありません。
-
http-pub-sub-adapter
:password
要素を使用すると、Oracle Stream Analyticsアプリケーションがパブリッシュする対象となるHTTPパブリッシュ/サブスクライブ・サーバーがユーザー認証を要求する場合にユーザー・パスワードを定義できます。 -
jms-adapter
: Oracle Stream AnalyticsはJNDIInitialContext
を取得するときに、user
要素とpassword
要素(またはencrypted-password
要素)を使用します。Oracle Stream Analyticsは、javax.jms.ConnectionFactory
のcreateConnection
メソッドを呼び出して、JMS宛先(JMSキューまたはトピック)への接続を作成するときに、connection-user
要素と、connection-password
要素またはconnection-encrypted-password
要素(構成されている場合)を使用します。それ以外の場合、Oracle Stream Analyticsはuser
要素とpassword
要素(またはencrypted-password
要素)を使用します。 -
rmi-adapter:
password
要素を使用すると、Oracle WebLogic Serverに対するRMI認証用のユーザー・パスワードを定義できます。 -
edn-adapter:
password
要素を使用すると、Oracle SOA SuiteのEDNまたはJMS認証用のユーザー・パスワードを定義できます。
注意:
encrypted-password
またはpassword
のいずれかを使用します。ただし、両方を使用することはできません。
次の例はコンポーネント構成ファイル内のpassword
要素の使用方法を示します。
<http-pub-sub-adapter> <name>remotePub</name> <server-url>http://localhost:9002/pubsub</server-url> <channel>/test1</channel> <event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type> <user>wlevs</user> <password>wlevs</password> </http-pub-sub-adapter>
4.91 playback-parameters
playback-parameters
要素を使用すると、コンポーネントをテストするためのコンポーネントのイベント再生パラメータを定義できます。後のステージで、イベントBeanなどのアプリケーションでイベントを再生します。イベントBeanで、イベントを問い合せ、結果に基づいてアプリケーションを修正します。この要素には、次の子要素があり、属性はありません。
-
次のいずれか。
-
次のいずれか。
次の例はコンポーネント構成ファイル内のplayback-parameters
要素の使用方法を示します。
<playback-parameters> <dataset-name>tuple1</dataset-name> <event-type-list> <event-type>TupleEvent1</event-type> </event-type-list> <provider-name>test-rdbms-provider</provider-name> </playback-parameters>
4.92 priority
priority要素を使用すると、EDNにパブリッシュされたイベントのJMS優先度を設定できます。JMS APIは、最も優先度が低い0から最も優先度が高い9までの10レベルの優先度値を定義します。クライアントは、レベル0-4は通常の優先度の範囲、レベル5-9は至急の優先度の範囲として考慮する必要があります。デフォルトでは、優先度は4に設定されています。この要素には、子要素も属性もありません。
<jms-adapter> <name>jmsInbound-text</name> <jndi-provider-url>t3://localhost:7001</jndi-provider-url> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <priority>2</priority> <concurrent-consumers>1</concurrent-consumers> <session-transacted>false</session-transacted> </jms-adapter>
4.93 processor (Oracle CQL)
processor
要素を使用すると、Oracle CQLプロセッサ・コンポーネントを定義できます。この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のprocessor
要素の使用方法を示します。この例では、processorの一意の識別子はcqlProcessor
です。
<processor> <name>cqlProcessor</name> <rules> <view id="lastEvents" schema="cusip bid srcId bidQty ask askQty seq"><![CDATA[ select cusip, bid, srcId, bidQty, ask, askQty, seq from inputChannel[partition by srcId, cusip rows 1] ></view> <view id="bidask" schema="cusip bid ask"><![CDATA[ select cusip, max(bid), min(ask) from lastEvents group by cusip ></view> <view ...><![CDATA[ ... ></view> ... <view id="MAXBIDMINASK" schema="cusip bidseq bidSrcId bid askseq askSrcId ask bidQty askQty"><![CDATA[ select bid.cusip, bid.seq, bid.srcId as bidSrcId, bid.bid, ask.seq, ask.srcId as askSrcId, ask.ask, bid.bidQty, ask.askQty from BIDMAX as bid, ASKMIN as ask where bid.cusip = ask.cusip ></view> <query id="BBAQuery"><![CDATA[ ISTREAM(select bba.cusip, bba.bidseq, bba.bidSrcId, bba.bid, bba.askseq, bba.askSrcId, bba.ask, bba.bidQty, bba.askQty, "BBAStrategy" as intermediateStrategy, p.seq as correlationId, 1 as priority from MAXBIDMINASK as bba, inputChannel[rows 1] as p where bba.cusip = p.cusip) ></query> <query id="MarketRule"><![CDATA[ SELECT symbol, AVG(price) AS average, :1 AS market FROM StockTick [RANGE 5 SECONDS] WHERE symbol = :2 ></query> </rules> <bindings> <binding id="MarketRule"> <params id="nasORCL">NASDAQ, ORCL</params> <params id="nyJPM">NYSE, JPM</params> <params id="nyWFC">NYSE, WFC</params> </binding> </bindings> </processor>
4.94 profile
profile
要素を使用すると、診断プロファイルを定義できます。この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のprofile
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <max-latency> <start-location> <application>diagnostic</application> <stage>MetricSubscriber</stage> <direction>INBOUND</direction> </start-location> <end-location> <application>diagnostic</application> <stage>MonitorProcessor</stage> <direction>OUTBOUND</direction> </end-location> </max-latency> <average-latency> <start-location> <application>diagnostic</application> <stage>MetricSubscriber</stage> <direction>INBOUND</direction> </start-location> <end-location> <application>diagnostic</application> <stage>MonitorProcessor</stage> <direction>OUTBOUND</direction> </end-location> <threshhold> <amount>100</amount> <unit>MILLISECONDS</unit> </threshhold> </average-latency> <throughput> <throughput-interval> <amount>100000</amount> <unit>MICROSECONDS</unit> </throughput-interval> <average-interval> <amount>100000000</amount> <unit>NANOSECONDS</unit> </average-interval> <location> <application>diagnostic</application> <stage>AlertEventStream</stage> <direction>INBOUND</direction> </location> </throughput> </profile> </diagnostic-profiles>
4.95 query
query
要素を使用すると、コンポーネントのOracle CQL問合せを定義できます。この要素には、子要素がなく、次の属性があります。
表4-2 queryコンポーネント構成要素の属性
属性 | 説明 | データ型 | 必須? |
---|---|---|---|
|
この問合せの一意の識別子です。 |
|
はい。 |
|
アプリケーションのデプロイ時および実行時にこの問合せを実行します。 有効な値は |
|
いいえ。 |
|
イベントをシリアルではなくパラレルに処理できるパラレル問合せ実行を有効または無効にします。 この属性は、次の3つの値をサポートします。
|
文字列 |
いいえ。 |
|
パーティション間の順序付けの制約を緩和するための基準となるパーティション式(CQLコードで使用)。 |
文字列 |
いいえ。 |
次の例はコンポーネント構成ファイル内のquery
要素の使用方法を示します。
<processor> <name>cqlProcessor</name> <rules> <view id="lastEvents" schema="cusip bid srcId bidQty ask askQty seq"><![CDATA[ select cusip, bid, srcId, bidQty, ask, askQty, seq from inputChannel[partition by srcId, cusip rows 1] ></view> <view id="bidask" schema="cusip bid ask"><![CDATA[ select cusip, max(bid), min(ask) from lastEvents group by cusip ></view> <view ...><![CDATA[ ... ></view> ... <view id="MAXBIDMINASK" schema="cusip bidseq bidSrcId bid askseq askSrcId ask bidQty askQty"><![CDATA[ select bid.cusip, bid.seq, bid.srcId as bidSrcId, bid.bid, ask.seq, ask.srcId as askSrcId, ask.ask, bid.bidQty, ask.askQty from BIDMAX as bid, ASKMIN as ask where bid.cusip = ask.cusip ></view> <query id="BBAQuery"><![CDATA[ ISTREAM(select bba.cusip, bba.bidseq, bba.bidSrcId, bba.bid, bba.askseq, bba.askSrcId, bba.ask, bba.bidQty, bba.askQty, "BBAStrategy" as intermediateStrategy, p.seq as correlationId, 1 as priority from MAXBIDMINASK as bba, inputChannel[rows 1] as p where bba.cusip = p.cusip) ></query> </rules> </processor>
4.96 quickfix-adapter
quickfix-adapter
要素を使用すると、QuickFixアダプタを定義できます。QuickFixアダプタは、セキュリティ・トランザクションのリアルタイムな電子交換を処理するためのフル機能のメッセージング・エンジンです。この要素には、次の子要素があり、属性はありません。
次の構成ファイルは、QuickFixアダプタを示します。
<quickfix-adapter> <name>quickfixAdpater</name> <event-type>MyConfigEvent</event-type> <default-session description="default configuration"> ... <configuration description="identifier-message format"> <config-name>BeginString</config-name> <config-value>FIXT.0.1</config-value> </configuration> </default-session> <session description="ordertracker configuration"> <configuration description="identifier-acceptor"> <config-name>SenderCompID</config-name> <config-value>QA</config-value> </configuration> <configuration description="identifier-initiator"> <config-name>TargetCompID</config-name> <config-value>ORACLE</config-value> </configuration> </session> </quickfix-adapter>
4.97 raw-xml-content
raw-xml-content要素を使用すると、EDN XMLデータ転送をRAW XML (true
の場合)とJavaオブジェクト(false
の場合)のどちらとして表すかを指定できます。デフォルトは、false
です。この要素には、子要素も属性もありません。
次の例はraw-xml-content
要素の使用方法を示します。
<edn-adapter> <name>ednOutboundAdapterJaxb</name> <edl-file>CallCenterEvents.edl</edl-file> <schema-file>callcenter.xsd</schema-file> <validate>true</validate> <package-name>org.callcenter</package-name> <raw-xml-content>false</raw-xml-content> <jndi-provider-url>vm://localhost</jndi-provider-url> <jndi-factory>org.apache.activemq.jndi.ActiveMQInitialContextFactory </jndi-factory> <user>test1</user> <password>test123</password> <delivery-mode>nonpersistent</delivery-mode> </edn-adapter>
4.98 record-parameters
record-parameters
要素を使用すると、コンポーネントをテストするためのイベント・レコード・パラメータを定義できます。アプリケーションの実行中に、EPNコンポーネントから永続ストアにフローするイベントを記録します。この要素には、次の子要素があり、属性はありません。
-
次のいずれか。
次の例はコンポーネント構成ファイル内のrecord-parameters
要素の使用方法を示します。
<record-parameters> <dataset-name>tuple1</dataset-name> <event-type-list> <event-type>TupleEvent1</event-type> </event-type-list> <provider-name>test-rdbms-provider</provider-name> <batch-size>1</batch-size> <batch-time-out>10</batch-time-out> </record-parameters>
4.99 repeat
repeat
要素を使用すると、playback-parametersを繰り返すかどうかを定義できます。この要素には、子要素も属性もありません。
有効な値は次のとおりです。
-
true
-
false
次の例はコンポーネント構成ファイル内のduration
要素の使用方法を示します。
<playback-parameters> <dataset-name>tuple1</dataset-name> <event-type-list> <event-type>TupleEvent1</event-type> </event-type-list> <provider-name>test-rdbms-provider</provider-name> <store-policy-parameters> <parameter> <name>timeout</name> <value>300</value> <parameter> </store-policy-parameters> <time-range-offset> <start>2010-01-20T05:00:00</start> <duration>03:00:00</duration> </time-range-offset> <repeat>true</repeat> </playback-parameters>
4.100 rest-adapter
rest-adapter
要素を使用すると、Representational State Transfer (REST)プロトコルを介して外部クライアントからHTTPポスト・データを受信するRESTアダプタを定義できます。RESTアダプタは、XML、CSVおよびJavaScript Object Notation (JSON)の各形式でデータを受け入れ、このデータを、インバウンドRESTアダプタで構成されているOracle Stream Analyticsイベントに変換できます。
この要素には、次の子要素があり、属性はありません。
次のファイル例は、POSTデータを受信するためのrest-adapter
構成、着信XMLおよびJSONデータを処理するためのjaxb-mapper
構成、および着信CSVデータを処理するためのcsv-mapper
構成を示します。
<rest-adapter> <name>httpInbound</name> <event-type-name>CallCenterActivity</event-type-name> <context-path>/testhttpadapter</context-path> </rest-adapter> <jaxb-mapper> <name>xmlMapperBean</name> <event-type-name>CallCenterActivity</event-type-name> <metadata>external_metadata_case1.xml</metadata> </jaxb-mapper> <csv-mapper> <name>csvMapperBean</name> <context-path>org.callcenter</context-path> <validate>false</validate> </csv-mapper>
4.101 rest-outbound-adapter
rest-outbound-adapter
要素を使用すると、RESTプロトコルを介して外部クライアントにHTTP SENDデータを送信するRESTアダプタを定義できます。
4.102 rmi-adapter
rmi-adapter要素を使用すると、RMIアウトバウンド・アダプタを定義できます。RMIアウトバウンド・アダプタは、イベント情報をRMI接続に書き込みます。この要素には、次の子要素があり、属性はありません。
次の例はRMIアウトバウンド・アダプタ構成を示します。
<rmi-adapter> <name>rmi-outbound-adapter</name> <jndi-name>RMIOutboundJNDIName</jndi-name> <jndi-provider-url>t3://localhost:7001</jndi-provider-url> <jndi-factory>weblogic.jndi.WLInitialContextFactory</jndi-factory> </rmi-adapter>
4.103 rules
この要素を使用して、Oracle CQL プロセッサ(Oracle CQL)
のルールを作成します。この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のrules
要素の使用方法を示します。
<processor> <name>cqlProcessor</name> <rules> <view id="lastEvents" schema="cusip bid srcId bidQty ask askQty seq"><![CDATA[ select cusip, bid, srcId, bidQty, ask, askQty, seq from inputChannel[partition by srcId, cusip rows 1] ></view> <view id="bidask" schema="cusip bid ask"><![CDATA[ select cusip, max(bid), min(ask) from lastEvents group by cusip ></view> <view ...><![CDATA[ ... ></view> ... <view id="MAXBIDMINASK" schema="cusip bidseq bidSrcId bid askseq askSrcId ask bidQty askQty"><![CDATA[ select bid.cusip, bid.seq, bid.srcId as bidSrcId, bid.bid, ask.seq, ask.srcId as askSrcId, ask.ask, bid.bidQty, ask.askQty from BIDMAX as bid, ASKMIN as ask where bid.cusip = ask.cusip ></view> <query id="BBAQuery"><![CDATA[ ISTREAM(select bba.cusip, bba.bidseq, bba.bidSrcId, bba.bid, bba.askseq, bba.askSrcId, bba.ask, bba.bidQty, bba.askQty, "BBAStrategy" as intermediateStrategy, p.seq as correlationId, 1 as priority from MAXBIDMINASK as bba, inputChannel[rows 1] as p where bba.cusip = p.cusip) ></query> </rules> </processor>
4.104 schema
schema
要素を使用すると、ビューで使用するストリーム要素のスペース区切りリストを指定できます。schema
要素には、子要素も属性もありません。
次の例はOracle CQLルール内のschema要素の使用方法を示します。
<processor>
<name>cqlProcessor</name>
<rules>
<view id="lastEvents" schema="cusip bid ask"><![CDATA[
select cusip, bid, srcId, bidQty, ask, askQty, seq
from inputChannel[partition by srcId, cusip rows 1]
></view>
<view id="bidask" schema="cusip bid ask"><![CDATA[
select cusip, max(bid), min(ask)
from lastEvents
group by cusip
></view>
<view ...><![CDATA[
...
></view>
...
<view id="MAXBIDMINASK" schema="cusip bidseq bidSrcId bid askseq askSrcId ask bidQty askQty"><![CDATA[
select bid.cusip, bid.seq, bid.srcId as bidSrcId, bid.bid, ask.seq, ask.srcId as askSrcId, ask.ask, bid.bidQty, ask.askQty
from BIDMAX as bid, ASKMIN as ask
where bid.cusip = ask.cusip
></view>
<query id="BBAQuery"><![CDATA[
ISTREAM(select bba.cusip, bba.bidseq, bba.bidSrcId, bba.bid, bba.askseq, bba.askSrcId, bba.ask,
bba.bidQty, bba.askQty, "BBAStrategy" as intermediateStrategy, p.seq as correlationId, 1 as priority
from MAXBIDMINASK as bba, inputChannel[rows 1] as p where bba.cusip = p.cusip)
></query>
</rules>
4.105 schema-file
schema-file
要素を使用すると、検証用のスキーマの・ファイル名前を指定できます。schema
要素は、validate
要素がtrue
に設定されている場合に必要です。schema-file
要素には、子要素も属性もありません。
次の例は構成ファイル内のschema-file
要素の使用方法を示します。
<edn-adapter> <name>ednInboundAdapterJaxb</name> <edl-file>CallCenterEvents.edl</edl-file> <schema-file>callcenter.xsd</schema-file> <validate>true</validate> <package-name>org.callcenter</package-name> <raw-xml-content>false</raw-xml-content> <jndi-provider-url>vm://localhost</jndi-provider-url> <jndi-factory>org.apache.activemq.jndi.ActiveMQInitialContextFactory </jndi-factory> <user>test1</user> <password>test123</password> </edn-adapter>
4.106 selector
selector
要素を使用すると、どのアップストリームOracle CQLプロセッサの問合せがダウンストリームchannel
に結果を送信することを許可されるかを指定できます。この要素には、子要素も属性もありません。
概念
この図は、アップストリームOracle CQLプロセッサfilteredFanoutProcessor
に接続されたfilteredStream
チャネルを備えたEPNを示します。
次の問合せは、Oracle CQLプロセッサfilteredFanoutProcessor用として構成されています。
<processor> <name>filterFanoutProcessor</name> <rules> <query id="Yr3Sector"><![CDATA[ select cusip, bid, srcId, bidQty, ask, askQty, seq from priceStream where sector="3_YEAR" ></query> <query id="Yr2Sector"><![CDATA[ select cusip, bid, srcId, bidQty, ask, askQty, seq from priceStream where sector="2_YEAR" ></query> <query id="Yr1Sector"><![CDATA[ select cusip, bid, srcId, bidQty, ask, askQty, seq from priceStream where sector="1_YEAR" ></query> </rules> </processor>
Oracle CQLプロセッサに複数の問合せを指定する場合、デフォルトでは、すべての問合せ結果がプロセッサのアウトバウンド・チャネルに送信されます(filteredStream
)。オプションで、コンポーネント構成ソースにおいて、次の例に示すように、channel
要素のselector
子要素を使用して、結果をチャネルに送信する1つ以上のOracle CQL問合せ名の空白区切りのリストを指定できます。この例では、問合せYr3Sector
およびYr2Sector
の問合せ結果はfilteredStream
に送信されますが、問合せYr1Sector
の問合せ結果は送信されません。
<channel> <name>filteredStream</name> <selector>Yr3Sector Yr2Sector</selector> </channel>
アップストリーム・プロセッサに問合せを作成する前に、selector
でchannel
要素を構成することもできます。この場合、selector
内の名前と一致する問合せ名を指定する必要があります。
注意:
selector
属性はアップストリーム・ステージがOracle CQLプロセッサの場合のみ該当します。
例
次の例はコンポーネント構成ファイル内のselector
要素の使用方法を示します。
<processor> <name>PatternProcessor</name> <rules> <query id="match"><![CDATA[ select T.firstW as firstw, T.lastZ as lastz, T.price as price from StockInputsStream MATCH_RECOGNIZE ( MEASURES A.c1 as firstW, last(Z.c1) as lastZ, A.c2 as price PATTERN(A W+ X+ Y+ Z+) DEFINE A as A.c1 = A.c1, W as W.c2 < prev(W.c2), X as X.c2 > prev(X.c2), Y as Y.c2 < prev(Y.c2), Z as Z.c2 > prev(Z.c2)) as T ></query> <query id="stock"><![CDATA[ select c1 as ts, c2 as price from StockInputsStream ></query> </rules> </processor> <channel> <name>StockOutputChannel</name> <selector>stock</selector> </channel> <channel> <name>MatchOutputChannel</name> <selector>match</selector> </channel>
4.107 server-context-path
server-context-path
必須要素を使用すると、パブリッシュ用のすべてのローカルhttp-pub-sub-adapterについてサーバーへのパスを指定できます。デフォルト値は/pubsub
です。新たにローカルHTTPパブリッシュ/サブスクライブ・サーバーを作成、またはデフォルトの構成を変更した場合は、該当するpath
子要素の値を指定します。
注意:
リモートHTTP pub-subアダプタにはserver-context-path
要素を指定しないでください。
この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のserver-context-path
要素の使用方法を示します。
<http-pub-sub-adapter> <name>localPub</name> <server-context-path>/pubsub</server-context-path> <channel>/test1</channel> </http-pub-sub-adapter>
4.108 server-url
server-url
必須要素を使用すると、パブリッシュ用またはサブスクライブ用のすべてのリモートhttp-pub-sub-adapterについてサーバーへのパスを指定できます。リモートHTTPパブリッシュ/サブスクライブ・サーバーには、Oracle Stream Analyticsの別のインスタンス、WebLogic Serverインスタンス、または任意のサード・パーティHTTPパブリッシュ/サブスクライブ・サーバーを指定できます。次に例を示します。
http://myhost.com:9102/pubsub
注意:
ローカルHTTP pub-subアダプタにはserver-url
要素オプションを指定しないでください。
この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のserver-url
要素の使用方法を示します。この例ではremotePublisher
アダプタがイベントをパブリッシュする対象のリモートHTTPパブリッシュ/サブスクライブ・サーバーのURLはhttp://myhost.com:9102/pubsub
となります。
<http-pub-sub-adapter> <name>remotePub</name> <server-url>http://myhost.com:9102/pubsub</server-url> <channel>/test1</channel> <event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type> <user>wlevs</user> <password>wlevs</password> </http-pub-sub-adapter>
4.109 session
複数のセッションが必要な場合は、default-session
要素で共通構成をグループ化します。デフォルトでは、すべてのsession
タグが、default-session
タグで宣言されているすべての要素を継承します。
4.110 session-ack-mode-name
session-ack-mode-name
を使用すると、jms-adapterのセッション確認モード名を定義できます。この要素には、子要素も属性もありません。
javax.jms.Session
の有効な値は、次のとおりです。デフォルト値はAUTO_ACKNOWLEDGE
です。
-
AUTO_ACKNOWLEDGE
: この確認モードを使用するとセッションが受信コールから正常に戻された場合か、またはセッションがメッセージ処理のためにコールしたメッセージ・リスナーが正常に戻る場合のいずれでもセッションは自動的にクライアントがメッセージを受信したことを確認します。 -
CLIENT_ACKNOWLEDG
: この確認モードを使用するとメッセージの確認メソッドをコールすることによって、クライアントは消費されたメッセージを確認します。 -
DUPS_OK_ACKNOWLEDGE
: この確認モードはセッションにメッセージ送信の確認を遅延するように命令します。
次の例はコンポーネント構成ファイル内のsession-ack-mode-name
要素の使用方法を示します。
<jms-adapter> <name>jmsInbound-text</name> <connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <session-ack-mode-name>AUTO_ACKNOWLEDGE</session-ack-mode-name> <session-transacted>false</session-transacted> </jms-adapter>
4.111 session-transacted
この要素を使用するとセッションをインバウンドまたはアウトバウンドのjms-adapter
用に処理するかどうかを定義できます。この要素には、子要素も属性もありません。
有効な値は次のとおりです。
-
true
-
false
次の例はコンポーネント構成ファイル内のsession-transacted
要素の使用方法を示します。
<jms-adapter> <name>jmsInbound-text</name> <connection-jndi-name>weblogic.jms.ConnectionFactory</connection-jndi-name> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <session-ack-mode-name>AUTO_ACKNOWLEDGE</session-ack-mode-name> <session-transacted>false</session-transacted> </jms-adapter>
4.112 source-url
source-url
エントリを使用すると、インバウンド・イベント・データが含まれるファイルをCSVインバウンド・アダプタが検索できる場所を指定できます。この要素には、子要素も属性もありません。
次の例はStockTradeCSVInboundAdapterのアセンブリ・ファイル・エントリを示します。
<wlevs:adapter id="StockTradeCSVInboundAdapter" provider="csv-inbound">
<wlevs:listener ref="AdapterOutputChannel"/>
<wlevs:instance-property name="eventType" value="TradeEvent"/>
<wlevs:instance-property name="sourceUrl" value="file:////scratch/mpawlan/oep9-19/oep/utils/load-generator/StockData.csv"/>
</wlevs:adapter>
4.113 stage
stage
要素を使用して、診断プロファイルのstart-location
要素またはend-location
要素のステージを定義します。有効な値は、イベント処理ネットワーク(EPN)における既存のステージ名です。
次の例はコンポーネント構成ファイル内のstage
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <max-latency> <collect-interval> <amount>1000</amount> <unit>s</unit> </collect-interval> <name>testProfile0MaxLat</name> <start-location> <application>diagnostic</application> <stage>MetricSubscriber</stage> <direction>INBOUND</direction> </start-location> <end-location> <application>diagnostic</application> <stage>MonitorProcessor</stage> <direction>OUTBOUND</direction> </end-location> </max-latency> </profile> </diagnostic-profiles>
4.114 start
start
要素を使用して、time-range
、time-range-offset
またはschedule-time-range-offset
要素の開始時間を定義します。この要素には、子要素も属性もありません。
開始時間を次のXMLスキーマのdateTime
値の形式として表します。
yyyy-mm-ddThh:mm:ss
たとえば、開始を2010年1月20日午前5時、終了を2010年1月20日午後6時に指定するには、次のように入力します。
<time-range> <start>2010-01-20T05:00:00</start> <end>2010-01-20T18:00:00</end> </time-range>
XMLスキーマのdateTime
形式の完全な詳細は、http://www.w3.org/TR/xmlschema-2/#dateTime-lexical-representation
を参照してください。
次の例はコンポーネント構成ファイル内のstart
要素の使用方法を示します。
<record-parameters> <dataset-name>tuple1</dataset-name> <event-type-list> <event-type>TupleEvent1</event-type> </event-type-list> <provider-name>test-rdbms-provider</provider-name> <store-policy-parameters> <parameter> <name>timeout</name> <value>300</value> <parameter> </store-policy-parameters> <time-range> <start>2010-01-20T05:00:00</start> <end>2010-01-20T18:00:00</end> </time-range> <batch-size>1</batch-size> <batch-time-out>10</batch-time-out> </record-parameters>
4.115 start-location
start-location
要素を使用すると、診断プロファイルの開始位置を定義できます。この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のstart-location
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <max-latency> <collect-interval> <amount>1000</amount> <unit>s</unit> </collect-interval> <name>testProfile0MaxLat</name> <start-location> <application>diagnostic</application> <stage>MetricSubscriber</stage> <direction>INBOUND</direction> </start-location> <end-location> <application>diagnostic</application> <stage>MonitorProcessor</stage> <direction>OUTBOUND</direction> </end-location> </max-latency> </profile> </diagnostic-profiles>
4.116 start-stage
start-stage
要素を使用すると、診断プロファイルの開始ステージを定義できます。この要素には、子要素も属性もありません。
有効な値は、イベント処理ネットワーク(EPN)における既存のステージ名です。
次の例はコンポーネント構成ファイル内のstart-stage
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <max-latency> <start-location> <application>diagnostic</application> <stage>MetricSubscriber</stage> <direction>INBOUND</direction> </start-location> <end-location> <application>diagnostic</application> <stage>MonitorProcessor</stage> <direction>OUTBOUND</direction> </end-location> </max-latency> </profile> </diagnostic-profiles>
4.117 threshold
threshold
要素を使用すると、しきい値を定義できます。このしきい値を超えると、Oracle Stream Analyticsサーバーは監視イベントをログに記録します。この要素は診断プロファイルのaverage-latency
内でのみ適用できます。
この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のthreshold
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <average-latency> <start-location> <application>diagnostic</application> <stage>MetricSubscriber</stage> <direction>INBOUND</direction> </start-location> <end-location> <application>diagnostic</application> <stage>MonitorProcessor</stage> <direction>OUTBOUND</direction> </end-location> <threshhold> <amount>100</amount> <unit>MILLISECONDS</unit> </threshhold> </average-latency> </profile> </diagnostic-profiles>
4.118 throughput
throughput
要素を使用すると、診断プロファイルのスループットを定義できます。
次の例はコンポーネント構成ファイル内のthroughput
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <throughput> <throughput-interval> <amount>100000</amount> <unit>MICROSECONDS</unit> </throughput-interval> <average-interval> <amount>100000000</amount> <unit>NANOSECONDS</unit> </average-interval> <location> <application>diagnostic</application> <stage>AlertEventStream</stage> <direction>INBOUND</direction> </location> </throughput> </profile> </diagnostic-profiles>
4.119 throughput-interval
throughput-interval
要素を使用すると、診断プロファイルのスループット間隔を定義できます。この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のthroughput-interval
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <throughput> <throughput-interval> <amount>100000</amount> <unit>MICROSECONDS</unit> </throughput-interval> <average-interval> <amount>100000000</amount> <unit>NANOSECONDS</unit> </average-interval> <location> <application>diagnostic</application> <stage>AlertEventStream</stage> <direction>INBOUND</direction> </location> </throughput> </profile> </diagnostic-profiles>
4.120 time-to-live
time-to-live
要素を使用すると、エントリがキャッシュされる時間の最大数をミリ秒で定義できます。デフォルト値はinfinite
です。この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内の存続時間
要素の使用方法を示します。
<caching-system> <name>providerCachingSystem</name> <cache> <name>providerCache</name> <max-size>1000</max-size> <eviction-policy>FIFO</eviction-policy> <time-to-live>60000</time-to-live> <idle-time>120000</idle-time> <write-none/> <work-manager-name>JettyWorkManager</work-manager-name> <listeners asynchronous="false"> <work-manager-name>JettyWorkManager</work-manager-name> </listeners> </cache> </caching-system>
4.121 trace-parameters
trace-parameters
要素を使用すると、イベント処理ネットワークのステージにイベント・トレースを構成できます。この要素には、次の子要素があり、属性はありません。
次の例に示すコンポーネント構成の一部は、イベント・トレース用にプロセッサを構成する方法を示しています。trace-parameters
要素のactive
子要素はトレースをオンにすることを指定し、channel-name
要素はトレースされる要素の送信先のHTTPパブリッシュ・サブスクライブ(HTTP pub-sub)チャネルを指定します。
<processor> <name>FindCrossRates</name> <trace-parameters> <active>true</active> <channel-name>/NonClusteredServer/fx/FindCrossRates/output</channel-name> </trace-parameters> <rules> <!-- Query rules omitted. --> </rules> </processor>
4.122 unit
unit
要素を使用すると、amount
要素の期間の単位を定義できます。この要素には、子要素も属性もありません。
有効な値は次のとおりです。
-
NANOSECONDS
-
MICROSECONDS
-
MILLISECONDS
-
SECONDS
-
MINUTES
-
HOURS
-
DAYS
次の例はコンポーネント構成ファイル内のunit
要素の使用方法を示します。
<diagnostic-profiles> <name>myselfprofiles</name> <profile> <name>testProfile0</name> <enabled>true</enabled> <start-stage>MetricSubscriber</start-stage> <max-latency> <collect-interval> <amount>1000</amount> <unit>s</unit> </collect-interval> <name>testProfile0MaxLat</name> <start-location> <application>diagnostic</application> <stage>MetricSubscriber</stage> <direction>INBOUND</direction> </start-location> <end-location> <application>diagnostic</application> <stage>MonitorProcessor</stage> <direction>OUTBOUND</direction> </end-location> </max-latency> </profile> </diagnostic-profiles>
4.123 user
user
要素は次の親要素で使用します。
-
http-pub-sub-adapter:
user
要素を使用すると、Oracle Stream Analyticsアプリケーションがパブリッシュする対象となるHTTPパブリッシュ/サブスクライブ・サーバーがユーザー認証を要求する場合に、ユーザー名を定義できます。 -
jms-adapter: Oracle Stream AnalyticsはJNDI
InitialContext
を取得するときに、user要素とpassword
要素(またはencrypted-password
要素)を使用します。Oracle Stream Analyticsは、javax.jms.ConnectionFactory
のcreateConnection
メソッドを呼び出して、JMS宛先(JMSキューまたはトピック)への接続を作成するときに、connection-user
要素と、connection-password
要素またはconnection-encrypted-password
要素(構成されている場合)を使用します。それ以外の場合、Oracle Stream Analyticsはuser
要素とpassword
要素(またはencrypted-password
要素)を使用します。 -
rmi-adapter:
user
要素は、Oracle WebLogic Serverに対するRMI認証用として使用します。 -
edn-adapter:
user
要素は、Oracle SOA SuiteのEDNまたはJMS認証用として使用します。
この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のuser
要素の使用方法を示します。
<http-pub-sub-adapter> <name>remotePub</name> <server-url>http://localhost:9002/pubsub</server-url> <channel>/test1</channel> <event-type>com.bea.wlevs.tests.httppubsub.PubsubTestEvent</event-type> <user>wlevs</user> <password>wlevs</password> </http-pub-sub-adapter>
4.124 validate
validate
要素を使用すると、JAXBのマーシャリングおよびアンマーシャリング時にスキーマの検証を実行できます。検証を有効にするにはtrue
に設定し、検証を無効にするにはfalse
に設定します。
validate
要素には、子要素も属性もありません。
次の例は構成ファイル内のvalidate要素の使用方法を示します。
<edn-adapter> <name>ednInboundAdapterJaxb</name> <edl-file>CallCenterEvents.edl</edl-file> <schema-file>callcenter.xsd</schema-file> <validate>true</validate> <package-name>org.callcenter</package-name> <raw-xml-content>false</raw-xml-content> <jndi-provider-url>vm://localhost</jndi-provider-url> <jndi-factory>org.apache.activemq.jndi.ActiveMQInitialContextFactory </jndi-factory> <user>test1</user> <password>test123</password> </edn-adapter>
4.125 value
value
要素を使用して、parameter
要素の値を定義します。この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のvalue
要素の使用方法を示します。
<record-parameters> <dataset-name>tuple1</dataset-name> <event-type-list> <event-type>TupleEvent1</event-type> </event-type-list> <provider-name>test-rdbms-provider</provider-name> <store-policy-parameters> <parameter> <name>timeout</name> <value>300</value> <parameter> </store-policy-parameters> <batch-size>1</batch-size> <batch-time-out>10</batch-time-out> </record-parameters>
4.126 view
view
要素を使用すると、コンポーネントのOracle CQLビューを定義できます。この要素には、子要素がなく、次の属性があります。
表4-3 viewコンポーネント構成要素の属性
属性 | 説明 | データ型 | 必須? |
---|---|---|---|
|
この問合せの一意の識別子です。 |
|
はい。 |
|
アプリケーションのデプロイ時および実行時にこの問合せを実行します。 有効な値は |
|
いいえ。 |
|
イベントをシリアルではなくパラレルに処理できるパラレル問合せ実行を有効または無効にします。 この属性は、次の3つのうち1つの値をサポートします。
|
文字列 |
いいえ。 |
|
パーティション間の順序付けの制約を緩和するための基準となるパーティション式(CQLコードで使用)。 |
文字列 |
いいえ。 |
|
ビューで使用されるstream要素のスペース区切りのリストです。 |
スペース区切りのトークンの |
いいえ。 |
次の例はコンポーネント構成ファイル内のview
要素の使用方法を示します。
<processor> <name>cqlProcessor</name> <rules> <view id="lastEvents" schema="cusip bid srcId bidQty ask askQty seq"><![CDATA[ select cusip, bid, srcId, bidQty, ask, askQty, seq from inputChannel[partition by srcId, cusip rows 1] ></view> <view id="bidask" schema="cusip bid ask"><![CDATA[ select cusip, max(bid), min(ask) from lastEvents group by cusip ></view> <view ...><![CDATA[ ... ></view> ... <view id="MAXBIDMINASK" schema="cusip bidseq bidSrcId bid askseq askSrcId ask bidQty askQty"><![CDATA[ select bid.cusip, bid.seq, bid.srcId as bidSrcId, bid.bid, ask.seq, ask.srcId as askSrcId, ask.ask, bid.bidQty, ask.askQty from BIDMAX as bid, ASKMIN as ask where bid.cusip = ask.cusip ></view> <query id="BBAQuery"><![CDATA[ ISTREAM(select bba.cusip, bba.bidseq, bba.bidSrcId, bba.bid, bba.askseq, bba.askSrcId, bba.ask, bba.bidQty, bba.askQty, "BBAStrategy" as intermediateStrategy, p.seq as correlationId, 1 as priority from MAXBIDMINASK as bba, inputChannel[rows 1] as p where bba.cusip = p.cusip) ></query> </rules> </processor>
4.127 work-manager
work-manager
要素を使用すると、jms-adapter
のワーク・マネージャ名を定義できます。この要素には、子要素も属性もありません。
有効な値は、Oracle Stream Analyticsサーバー・ファイルのwork-manager
の子要素name
で指定された名前です。デフォルト値は、アプリケーション自身に構成されているワーク・マネージャです。
次の例はコンポーネント構成ファイル内のwork-manager
要素の使用方法を示します。
<jms-adapter> <name>jmsInbound-text</name> <jndi-provider-url>t3://localhost:7001</jndi-provider-url> <destination-name>JMSServer-0/Module1!Queue1</destination-name> <user>weblogic</user> <password>weblogic</password> <work-manager>JettyWorkManager</work-manager> <concurrent-consumers>1</concurrent-consumers> <session-transacted>false</session-transacted> </jms-adapter>
4.128 work-manager-name
work-manager-name要素を使用すると、cache
のワーク・マネージャを定義できます。この要素には、子要素も属性もありません。
listeners
要素にはwork-manager-name
という単一の子要素があり、これが非同期的なリスナーの起動に使用されるワーク・マネージャを指定します。この値は、同期的起動が有効化されている場合は無視されます。ワーク・マネージャがキャッシュそのものに指定されている場合、この値はリスナーのみを起動するためにオーバーライドします。
有効な値は、Oracle Stream Analyticsサーバー・ファイルのwork-manager
の子要素name
で指定された名前です。デフォルト値は、アプリケーション自身に構成されているワーク・マネージャです。
次の例はコンポーネント構成ファイル内のwork-manager-name
要素の使用方法を示します。
<cache> <name>providerCache</name> <max-size>1000</max-size> <eviction-policy>FIFO</eviction-policy> <time-to-live>60000</time-to-live> <idle-time>120000</idle-time> <write-none/> <work-manager-name>JettyWorkManager</work-manager-name> <listeners asynchronous="false"> <work-manager-name>JettyWorkManager</work-manager-name> </listeners> </cache>
4.129 write-behind
write-behind
要素を使用すると、キャッシュ・ストアへの非同期的な書込みを指定できます。キャッシュ・ストアは、キャッシュ・エントリの作成または更新の後で各スレッドから起動されます。この要素は動的に変更されます。
この要素には、次の子要素があり、属性はありません。
次の例はコンポーネント構成ファイル内のwrite-behind
要素の使用方法を示します。
<caching-system> <name>providerCachingSystem</name> <cache> <name>providerCache</name> <max-size>1000</max-size> <eviction-policy>FIFO</eviction-policy> <time-to-live>60000</time-to-live> <idle-time>120000</idle-time> <write-behind> <work-manager-name>JettyWorkManager</work-manager-name> <batch-size>100</batch-size> <buffer-size>100</buffer-size> <buffer-write-attempts>100</buffer-write-attempts> <buffer-write-timeout>100</buffer-write-timeout> </write-behind> <work-manager-name>JettyWorkManager</work-manager-name> <listeners asynchronous="false"> <work-manager-name>JettyWorkManager</work-manager-name> </listeners> </cache> </caching-system>
4.130 write-none
write-none
要素を使用すると、キャッシュ・ストアへ書込みを行わないように指定できます。デフォルトの書込みポリシーでは書込みは行われません。この要素は動的に変更できます。この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のwrite-none
要素の使用方法を示します。
<caching-system> <name>providerCachingSystem</name> <cache> <name>providerCache</name> <max-size>1000</max-size> <eviction-policy>FIFO</eviction-policy> <time-to-live>60000</time-to-live> <idle-time>120000</idle-time> <write-none/> <work-manager-name>JettyWorkManager</work-manager-name> <listeners asynchronous="false"> <work-manager-name>JettyWorkManager</work-manager-name> </listeners> </cache> </caching-system>
4.131 write-through
write-through要素を使用すると、キャッシュ・ストアへの同期的な書込みを指定できます。エントリが作成または更新されると、書込みが発生します。この要素は動的に変更できます。
この要素には、子要素も属性もありません。
次の例はコンポーネント構成ファイル内のwrite-through
要素の使用方法を示します。
<caching-system> <name>providerCachingSystem</name> <cache> <name>providerCache</name> <max-size>1000</max-size> <eviction-policy>FIFO</eviction-policy> <time-to-live>60000</time-to-live> <idle-time>120000</idle-time> <write-through/> <work-manager-name>JettyWorkManager</work-manager-name> <listeners asynchronous="false"> <work-manager-name>JettyWorkManager</work-manager-name> </listeners> </cache> </caching-system>