ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Edge Analyticsスタート・ガイド
12cリリース(12.1.3)
E59415-02
  目次へ移動
目次

前
次
 

1 概要

Oracle Edge Analyticsは、埋込み環境(Java Embedded Suite (JES)でサポートされている環境など)のイベント処理アプリケーションをサポートするために設計されたイベント処理サーバーです。Oracle Edge Analyticsの機能は、Oracle Event Processingの機能のサブセットとなっています。

Oracle Edge Analyticsにはderbyライブラリとjerseyライブラリが組み込まれているため、Java Embedded Suite (JES)への依存度は少なくなっています。

このガイドでは、Oracle Edge Analyticsを紹介し、インストール情報について説明します。Oracle Event Processingの詳細は、Oracle Event Processingスタート・ガイドを参照してください。

この章の内容は次のとおりです。

1.1 概要

イベント処理アプリケーションは、イベントを表す大量のストリーミング・データを受け取る可能性があり、そのイベント・データに基づいてリアルタイムで応答します。Oracle Edge Analyticsは、多くの場合イベント・ソースまたはその近くにある埋込み環境にデプロイされたアプリケーションをサポートします。これらの環境には、環境条件などのセンサーや、車両またはモバイル機器などの移動するソースが含まれます。

これらの場所にイベント処理アプリケーションをデプロイすることにより、イベント・ソースまたはその近くにあるイベントをフィルタ処理し、エンタープライズ・サーバー上のOracle Event Processingを含む、その他のサーバー・リソースの中を流れるネットワーク・トラフィックの量を減らすことができます。

このリリースでOracle Edge AnalyticsはEquinox 3.6からEquinox 3.8.1に移行されました。

Oracle Edge Analyticsには、Oracle Event Processingで使用可能な機能のサブセットが含まれます。また、埋込み環境に固有の機能も含まれます。含まれている機能および省略されている機能のリストは、機能を参照してください。

1.1.1 ユース・ケース

この項のユース・ケースでは、Oracle Edge Analyticsに固有の用途を説明します。

温度分析

ある会社が、部分的に住宅用サーモスタットの温度イベントを監視することにより、スマート・ホーム・サービスを提供しています。この会社では、イベント分析に対してよりきめ細かな制御を行い、ネットワーク・トラフィックを削減したいと考えています。

会社では、多くの場所に設置されているサーモスタットからインターネットを介して温度イベントを受信しています。サーモスタットから得られたデータを使用して、パターンおよび考えられるアラート条件を特定します。

サーモスタット装置に埋め込まれているOracle Edge Analyticsアプリケーション内で、Oracle CQL問合せにより、イベント・データが集計され、しきい値分析が実行されてから、インターネットを介してイベントが送信されます。結果的に、受信されたイベントは、注目に値するものとすでに見なされています。

サーバー室の監視

データ管理デバイスおよびサービスを提供するある企業は、総所有コストを削減するため、データ・センターのコーディネーションとエネルギ管理を改善する必要があります。この企業にとって必要なのは、より詳細なセンサーおよびデータ・センターのレポートです。

この企業は現在、異種リソースからエネルギー使用状況に関するセンサー・データを受信しています。各センサーからのデータを個別に分析し、その妥当性を確認した上で、他のセンサーからのデータと集約し、エネルギーをより効率的に使用できるパターンを特定する必要があります。

個別にデプロイされるOracle Event Processingアプリケーションは、2層のアプローチを提供します。1つの層では、ネットワークのいちばん端にあるセンサーが、データをゲートウェイ・デバイスに送信するイベント・ソースとなっています。これらのデバイスではJava Standard Edition EmbeddedとOracle Edge Analyticsが実行されています。

デバイス上で実行されているOracle Edge Analyticsアプリケーションは、Oracle Continuous Query Language (Oracle CQL)を使用して、センサーによって生成されたイベントを問合せ、フィルタ処理します。フィルタリングの条件を満たすイベント・データのみが、Oracle Event Processingアプリケーションが稼働するデータセンターのバックエンド・サーバーに送信されます。サーバー上のOracle Event Processingアプリケーションは、必要に応じて警告を送信し、システム全体からデータを集計および相関付けして一貫性の問題を識別し、パターンに関するレポートで使用するデータを生成します。

送電網の近代化

送電網の再起動を回避し数百万ドルのコスト削減を実現するため、フィールド・ネットワークの監視を検討している企業があります。通信の確立には軽量のフレームワークを使用するIPを使用する必要があります。

デプロイしたEDGEデバイスがOracle Edge Analyticsを使用してノード間の通信を確立し、マスターEDGEデバイスが電圧情報や電気品質、健全性ステータスを中央の管理システムに送信します。このソリューションで運用コストを大幅に削減できます。

1.1.2 機能

この項では、Oracle Edge Analyticsでサポートされている機能とサポートされていない機能を示します。

Oracle Edge Analyticsには、Oracle Event Processingで提供されている機能のサブセットが含まれます。このサブセットは、埋込み環境におけるイベント処理の特定のアプリケーション・ニーズをサポートします。

注意:

ツールによってサポートされていない、埋込みアプリケーション内の機能の使用に関しては、ツール関連の警告はありません。Oracle Edge Analyticsアプリケーションの開発にOracle JDeveloperを使用する際は、サポートされている機能のみを使用してください。

表1-1 Oracle Edge Analyticsに含まれている機能

機能 備考

プログラミング・モデル

従来のOracle Event Processingと同様に、埋込みアプリケーションをイベント処理ネットワーク(EPNs)として開発します。高可用性およびスケーラビリティのチューニングをサポートする機能を含め、プログラミング・モデルの一部の機能はサポートされていません

Oracle (CQL)

Oracle CQLは、表1-2に示されているデータ・カートリッジによって提供される機能を除き、サポートされます。

Javaデータ・カートリッジ

Javaデータ・カートリッジは、Oracle CQLコードからJavaコードを起動する機能によりOracle CQLを強化します。

データ・ソースへのアクセス

JDBCドライバが組込みプロファイルから除外されている場合でも、このリリースではデータ・ソースを使用したJDBC経由のデータベース接続がサポートされています。データ・ソースは、config.xmlファイルを使用した標準の方法で構成できます。Oracle Edge Analytics 12cリリースには、Java DB (Derby) embedded用のJDBCドライバとOracle Database用のJDBCドライバが組み込まれています。データベースへのアクセスの詳細は、アプリケーションおよび開発フレームワークを参照してください。

RESTful Webサービス

Java Embedded Suiteに含まれているJersey JAX-RSサポートを通して、RESTful Webサービスを実装できます。詳細は、「REST Webサービスのサポート」を参照してください。

ローカル・キャッシュ

含まれているローカル・キャッシュ・サービスを使用できます。このリリースではCoherenceキャッシュはサポートされていません。キャッシュのサポートの詳細は、アプリケーションおよび開発フレームワークを参照してください。

セキュリティ

認証、SSLおよびユーティリティ(policygencssconfigおよびencryptMSAConfigなど)を含みます。

Jetty (HTTPS)サービス

Oracle Edge AnalyticsのJettyの詳細は、アプリケーションおよび開発フレームワークを参照してください。

構成

構成ウィザードのサイレント・モードを使用して、ドメインを作成および構成できます。詳細は、ドメインの作成およびサーバーの構成を参照してください。

Deployer

コマンドラインからDeployerツールを使用してアプリケーションをデプロイできます。

Oracle Edge AnalyticsのDeployerサポートの詳細は、アプリケーション・デプロイメントを参照してください。

管理ツール

wlevs.Adminの使用方法の詳細は、アプリケーションの管理を参照してください。

JMXによる管理

このリリースは、Java Management Extensions (JMX)による管理をサポートしています。

Oracle Edge AnalyticsのJMXの詳細は、アプリケーション・デプロイメントを参照してください。

ロギング

Oracle Event Processingサーバーでは、表示できるように情報をログ・ファイルに保存します。

表1-2は、Oracle Edge AnalyticsでサポートされていないOracle Event Processingの機能を示しています。これらの機能を使用するアプリケーションをデプロイしようとすると、デプロイメントまたはランタイムのエラーや障害が発生する場合があります。

表1-2 Oracle Edge Analyticsに含まれていない機能

機能 備考

クラスタリング

埋め込まれたアプリケーションをクラスタ化することはできません。

Coherenceキャッシュ

含まれているローカル・キャッシュ・サービスによるキャッシュをサポートしています。

Oracle Event Processingビジュアライザ

アプリケーションを管理するユーザー・インタフェースとして、Oracle Event Processing Visualizerは使用できません。コマンドライン・ツール(デプロイヤや管理ツールなど)を使用して、アプリケーションを管理できます。

HTTPパブリッシュ・サブスクライブ・サーバーおよびアダプタ

このリリースには、HTTPパブリッシュ・サブスクライブ・サーバーは含まれていません。

JMSアダプタおよびWebLogic Server JMSクライアントAPI

このリリースには、JMSのサポートは含まれていません。

CSVファイル・アダプタ

このリリースには、テスト・イベント・データとしてCSVファイルを使用するためのアダプタは含まれていません。

ロード・ジェネレータ

このリリースには、イベント・データを生成するためのツールは含まれていません。

イベントの記録および再生

このリリースには、テストやデバッグのためにイベント・アクティビティを記録したり再生する機能は含まれていません。

JDBCドライバおよびBerkeley DB

データ・ソースは、config.xmlファイルを使用した標準の方法で構成できます。このリリースでは、Oracle Edge Analytics 12cリリースに含まれているドライバを介した、Java DBおよびOracle DBへのアクセスがサポートされています。

Oracle CQLのカートリッジ(Javaを除く)

Oracle CQLの拡張機能のサポートを提供するOracle CQLのカートリッジのうち、Javaカートリッジのみがサポートされています。特に、空間およびJDBCのカートリッジはサポートされていません

オブジェクト・リレーショナル・マッピング用のJava Persistence API (JPA)

このリリースには、JPAのサポートは含まれていません。

Java Architecture for XML Binding

このリリースには、JAXBのサポートは含まれていません。

SOAP Webサービス

このリリースには、SOAP Webサービスのサポートは含まれていません。

一部のセキュリティ・ユーティリティ

passgensecgenおよびGrabCert ユーティリティは、このリリースではサポートされていません。

監視

このリリースには、監視のサポートは含まれていません。

イベントの検査およびトレース

このリリースには、EPNステージから流れてくるイベントを表示したりEPNステージにイベントを注入する機能は含まれていません。

Oracle Stream Explorerによる視覚化

Oracle Stream Explorer Toolingを使用する手法が提供されます。

注意:

ロード・ジェネレータやCSVアダプタなど、一部のサポート外の機能は、埋込み環境にアプリケーションをデプロイする前に削除すれば、開発の初期段階で使用できます。

1.1.3 プラットフォーム・サポート

Oracle Edge Analyticsは、Java Standard Edition Embedded 1.7.*および1.8.*のJava仮想マシン・サーバーを実行できるプラットフォーム上で実行します。ただし、サーバーJava仮想マシンがサポートされているのは次のプロセッサのみです。

  • ARM v7 Hard Float

  • ARM v7 Soft Float

  • i586.

注意:

上記以外のプロセッサを使用する場合は、クライアントJava仮想マシンを使用してください。

次の表は、サポートされているプラットフォームのマトリックスです。

表1-3 サポートされているプラットフォーム

プラットフォーム オペレーティング・システム(OS)
Linux x86-64、oel6/oel5
Raspberry Pi 32ビットRaspbian GNU/Linux 7 \n \l

注意:

Raspberry Piデバイス上のARMでJDKバージョン8 Update 6を使用してOracle Event Processing Serverのデフォルト・ドメインを起動しようとすると、次のエラーが表示されます。

Error occurred during initialization of VM Server.VM is only supported on ARMv7+ VFP.

この問題を解決するには、startwlevs.shファイルでJVM引数内の-serverを、-clientに置換します。

1.1.4 サポートされるJavaバージョン

次の表は、Oracle Edge AnalyticsおよびOracle Edge Analytics with Eurotech BundlesでサポートされるJavaプラットフォームをまとめたものです。

表1-4 サポートされるJavaバージョン

Java Edition x86–64、Linux Raspberry PI Model B+ (armv6、32ビット Raspbian GNU/Linux 7 \n \I)
Java Standard Edition 7 JDK 1.7.0.55 サポートされません
Java Standard Edition 8 JDK 1.8.0.45 JDK 1.8.0_06 (クライアントJVMでのみサポートされます)
Java Standard Edition Embedded 7 Java Standard Edition Embedded Runtime Environment 1.7.0_75 (クライアントJVMでのみサポートされます) Java Standard Edition Embedded Runtime Environment 1.7.0_75 (クライアントJVMでのみサポートされます)
Java Standard Edition Embedded 8 Java(TM) SE Embedded Runtime Environment 1.8.0_33 Java Standard Edition Embedded Runtime Environment 1.8.0_33 (クライアントJVMでのみサポートされます)

1.2 事前ロードと事後ロード

事前ロード事後ロードは、Oracle Event Processingバンドルのロード前後にユーザー定義バンドルをロードする機能です。

事前ロードと事後ロード用に次のファイルを作成します。

  • 事前ロード用: <domain>/<server>/modules/extフォルダにoep_domain_pre.xml

  • 事後ロード用: <domain>/<server>/modulesフォルダにoep_domain_post.xml

注意:

これらのファイルには、ロードするバンドルをbundleloader.xmlファイルと同じ形式で含めることができます。oep_domain_pre.xmlではstartlevelは無視されます(Oracle Event Processingバンドルより前にロードされる必要があるため)。
<bundleloader>
	<bundle>
		<startlevel>1</startlevel>
		<location>user_projects/domains/oep_domain/defaultserver/customer/plugins</location>
		<name>org.eclipse.equinox.console_1.0.0.v20120522-1841.jar</name>
	</bundle>
</bundleloader>

startlevelはバンドルを起動する順番を示します。同じstartlevelを持つバンドルは、xmlファイル内での順番どおりにロードされます。startlevelの数を4から6程度に抑えることがベスト・プラクティスとされています。1から起動できます。startlevelを省略することもできます。省略する場合、デフォルトのstartlevelから起動します。このメカニズムでは、バンドルを起動するオフセットがOracle Event Processingバンドルのstartlevelを基準に計算されます。オフセットについて特に考慮する必要はありません。locationで、バンドルのロード元のパスを指定します。このパスはOracle Event Processingインストール・ディレクトリを基準にした相対パスです。nameはロードするバンドルの名前です。

<domain>/<server>/modules/extフォルダ内のoep_domain_pre.xml

このファイルに含まれているバンドルはOracle Event Processingバンドルより先にロードされるため、startlevelは無視されます。<domain>/<server>/modules/extフォルダ内のoep_domain_pre.xmlでバンドルderby1.jarを定義すると、Oracle Event ProcessingOracle Event Processingバンドルを起動する前に、derby1.jarstartlevel 3で起動します。

<bundle>
 
   <location>customer/plugin</location>
 
   <name>derby1.jar</name>
 
</bundle>

163|Active     |   3|file:/scratch/<username>/Oracle/embedded-release-12.1.3.0-SNAPSHOT-oep/oep/../customer/plugin/derby1.jar

<domain>/<server>/modulesフォルダ内のoep_domain.post.xml

このファイル内のバンドルはOracle Event Processingバンドルより後にロードされます。startlevelはバンドルを起動する順序を示します。startlevelの値が正または負の値であるかの検証は行われません。コードでは検証が行われないため、xmlファイルを検証する必要があります。

<?xml version="1.0" ?>
<bundleloader>
<bundle>
<startlevel>4</startlevel>
<location>customer/plugin</location>
<name>derby1.jar</name>
</bundle>
</bundleloader>
 
200|Active | 8|file:/scratch/<username>/Oracle/embedded-release-12.1.3.0-SNAPSHOT-oep/oep/../customer/plugin/derby1.jar

1.3 アプリケーションおよび開発フレームワーク

Oracle Edge Analyticsでは、データベース・アクセス用にJava DB、RESTful Webサービス・サポート用にJersey、およびJava Standard Edition Embedded JREなどのJava Embedded Suite (JES)テクノロジをサポートしています。jconsoleを使用して、リモートからOracle Edge Analyticsを監視できます。

JESのドキュメントについては、http://www.oracle.com/technetwork/java/embedded/resources/java-embedded-suite/index.htmlを参照してください。

Oracle Edge Analyticsをサポートするフレームワークの一部であるテクノロジについて、次に説明します。

データベース・アクセス

Oracle Edge AnalyticsはJava DBデータベース・エンジン(Derbyプロジェクトに基づく)をサポートしています。クライアント・モードまたは埋込みサーバー・モードのいずれかでJava DBを使用できます。Java DBデータベースへのアクセスを有効にするには、サーバー構成ファイルでデータ・ソースを構成します。Oracle Edge Analytics 12cには、Derby Embedded JDBCドライバとOracle DB JDBCドライバのみが含まれています。その他のJDBCドライバについては、自分自身でドライバを適切な場所にコピーしてください。

表1-5は、Derbyのドライバとそれらの取得方法を示しています。


表1-5 Java DBへのアクセスをサポートするDerbyドライバの場所

ドライバ 場所

Embedded Java DBドライバ

Embeddedドライバderby.jarは、Oracle Edge Analyticsに組み込まれています。

Java DBクライアント・ドライバ(リモートJava DBへのクライアント・アクセスに使用されます)

クライアント・ドライバderbyclient.jarは、Oracle Edge Analytics 12cに組み込まれていません。次のURLで適切なバージョンをダウンロードしてください。

http://db.apache.org/derby/releases/release-10.8.2.2.html


ドライバJARファイルを作成したら、Oracle Edge Analyticsサーバー・ファイル・システムの次の場所にコピーします。

DOMAIN_HOME\SERVER_HOME\modules\ext

ドライバJARが適切な場所にある場合、サーバーconfig.xmlファイルに追加するdata-source要素を介してデータソースを構成できます。

Webサーバー

Oracle Edge AnalyticsはJetty Webサーバーを含み、Java Servlet APIをサポートしています。標準的なorg.osgi.service.http.HttpServiceインタフェースもサポートされており、サーブレットを動的に登録することができます。

注意:

config.xmlファイル内のデフォルトのJetty Web Server名は変更しないでください。この名前を変更すると、Oracle Event Processingサーバーがクラッシュします。

キャッシュ・サポート

Oracle Event Processingと同様に、Oracle Edge Analyticsには簡易的なキャッシュ・サポートが含まれています。このローカル・キャッシュを使用して、キャッシュされたデータにアクセスするアプリケーションを作成し、迅速な処理を実現することができます。Oracle Coherenceはサポートされていません。

ローカル・キャッシュの詳細は、Oracle Event Processingアプリケーションの開発を参照してください。

REST Webサービスのサポート

Oracle Edge Analyticsアプリケーションの様々な側面を公開するWebサービスを実装できます。Oracle Edge Analyticsでは、Oracle Edge Analyticsに組み込まれているJerseyライブラリを使用して、JAX-RS標準に基づくRESTful Webサービスを実装できます。Jerseyは、Java API for RESTful Web Services (JAX-RS)規格の参照実装です。

Oracle Edge AnalyticsアプリケーションでRESTサポートを有効にする方法の詳細は、REST Webサービスのサポートを参照してください。

Jerseyの詳細は、『Jersey User Guide』(http://jersey.java.net/nonav/documentation/latest/user-guide.html)を参照してください。

1.4 ドメインの作成およびサーバーの構成

構成ウィザードを使用して、Oracle Edge Analyticsをデプロイする新しいドメインを作成します。Oracle Edge Analyticsは、サイレント・モード(ドメインを作成および構成するための非対話的な方法)での構成ウィザードをサポートしています。

構成ウィザードは、ドメインに単一のデフォルト・サーバーを作成します。すべてのサーバー関連のファイルは、サーバーと同じ名前のドメイン・ディレクトリのサブディレクトリに格納されています。

注意:

公開鍵証明書には、そのcn名として完全ホスト名が含まれている必要があります。この場合、証明書の別名はevsidentityにしてください。

1.4.1 サイレント・モードでの構成ウィザードの実行

次の手順を実行して、構成ウィザードをサイレント・モードで実行します。
  1. ドメイン構成の設定を定義するsilent.xmlファイルを作成します。
    silent.xmlファイルに不適切なエントリが含まれていると、失敗する可能性があります。失敗の原因を決定するために、構成ウィザードを起動するときにログ・ファイルを作成します。
  2. コマンド・ウィンドウを開いて、/<Oracle_Home>/oep/common/binディレクトリに移動します。
  3. サイレント・モードでconfig.shシェル・コマンドを起動します。
    sh config.sh -mode=silent -silent_xml=path_to_xml_file
    

    ここで、path_to_xml_fileは、作成したsilent.xmlテンプレート・ファイルのフル・パス名です。

  4. 実行ログを作成するには、-log=full_path_to_log_fileオプションを使用します。
    sh config.sh -mode=silent -silent_xml=path_to_xml_file -log=/home/logs/create_domain.log
    
    正しく完了すると、コマンドによって次のようなメッセージが返されます。
    /home/testuser/java/jes7.0/jre/bin is added to path
    <Tue Feb 26 01:41:23 PST 2013> <Info> <BootBundle> <BEA-1004030> <An encryption key file at location /home/testuser/test_domain/test_server/.aesinternal.dat has been generated>
    testuser@emb-sca-ti-xm-2:~/Oracle/Middleware0220/ocep_11.1/common/bin$
    
構成ウィザードの完了が成功しない場合、ログ・ファイルで情報を確認します。シェル・コマンドの終了コードが、サイレント実行の結果の詳細を確認するのに役立つ場合があります。

1.4.2 silent.xmlファイルの作成

この項では、silent.xmlファイルを作成する手順を説明します。
  1. 構成ウィザードをサイレント・モードで実行するコンピュータに、silent.xmlという空のファイルを作成します。
  2. 次のXMLファイル例の内容をsilent.xmlファイルにコピーします。
  3. 作成したsilent.xmlファイルで、構成を反映するように次の表に示すキーワードの値を編集します。

    <?xml version=”1.0” encoding=”UTF-8”?>

    <bea-installer xmnls=”http://www.bea.com/platend/wlevs/config/silent”>

    <data-value name=”CONFIGURATION_OPTION” value=”createDomain” />

    <data-value name=”USER—NAME” value=”wlevs” />

    <data-value name=”PASSWORD” value=”wlevs” />

    <data-value name=”SERVER_NAME” value=”my_server” />

    <data-value name=”DOMAIN_NAME” value=”mydomain” />

    <data-value name=”DOMAIN_LOCATION” value=”/home/mydomains” />

    <data-value name=”NETIO_PORT” value=”9002” />

    <data-value name=”KEYSTORE_PASSWORD” value=”welcome1” />

    <data-value name=”DB_URL” value=”jdbc:oracle:thin:@hostname.com:1521:xe” />

    <data-value name="DB_USERNAME" value="wlevs" />

    <data-value name="DB_PASSWORD" value="wlevs" />

    </input-fields>

    </bea-installer>

  4. ファイルを任意のディレクトリに保存します。

表1-6 silent.xmlファイルのデータ値名

このデータ値名に対して... 次の値を入力します...

CONFIGURATION_OPTION

デフォルト・サーバーを使用して新しいドメインを作成するか、既存のドメインでサーバーを更新するかを指定します。

有効な値はcreateDomainまたはupdateDomainです。デフォルト値はcreateDomainです。

USERNAME

ドメイン内で作成または更新するサーバーの管理者のユーザー名。

PASSWORD

ドメイン内で作成または更新するサーバーの管理者のパスワード。

SERVER_NAME

このドメイン内の新しいサーバーの名前。この名前は、サーバーのファイルを格納するディレクトリの名前としても使用されます。

DOMAIN_NAME

ドメインの名前。

DOMAIN_LOCATION

ドメインが含まれているディレクトリの完全名。

NETIO_PORT

サーバー・インスタンス自体がリスニングするポート番号。

KEYSTORE_PASSWORD

アイデンティティ・キーストアのパスワード。

PRIVATEKEY_PASSWORD

証明書のプライベート・キーのパスワード。

このオプションのデフォルト値はKEYSTORE_PASSWORDの値です。

DB_URL

JDBCによってデータベースに接続するためのURL。このオプションは、データソースの構成に使用されます。

データベースの構成パラメータは省略可能であり、指定しない場合、サーバーのデータ・ソースは構成されません。

この構成ウィザードは、Oracleデータベースのみを使用したデータソースの構成をサポートしています。別のデータベース・テクノロジを使用する場合は、構成を手動で編集してください。

DB_USERNAME

データソースを介してデータベースに接続するユーザーの名前。

データベースの構成パラメータはオプションです。指定しなかった場合、サーバーのデータソースは構成されません。

DB_PASSWORD

データ・ソースを経由してデータベースに接続するユーザーのパスワード。

データベースの構成パラメータはオプションです。指定しなかった場合、サーバーのデータソースは構成されません。

構成ウィザードをサイレント・モードで実行した場合、ドメインの作成および構成の成功または失敗を示す終了コードが生成されます。生成される終了コードを次の表に示します。

表1-7 構成ウィザードのサイレント・モードの終了コード

コード 説明

0

構成ウィザードの実行は、正常に完了しました。

-1

Configuration Wizardの実行は致命的なエラーにより失敗しました

-2

Configuration Wizardの実行は内部的なXML解析エラーのために失敗しました

1.5 アプリケーションの開発

Oracle Edge Analyticsアプリケーションを、Oracle JDeveloperを使用して開発できます。Oracle JDeveloperの詳細は、Oracle Event Processingスタート・ガイドを参照してください。

埋込みアプリケーションの開発時には、使用する機能のセットを、Oracle Edge Analyticsでサポートされている機能に制限する必要があります。

注意:

Oracle JDeveloperでは、現在、作成した埋込みアプリケーションが、埋込み環境でデプロイおよび実行可能であることを確認するためのサポートを提供していません。たとえば、Oracle JDeveloperは、埋込みアプリケーションにサポート対象外の機能が含まれているかの検証を行いません。

Oracle Edge Analyticsのサポート対象外の機能を使用してアプリケーションを作成した場合(Oracle JDeveloperを使用するかどうかに関係なく)、デプロイ時のエラーや実行時の失敗が発生する可能性があります。

Oracle Edge Analyticsに含まれているOracle Event Processingの機能、およびOracle Edge Analyticsから除外されているOracle Event Processingの機能のリストについては、機能を参照してください。

1.5.1 埋込みアプリケーションのサンプル

Oracle Edge Analyticsには、Smart Applianceサンプル・アプリケーションが含まれます。アプリケーションは、ソケット接続を介してデバイスのイベントをリスニングします。デバイス・イベントは、デバイス情報およびそれに関連付けられている値を表します。各デバイスのしきい値は、JavaDBデータベースに保存されます。アプリケーション・プロセスがデバイス・イベントを処理する際、イベントの値が指定されたしきい値の制限内に収まらない場合、アプリケーションはアラートを生成します。

実行方法を含むサンプルの詳細は、サンプルに含まれているreadme.txtファイルを参照してください。

Oracle Edge Analyticsのインストールの後に、Smart Applianceアプリケーションは、次のファイル・システムの場所に配置されます。

/<Oracle_Home>/oep/examples/source/smartappliance

1.5.2 REST Webサービスのサポート

Jersey (Oracle Edge Analyticsに組み込まれているJAX-RSの実装)を使用して、アプリケーションからRESTful Webサービスを公開できます。RESTサポートを有効化したら、Javaコードのメソッドに注釈を付け、RESTクライアンのコールが行われたときに実行されるようにすることができます。Smart Applianceサンプル・アプリケーションは、REST対応アプリケーションの例です。

JerseyおよびJAX-RSの詳細は、『Jersey User Guide』(http://jersey.java.net/nonav/documentation/latest/user-guide.html)を参照してください。

REST Webサービスのサポートの有効化

RESTサポートを有効化するには、Jerseyライブラリがアプリケーションのクラスパス上にあることを確認して、RESTリソースとしてメソッドを実装するクラスでそれらを使用できるようにします。また、OSGiサービスを使用してRESTfulクラスを構成し、外部クライアントで使用できるようにします。

次のREST Webサービスがサポートされます。

  • メディア・タイプがJSON、XML、CSVのインバウンドREST

  • メディア・タイプがJSONおよびXMLのアウトバウンドREST

REST Webサービスのサポートを有効化するには:

  1. Jerseyライブラリがアプリケーションのクラスパスにあることを確認します。

    たとえば、Oracle Edge Analyticsのサーバー・ドメインのmodules/extディレクトリにJARファイルを配置します。12c Oracle Edge Analyticsでは、jersey jarファイルが組み込まれています。

  2. 次に示すように、アプリケーションのアセンブリ・ファイルに、OSGi HTTPサービスの参照を含めて、RESTfulクラスを表すBeanに挿入します。

    <osgi:reference id="httpServiceRef" interface="org.osgi.service.http.HttpService" />
    <!-- Bean declaration with properties for the RESTful service root context
         and OSGi HTTP service.  -->
    <bean id="bean" class="com.oracle.cep.example.smartappliance.sink.AlertsService">
        <property name="rootContext" value="/alerts" />
        <property name="httpService" ref="httpServiceRef" />
    </bean>
    
  3. Beanクラス・コードで、HTTPサービスのsetterメソッド(setHttpService(HttpService httpService)など)を指定します。

  4. 次のように、RESTサーブレットをOSGi HTTPサービスに登録します。

    1. 適切な初期化パラメータを使用して、Jersey ServletContainerインスタンスを作成します。

    2. 初期化パラメータで、javax.ws.rs.Applicationプロパティを実装されたJAX-RS Applicationクラス名として設定します。Applicationクラスは、リソース・クラスをロードするクラスです。

    次の例に、setHttpService(HttpService httpService) setterメソッドと、OSGiサービスの登録を示します。

    public void setHttpService(HttpService httpService) 
           throws Exception {
        Hashtable<String, String> initParams = new Hashtable<String, String>();
        initParams.put("javax.ws.rs.Application",
           WebApplication.class.getName());
        Servlet jerseyServlet = new ServletContainer();
        httpService.registerServlet(rootContext, jerseyServlet, initParams, null);
    }

1.6 アプリケーション・デプロイメント

インストールに含まれているDeployerコマンドライン・ツールを使用して、Oracle Edge Analyticsアプリケーションをデプロイします。SSL接続または非SSL接続を介してデプロイできます。

このDeployerツールはOracle Event Processing付属のDeployerツールとほぼ同じですが、Oracle Edge Analyticsではクラスタおよびグループ・デプロイはサポートされていません。

注意:

Oracle Edge AnalyticsにはOracle Event Processing Visualizerが含まれていないため、グラフィカル・ユーザー・インタフェースを通したデプロイメントはサポートされていません。

実行中のOracle Edge Analyticsサーバーにアプリケーションをデプロイするには、次のようなコマンドを使用します。

java -jar wlevsdeploy.jar -url http://hostname:9002/wlevsdeployer -user oepadmin -password welcome1 -install myoepapp.jar

次の例は、追加のデプロイメント・シナリオを示しています。

ローカル・サーバーへのデプロイ

java -jar wlevsdeploy.jar -user oepadmin -password welcome1 -url http://localhost:9002/wlevsdeployer -install application

非SSL接続を介したデプロイ

java -jar wlevsdeploy.jar -user oepadmin -password welcome1 -url http://<host>:9002/wlevsdeployer -install application

SSLを介したデプロイ

java -Djavax.net.ssl.trustStore=d:\downloads\evsidentity.jks -Djavax.net.ssl.trsutStorePassword=welcome1 -jar wlevsdeploy.jar -user oepadmin -password welcome1 -url https://<host>:9003/wlevsdeployer -install application

1.7 アプリケーションの管理

Oracle Edge Analyticsアプリケーションは、wlevs.Adminコマンドライン・ツールおよびJava Management Extensions (JMX)を使用して管理できます。JMXまたはwlevs.Adminのいずれを使用する場合でも、Oracle Edge Analyticsは、このリリースから省略されている機能を除くすべての機能に対する管理をサポートします。管理機能の詳細は、Oracle Event Processingの管理を参照してください。

省略されている機能のリストは、機能を参照してください。

注意:

Oracle Edge AnalyticsにはOracle Event Processing Visualizerが含まれていないため、グラフィカル・ユーザー・インタフェースを通した管理はサポートされていません。

JMXを使用した管理

Oracle Edge Analyticsは、Oracle Event Processingの場合と同様に、MSA RMIを介したリモートJMX接続をサポートします。特に省略されている機能に関連する機能を除き、ほとんどの構成MBeanおよびランタイムMBeanがサポートされています。たとえば、HttpPubSubAdapterMBeanJMSAdapterMBean、およびモニタリング関連のMBeanは、基礎となる機能がサポートされていないため、サポート外です。

注意:

Java Standard Edition Embedded JREにはJMXローカル・アタッチAPIのサポートが含まれていないため、ローカルの(非RMI) JMX接続はサポートされていません。

wlevs.Adminを使用した管理

Adminコマンドライン・ユーティリティがサポートされており、これにはOracle Event Processingに存在する機能のほとんどが含まれています。サポートされていない機能は、モニタリングまたは記録および再生に関連したコマンドなど、特にサポート外の機能に関連するものです。

たとえば、次の例に示すように、AdminユーティリティのADDRULEコマンドを使用して、ローカルでOracle CQLルールを追加できます。

prompt> java wlevs.Admin 
        -url service:jmx:msarmi://localhost:9002/jndi/jmxconnector 
        -username wlevs -password wlevs 
        ADDRULE -application helloworld -processor helloworldProcessor 
        -query myquery "SELECT * FROM Withdrawal [Rows 5]"

注意:

このリリースでは、-disablesecurity フラグを使用したサーバーの起動はサポートされていません。

1.7.1 policygenコマンドライン・ユーティリティ

policygenコマンドライン・ユーティリティを使用して、eXtensible Access Control Markup Language (XACML)ファイルを生成できます。

policygenユーティリティは/<Oracle_Home>/oep/bin/に格納されています。コマンドには次の構文を使用します。

policygen.sh [-h] [-s] [-l|-x] entitlement_file xacml_output_file

表1-8 policygenの引数

オプション 説明 デフォルト

-s

出力ファイルに標準のXACMLポリシーが生成されるように指定します。指定しない場合、資格XACMLポリシーが生成されます。

-l

XACML LDIFTファイルが生成されるように指定します。

-x

XACMLポリシー・ファイルが生成されるように指定します。

-h

使用方法のヘルプを表示します。

entitlement_file

入力資格XMLファイルの場所を指定します。

xacml_output_file

出力XACMLファイルの場所を指定します。

次に例を示します。

prompt> policygen.sh ~/security/policygen/AuthorizerInit.xml XACMLAuthorizerInit.ldift

1.8 サポートされているプラットフォームとリソースの構成

Oracle Edge Analyticsは、次のプラットフォームの構成をサポートしています。

  • Java Standard Edition Embedded 7およびJava Standard Edition Embedded 8

  • オペレーティング・システム: Linux

  • ハードウェア:x86またはARM

Oracle Edge Analyticsは、小型のディスクおよびヒープ・フットプリント要件をサポートしています。新規インストールの場合、83MBのディスク領域が必要です。サーバーが起動され、アプリケーションがデプロイされた場合、アプリケーションごとに追加のディスク領域が必要になります。