complex event processing server v1.1.0 interstage big data...

219
J2UL-1642-02Z0(00) 20141Linux(64) FUJITSU Software Interstage Big Data Complex Event Processing Server V1.1.0 ユーザーズガイド

Upload: others

Post on 12-Jan-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

J2UL-1642-02Z0(00)2014年1月

Linux(64)

FUJITSU SoftwareInterstage Big DataComplex Event Processing Server V1.1.0

ユーザーズガイド

Page 2: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

まえがき

本書の目的

本書は、Interstage Big Data Complex Event Processing Server (以降、BDCEP)の機能説明のほか、BDCEPの導入、アプリケーション

の開発、BDCEPの運用及び保守について説明しています。

本書の読者

本書は、BDCEPの導入、運用、および複合イベント処理機能を活用したアプリケーション開発を検討されている方を対象に書かれて

います。

本書の構成

本書の構成は、以下のとおりです。

第1章 概要

BDCEPの概要について説明します。

第2章 提供機能

BDCEPが提供する機能について説明します。

第3章 システム構成と設計

BDCEPの導入にあたり、主にシステム設計(製品を導入してどのような情報システムを構築するのか、運用形態を設計するための

方法)について説明します。

第4章 インストールおよびセットアップ

BDCEPのインストールに必要となるソフトウェア条件および資源、またインストールおよびアンインストール方法について説明しま

す。

また、BDCEPのセットアップ(システム構築のための環境作成方法)について説明します。

第5章 開発

BDCEP上で動作するアプリケーションの開発方法について説明します。

第6章 運用保守

構築したシステムを運用・管理する方法の他、BDCEPの保守について説明します。

第7章 拡張システム運用

BDCEPを複数のサーバで運用するための方法について説明します。

第8章 コマンドリファレンス

BDCEPのコマンドについて説明します。必要に応じて参照してください。

第9章 定義ファイルリファレンス

BDCEPで扱う定義ファイルについて説明します。

用語集

BDCEPで使用する用語について説明します。必要に応じて参照してください。

商標について

・ Adobe、Adobe Reader および Flash は、Adobe Systems Incorporated (アドビ システムズ社)の米国ならびに他の国における商標ま

たは登録商標です。

・ Linux は、Linus Torvalds 氏の米国およびその他の国における登録商標または商標です。

・ Red Hat、RPM および Red Hat をベースとしたすべての商標とロゴは、Red Hat, Inc. の米国およびその他の国における登録商標

または商標です。

- i -

Page 3: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

・ Microsoft、Windows、MS、MS-DOS、Windows XP、Windows Server、Windows Vista、Windows 7、Excel、およびInternet Explorerは、米国 Microsoft Corporation の米国およびその他の国における商標または登録商標です。

・ Software AG、Terracotta の社名およびすべてのSoftware AG/Terracotta 製品名は、Software AG の商標または登録商標です。

・ Interstage、PRIMECLUSTER、ServerView、Symfoware、および Systemwalker は、富士通株式会社の登録商標です。

・ その他の会社名および製品名は、それぞれの会社の商標または登録商標です。

なお、本書では、システム名または製品名に付記される登録表示((TM)または(R))は、省略しています。

輸出管理規制表記

当社ドキュメントには、外国為替および外国貿易管理法に基づく特定技術が含まれていることがあります。特定技術が含まれている場

合は、当該ドキュメントを輸出または非居住者に提供するとき、同法に基づく許可が必要となります。

著作権

Copyright 2012-2014 FUJITSU LIMITED

2014年1月 第2版

2012年8月 初版

- ii -

Page 4: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

目 次

第1章 概要................................................................................................................................................................................ 11.1 Interstage Big Data Complex Event Processing Serverとは................................................................................................................11.2 製品の特長..........................................................................................................................................................................................2

1.2.1 高性能CEPエンジン.....................................................................................................................................................................21.2.2 ルール記述が容易.......................................................................................................................................................................31.2.3 外部システムとの容易な連携...................................................................................................................................................... 4

1.2.3.1 分散キャッシュ連携(Terracotta連携)....................................................................................................................................41.2.3.2 Hadoop連携...........................................................................................................................................................................5

1.3 提供機能の概要..................................................................................................................................................................................61.3.1 CEPエンジンの機能..................................................................................................................................................................... 71.3.2 開発/運用環境に関する機能...................................................................................................................................................... 71.3.3 状態監視に関する機能............................................................................................................................................................... 7

1.4 複合イベント処理とは..........................................................................................................................................................................71.4.1 複合イベント処理..........................................................................................................................................................................7

第2章 提供機能.........................................................................................................................................................................92.1 入力アダプター................................................................................................................................................................................... 9

2.1.1 SOAPアダプター........................................................................................................................................................................ 102.1.2 HTTPアダプター........................................................................................................................................................................ 102.1.3 Socketアダプター....................................................................................................................................................................... 10

2.2 ロギング..............................................................................................................................................................................................102.3 高速フィルター.................................................................................................................................................................................. 11

2.3.1 フィルタールール....................................................................................................................................................................... 112.3.2 マスタデータ............................................................................................................................................................................... 12

2.4 複合イベント処理...............................................................................................................................................................................132.4.1 複合イベント処理の動作............................................................................................................................................................13

2.5 外部データアクセス...........................................................................................................................................................................142.5.1 Terracotta連携............................................................................................................................................................................ 142.5.2 RDB連携.................................................................................................................................................................................... 16

2.6 出力アダプター................................................................................................................................................................................. 172.6.1 SOAPリスナ.................................................................................................................................................................................172.6.2 カスタムリスナ............................................................................................................................................................................. 182.6.3 ロギングリスナ............................................................................................................................................................................. 182.6.4 デバッグログリスナ......................................................................................................................................................................18

2.7 運用コマンド...................................................................................................................................................................................... 182.7.1 ルールおよびマスタデータの動的変更.................................................................................................................................... 19

2.8 エンジンログ...................................................................................................................................................................................... 192.9 リソースログ........................................................................................................................................................................................ 192.10 クラスタサービス.............................................................................................................................................................................. 19

第3章 システム構成と設計....................................................................................................................................................... 203.1 システム構成..................................................................................................................................................................................... 203.2 システム構成の設計..........................................................................................................................................................................21

3.2.1 システム構成の設計...................................................................................................................................................................213.2.2 CEPサーバの設計観点..............................................................................................................................................................21

3.2.2.1 全体の設計..........................................................................................................................................................................213.2.2.2 入力アダプターの設計........................................................................................................................................................213.2.2.3 高速フィルターの設計.........................................................................................................................................................213.2.2.4 複合イベント処理の設計.....................................................................................................................................................223.2.2.5 出力アダプタ―の設計........................................................................................................................................................22

3.2.3 連携するHadoopシステムの設計観点.......................................................................................................................................223.2.4 連携するTerracottaサーバの設計観点..................................................................................................................................... 233.2.5 連携するRDBサーバの設計観点..............................................................................................................................................23

3.3 システム資源の設計..........................................................................................................................................................................233.3.1 メモリ使用量の見積もり.............................................................................................................................................................. 23

- iii -

Page 5: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

3.3.1.1 高速フィルタールール使用時のメモリ量............................................................................................................................243.3.1.2 高速フィルターでマスタデータを使用した場合のメモリ量................................................................................................ 24

3.3.2 ディスク使用量の見積もり.......................................................................................................................................................... 25

第4章 インストールおよびセットアップ....................................................................................................................................... 284.1 インストール概要............................................................................................................................................................................... 28

4.1.1 インストールの方法.....................................................................................................................................................................284.1.2 インストールされるパッケージ.................................................................................................................................................... 28

4.2 インストール条件............................................................................................................................................................................... 294.2.1 ハードウェア環境........................................................................................................................................................................294.2.2 ソフトウェア環境..........................................................................................................................................................................29

4.2.2.1 前提基本ソフトウェア...........................................................................................................................................................294.2.2.2 必須パッチ...........................................................................................................................................................................314.2.2.3 必要なパッケージ................................................................................................................................................................314.2.2.4 排他ソフトウェア...................................................................................................................................................................31

4.2.3 インストール時に必要な資源.....................................................................................................................................................324.2.4 運用時に必要な資源................................................................................................................................................................. 32

4.3 インストール....................................................................................................................................................................................... 324.3.1 インストール前の作業.................................................................................................................................................................33

4.3.1.1 /etc/hostsの設定...................................................................................................................................................................334.3.1.2 使用するポート番号の確認................................................................................................................................................ 334.3.1.3 ディスクの空き容量の確認..................................................................................................................................................344.3.1.4 エンジン実行ユーザーおよびグループの作成................................................................................................................. 344.3.1.5 システムパラメーターの確認...............................................................................................................................................354.3.1.6 リソース制限値の確認.........................................................................................................................................................364.3.1.7 /etc/cron.daily/tmpwatchの修正 (Red Hat Enterprise Linux 5.4以前の場合)................................................................... 364.3.1.8 FJSVsmee64、FJSVsclr64パッケージの削除..................................................................................................................... 36

4.3.2 インストール手順........................................................................................................................................................................ 374.3.2.1 対話式インストール............................................................................................................................................................. 374.3.2.2 サイレントインストール......................................................................................................................................................... 38

4.3.3 インストール後の作業.................................................................................................................................................................394.3.3.1 環境変数の設定..................................................................................................................................................................394.3.3.2 FJSVsmee64、FJSVsclr64パッケージの再インストール..................................................................................................... 404.3.3.3 修正の適用..........................................................................................................................................................................40

4.3.4 インストール中にエラーが発生した場合................................................................................................................................... 404.4 セットアップ........................................................................................................................................................................................ 40

4.4.1 セットアップの概要..................................................................................................................................................................... 404.4.2 Hadoop連携のセットアップ.........................................................................................................................................................414.4.3 Terracotta連携のセットアップ.....................................................................................................................................................414.4.4 RDB連携のセットアップ............................................................................................................................................................. 424.4.5 CEPエンジンのセットアップ........................................................................................................................................................42

4.4.5.1 インストール直後の状態......................................................................................................................................................434.4.5.2 CEPエンジンの設定変更.................................................................................................................................................... 434.4.5.3 CEPエンジンの新規作成.................................................................................................................................................... 47

4.5 セットアップの解除............................................................................................................................................................................ 494.5.1 CEPエンジンの削除................................................................................................................................................................... 494.5.2 RDB連携の解除........................................................................................................................................................................ 524.5.3 Terracotta連携の解除................................................................................................................................................................ 534.5.4 Hadoop連携の解除.................................................................................................................................................................... 53

4.6 アンインストール................................................................................................................................................................................ 544.6.1 アンインストール前の作業..........................................................................................................................................................55

4.6.1.1 イベント送信の停止.............................................................................................................................................................554.6.1.2 ユーザー資産のバックアップ..............................................................................................................................................554.6.1.3 CEPサービスの停止............................................................................................................................................................554.6.1.4 修正の削除..........................................................................................................................................................................55

4.6.2 アンインストール手順................................................................................................................................................................. 554.6.2.1 対話式アンインストール...................................................................................................................................................... 55

- iv -

Page 6: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

4.6.2.2 サイレントアンインストール.................................................................................................................................................. 564.6.3 アンインストール後の作業..........................................................................................................................................................56

4.6.3.1 FJSVodパッケージの削除...................................................................................................................................................564.6.3.2 FJSVsmee64、およびFJSVsclr64パッケージの削除.......................................................................................................... 574.6.3.3 環境変数の設定解除..........................................................................................................................................................574.6.3.4 インストール時に指定したエンジン実行ユーザーについて..............................................................................................574.6.3.5 アンインストールと管理(ミドルウェア)について.................................................................................................................. 57

4.6.4 アンインストール中にエラーが発生した場合............................................................................................................................ 58

第5章 開発.............................................................................................................................................................................. 595.1 BDCEPのイベント処理の概要.......................................................................................................................................................... 595.2 開発資産の一覧................................................................................................................................................................................595.3 作業概要........................................................................................................................................................................................... 615.4 設計(定義ファイル)........................................................................................................................................................................... 62

5.4.1 定義情報の概要.........................................................................................................................................................................625.4.1.1 イベントタイプ定義.............................................................................................................................................................. 625.4.1.2 ルール定義..........................................................................................................................................................................635.4.1.3 マスタ定義........................................................................................................................................................................... 635.4.1.4 RDB参照定義..................................................................................................................................................................... 645.4.1.5 SOAPリスナ定義..................................................................................................................................................................64

5.4.2 開発資産IDと定義情報間の対応関係......................................................................................................................................645.4.3 イベントタイプ定義の設計..........................................................................................................................................................65

5.4.3.1 入力イベントの特性.............................................................................................................................................................655.4.3.2 イベントの記録、分析.......................................................................................................................................................... 65

5.4.4 ルール定義の設計.....................................................................................................................................................................665.4.4.1 高速フィルター処理............................................................................................................................................................ 66

5.4.4.1.1 抽出処理...................................................................................................................................................................... 675.4.4.1.2 マスタデータ照合による抽出処理............................................................................................................................... 685.4.4.1.3 マスタデータとの結合処理...........................................................................................................................................695.4.4.1.4 文章の重み付け処理................................................................................................................................................... 70

5.4.4.2 複合イベント処理.................................................................................................................................................................715.4.4.3 Terracotta連携..................................................................................................................................................................... 76

5.4.4.3.1 Terracotta連携を利用する場合の留意点....................................................................................................................765.4.4.3.2 Terracottaのキャッシュの構成情報ファイルの準備.....................................................................................................765.4.4.3.3 Terracottaのキャッシュの利用方法.............................................................................................................................. 77

5.4.4.4 RDB連携............................................................................................................................................................................. 805.4.4.4.1 RDB連携を利用する場合の留意点............................................................................................................................805.4.4.4.2 複合イベント処理ルールでのRDB参照の指定方法.................................................................................................. 81

5.4.4.5 SOAPリスナ..........................................................................................................................................................................815.4.4.6 カスタムリスナ...................................................................................................................................................................... 825.4.4.7 ロギングリスナ...................................................................................................................................................................... 82

5.4.5 マスタ定義の設計.......................................................................................................................................................................835.4.6 イベントタイプ定義(フィルター済み)の設計.............................................................................................................................845.4.7 RDB参照定義の設計................................................................................................................................................................ 84

5.4.7.1 RDB参照定義を設計する場合の留意点...........................................................................................................................845.4.7.2 キャッシュ保持期間とキャッシュ破棄間隔の設定.............................................................................................................. 84

5.4.8 SOAPリスナ定義の設計.............................................................................................................................................................855.5 設計(データ)......................................................................................................................................................................................86

5.5.1 イベントデータ(テスト用)............................................................................................................................................................ 865.5.2 マスタデータ(高速フィルター用)............................................................................................................................................... 86

5.5.2.1 マスタデータの形式............................................................................................................................................................ 865.5.3 Terracottaのキャッシュ................................................................................................................................................................87

5.5.3.1 利用可能なTerracottaのキャッシュの形式......................................................................................................................... 875.5.4 RDB............................................................................................................................................................................................ 88

5.5.4.1 利用可能なRDBのテーブルの形式...................................................................................................................................895.6 設計(連携アプリケーション).............................................................................................................................................................. 89

5.6.1 イベント送信アプリケーションの設計......................................................................................................................................... 89

- v -

Page 7: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

5.6.2 ユーザー開発Webサービスの設計........................................................................................................................................... 905.6.3 ユーザー開発Javaクラスの設計.................................................................................................................................................915.6.4 イベントログ分析アプリケーションの設計.................................................................................................................................. 92

5.6.4.1 イベントログの出力先とファイル形式..................................................................................................................................925.6.5 Terracottaアプリケーションの設計............................................................................................................................................. 94

5.7 実装................................................................................................................................................................................................... 945.7.1 定義ファイルの作成................................................................................................................................................................... 94

5.7.1.1 イベントタイプ定義ファイルの作成..................................................................................................................................... 955.7.1.2 ルール定義ファイルの作成................................................................................................................................................ 95

5.7.1.2.1 デバッグログリスナ........................................................................................................................................................965.7.1.3 マスタ定義ファイルの作成.................................................................................................................................................. 975.7.1.4 RDB参照定義ファイルの作成............................................................................................................................................ 975.7.1.5 SOAPリスナ定義ファイルの作成........................................................................................................................................ 98

5.7.2 データの準備..............................................................................................................................................................................985.7.2.1 イベントデータ(テスト用)の準備..........................................................................................................................................985.7.2.2 マスタデータ(高速フィルター用)の準備........................................................................................................................... 985.7.2.3 Terracottaのキャッシュに格納するデータの準備...............................................................................................................995.7.2.4 RDBの準備......................................................................................................................................................................... 99

5.7.3 連携アプリケーションの実装......................................................................................................................................................995.7.3.1 イベント送信アプリケーションの実装.................................................................................................................................. 995.7.3.2 ユーザー開発Webサービスの実装.................................................................................................................................... 99

5.7.3.2.1 Webサービス実装手順................................................................................................................................................ 995.7.3.3 ユーザー開発Javaクラス(カスタムリスナ)の実装..............................................................................................................101

5.7.3.3.1 CustomListenerインターフェース............................................................................................................................... 1025.7.3.3.2 カスタムログ................................................................................................................................................................ 1025.7.3.3.3 コンパイル...................................................................................................................................................................102

5.7.3.4 イベントログ分析アプリケーションの実装......................................................................................................................... 1025.7.3.5 Terracottaアプリケーションの実装.................................................................................................................................... 102

5.8 開発資産の配備..............................................................................................................................................................................1025.8.1 定義情報の配備.......................................................................................................................................................................1035.8.2 データの用意............................................................................................................................................................................1035.8.3 連携アプリケーションの配備....................................................................................................................................................104

5.9 結合テスト........................................................................................................................................................................................ 1055.9.1 結合テストの流れ..................................................................................................................................................................... 1055.9.2 エンジンログの確認方法..........................................................................................................................................................1065.9.3 起動.......................................................................................................................................................................................... 108

5.9.3.1 ユーザー開発Webサービスの状態を確認.......................................................................................................................1085.9.3.2 CEPエンジンの起動.......................................................................................................................................................... 1085.9.3.3 フィルタールールの構文エラーの確認............................................................................................................................ 1095.9.3.4 複合イベント処理ルールの構文エラーの確認................................................................................................................ 109

5.9.4 結合テスト................................................................................................................................................................................. 1105.9.4.1 テスト用イベントデータの送信.......................................................................................................................................... 1105.9.4.2 フィルタールールの動作確認...........................................................................................................................................1115.9.4.3 複合イベント処理ルールの動作確認...............................................................................................................................1115.9.4.4 ユーザー開発Webサービスの動作確認.......................................................................................................................... 1125.9.4.5 ユーザー開発Javaクラスの動作確認................................................................................................................................1125.9.4.6 イベントログの確認............................................................................................................................................................ 1135.9.4.7 イベントログ分析アプリケーションの動作確認................................................................................................................. 113

5.9.5 停止.......................................................................................................................................................................................... 1135.9.5.1 イベント送信アプリケーションの停止................................................................................................................................ 1135.9.5.2 CEPエンジンの停止.......................................................................................................................................................... 113

5.9.6 開発資産の修正.......................................................................................................................................................................1135.10 開発資産の配備解除....................................................................................................................................................................113

5.10.1 定義情報の配備解除.............................................................................................................................................................1135.10.2 連携アプリケーションの配備解除..........................................................................................................................................1145.10.3 データの削除..........................................................................................................................................................................115

5.11 サンプルアプリケーション..............................................................................................................................................................115

- vi -

Page 8: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

5.11.1 サンプルアプリケーションの概要...........................................................................................................................................1155.11.2 サンプルの構成......................................................................................................................................................................1165.11.3 イベント....................................................................................................................................................................................117

5.11.3.1 位置情報イベント.............................................................................................................................................................1175.11.3.2 クーポンイベント.............................................................................................................................................................. 1175.11.3.3 フィルター処理後の位置情報イベント............................................................................................................................1185.11.3.4 フィルター処理後のクーポンイベント............................................................................................................................. 118

5.11.4 マスタ情報.............................................................................................................................................................................. 1185.11.4.1 会員情報マスタ............................................................................................................................................................... 1185.11.4.2 店舗情報マスタ............................................................................................................................................................... 119

5.11.5 ルール定義.............................................................................................................................................................................1195.11.5.1 フィルタールール(IF-THEN型ルール)......................................................................................................................... 1195.11.5.2 複合イベント処理ルール(SQL型ルール)..................................................................................................................... 119

5.11.6 イベント送信サンプルプログラム............................................................................................................................................1215.11.7 ディレクトリ構成.......................................................................................................................................................................1225.11.8 実行方法................................................................................................................................................................................ 123

5.11.8.1 開発資産の配備..............................................................................................................................................................1235.11.8.2 CEPエンジンの起動........................................................................................................................................................ 1245.11.8.3 イベントの送信と結果の確認.......................................................................................................................................... 1245.11.8.4 CEPエンジンの停止........................................................................................................................................................ 1255.11.8.5 開発資産の配備解除......................................................................................................................................................125

第6章 運用保守.....................................................................................................................................................................1276.1 CEPサーバの運用...........................................................................................................................................................................127

6.1.1 連携システムの起動.................................................................................................................................................................1276.1.2 CEPサービスの起動.................................................................................................................................................................1276.1.3 定義情報の配備および解除....................................................................................................................................................128

6.1.3.1 定義情報の配備................................................................................................................................................................1286.1.3.2 配備済み定義情報の確認................................................................................................................................................1296.1.3.3 配備済み定義情報の更新................................................................................................................................................1306.1.3.4 定義情報の配備解除........................................................................................................................................................130

6.1.4 CEPエンジンの起動................................................................................................................................................................. 1316.1.5 通常の運用作業.......................................................................................................................................................................132

6.1.5.1 CEPサービスの運用状態の表示...................................................................................................................................... 1326.1.5.2 CEPエンジンの運用状態の表示...................................................................................................................................... 1336.1.5.3 ログによる異常監視...........................................................................................................................................................1336.1.5.4 CEPエンジンのリソース利用状況の確認..........................................................................................................................1346.1.5.5 ルール定義、マスタデータの動的変更............................................................................................................................1386.1.5.6 カスタムログの保管............................................................................................................................................................138

6.1.6 CEPエンジンの停止................................................................................................................................................................. 1396.1.7 CEPサービスの停止.................................................................................................................................................................1396.1.8 連携システムの停止.................................................................................................................................................................140

6.2 セキュリティ...................................................................................................................................................................................... 1406.2.1 運用モデル...............................................................................................................................................................................1406.2.2 セキュリティの設計を行うための前提知識.............................................................................................................................. 1406.2.3 BDCEPにおけるセキュリティの設計........................................................................................................................................ 142

6.3 保守................................................................................................................................................................................................. 1426.3.1 トラブル発生時の調査資料の採取..........................................................................................................................................1426.3.2 バックアップ、リストア................................................................................................................................................................ 143

6.3.2.1 バックアップの手順............................................................................................................................................................1436.3.2.2 リストアの手順.................................................................................................................................................................... 145

6.3.3 修正の適用...............................................................................................................................................................................1466.3.4 チューニング.............................................................................................................................................................................147

6.3.4.1 JVMオプションのチューニング......................................................................................................................................... 1476.3.4.2 ファイルディスクリプタのチューニング.............................................................................................................................. 1506.3.4.3 トレースログのチューニング.............................................................................................................................................. 151

第7章 拡張システム運用........................................................................................................................................................153

- vii -

Page 9: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

7.1 スケーラブルシステム運用..............................................................................................................................................................1537.1.1 複合イベント処理のスケールアウト..........................................................................................................................................1537.1.2 Terracotta連携を使ったスケールアウト....................................................................................................................................153

7.2 PRIMECLUSTERを使った高信頼システム運用........................................................................................................................... 1547.2.1 高信頼システム運用の概要.....................................................................................................................................................1547.2.2 クラスタサービスの構成............................................................................................................................................................1547.2.3 クラスタサービスの環境構築....................................................................................................................................................1547.2.4 クラスタサービスの運用............................................................................................................................................................156

第8章 コマンドリファレンス......................................................................................................................................................1578.1 cepcollectinfo...................................................................................................................................................................................1578.2 cepconfigeng....................................................................................................................................................................................1588.3 cepdeployrsc.................................................................................................................................................................................... 1618.4 cepdispeng....................................................................................................................................................................................... 1648.5 cepdispserv.......................................................................................................................................................................................1678.6 cepgetjvmopt....................................................................................................................................................................................1718.7 cepgetrsc.......................................................................................................................................................................................... 1728.8 cepsetjvmopt.................................................................................................................................................................................... 1748.9 cepstarteng....................................................................................................................................................................................... 1768.10 cepstartserv.................................................................................................................................................................................... 1778.11 cepstopeng..................................................................................................................................................................................... 1798.12 cepstopserv.....................................................................................................................................................................................1808.13 cepundeployrsc.............................................................................................................................................................................. 182

第9章 定義ファイルリファレンス.............................................................................................................................................. 1859.1 CEPエンジンの定義........................................................................................................................................................................ 185

9.1.1 エンジン構成ファイル...............................................................................................................................................................1859.2 開発資産の定義..............................................................................................................................................................................187

9.2.1 イベントタイプ定義ファイル...................................................................................................................................................... 1889.2.2 ルール定義ファイル................................................................................................................................................................. 1929.2.3 マスタ定義ファイル...................................................................................................................................................................1949.2.4 RDB参照定義ファイル.............................................................................................................................................................1969.2.5 SOAPリスナ定義ファイル......................................................................................................................................................... 199

9.3 Terracotta連携の設定ファイル........................................................................................................................................................2009.3.1 Terracottaのキャッシュの構成情報ファイル.............................................................................................................................2009.3.2 Terracotta連携機能設定ファイル.............................................................................................................................................201

9.4 RDB連携の設定ファイル................................................................................................................................................................ 2039.4.1 RDB連携機能設定ファイル.....................................................................................................................................................203

9.5 インストール用の設定......................................................................................................................................................................2049.5.1 インストール設定ファイル.........................................................................................................................................................204

9.6 項目名、タグ名、属性名に指定可能な文字.................................................................................................................................. 2059.6.1 高速フィルタールール、マスタ定義の場合.............................................................................................................................2059.6.2 複合イベント処理ルールの場合..............................................................................................................................................205

9.7 利用可能なCSVの形式.................................................................................................................................................................. 206

用語集...................................................................................................................................................................................207

- viii -

Page 10: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

第1章 概要

本章では、Interstage Big Data Complex Event Processing Server(以降、BDCEP)の特長や提供機能の概要について説明します。

1.1 Interstage Big Data Complex Event Processing Serverとは

BDCEPは、大量のイベントデータをリアルタイムで分析・判断処理するソフトウェアです。

近年、スマートフォンから送信される位置情報や、機器の稼働ログなど、刻々と変化し、かつ大量に発生するイベントデータを利用して

ビジネスに生かしたいというニーズが高まっています。

このようなイベントデータはリアルタイムで処理する必要があることから、従来よりも高いレスポンスで大容量のデータの分析・判断処理

を実現する複合イベント処理(CEP:Complex Event Processing)技術が注目されています。

BDCEPは、大量のイベントデータの処理に適した複合イベント処理技術に、独自の高速フィルター処理技術を統合した、高性能複合

イベント処理エンジン(以降、高性能CEPエンジン)を搭載することで、処理性能と利便性を向上させ、企業システムにおける大量のイ

ベントデータのリアルタイムな活用を支援します。

以降では、BDCEPの利用シーンについて説明します。

位置情報を活用したリアルタイムなサービスの提供

顧客のリアルタイムな位置情報と、顧客情報、店舗情報などの業務マスタに登録されている情報との高速照合が可能です。これによ

り、「店舗周辺に訪れた人に対して、その店舗のクーポンをリアルタイムに提供する」といった、顧客属性に適したサービスを即時に提

供できます。

販売した製品の稼働状態のモニタによるサービス向上

顧客に販売した製品機器の稼働ログを収集することで、故障の予兆監視などをリアルタイムに行います。これにより、従来の定期メン

テナンスではコスト面などから不可能だった予防保守が可能になり、機器の稼働率が向上します。

また、BDCEPは収集した稼働ログをHadoopシステムに蓄積できます。蓄積した稼働ログをHadoopシステムで分析することで、より正確

な予兆パターンを検出し、検出した予兆パターンを複合イベント処理のルールに反映することで、より効率的な保守サービスを実現で

きます。

- 1 -

Page 11: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

1.2 製品の特長

ここでは、BDCEPの特長について説明します。

BDCEPの特長は、以下の3つが挙げられます。

・ 高性能CEPエンジン

・ ルール記述が容易

・ 外部システムとの容易な連携

1.2.1 高性能CEPエンジン

高性能CEPエンジンの搭載により、1台のサーバで大量のイベント処理が可能です。

従来の複合イベント処理製品では、外部のマスタデータへのアクセスが大量に発生する場合、著しく処理性能が低下してしまうため、

複数のサーバを用意して処理を分散させることで処理性能を確保していました。

BDCEPでは、独自技術を活用した高速フィルターにより、入力されたイベントとマスタデータの高速照合が可能です。

そのため、従来の複合イベント処理エンジンよりも処理性能が大幅に上昇し、1台のサーバで、処理性能を落とさずに必要なイベント

数を処理できます。

- 2 -

Page 12: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

図1.1 大量のイベントを処理する場合の比較

1.2.2 ルール記述が容易

BDCEPで複合イベント処理を実行するためには、事前にルールを設定する必要があります。

BDCEPでは以下の2種類の記述方式が存在し、目的に応じて柔軟にルール定義の作成を行うことができます。

SQL型ルール

データベースの問い合わせ言語であるSQLを基にしたルール記述方式です。

複雑な条件分岐や、イベントのマッチング処理などきめ細かいルールを記述する場合に適しています。

IF-THEN型ルール

「IF(条件)~THEN(処理)」型のルール記述方式です。

SQL型ルールよりもわかりやすく、容易にルールの記述を行うことができます。

イベントのフィルタリングなど、単純な処理をルールとして記述する場合に適しています。

また、イベントとマスタデータの照合や、結合といった処理も簡単なルールを記述するだけで実現できます。

従来のSQL型ルールでは、性能劣化への考慮によりコード量が多くなりがちだった処理も、シンプルに記述できます。

- 3 -

Page 13: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

図1.2 マスタデータとの結合処理をSQL型ルールとIF-THEN型ルールで記述した場合の比較

1.2.3 外部システムとの容易な連携

1.2.3.1 分散キャッシュ連携(Terracotta連携)BDCEPは、インメモリデータ管理ソフトウェア Interstage Terracotta BigMemory Max(以降、Terracotta)(*1)に格納されている分散キャッ

シュのデータにアクセスができます。

これにより、RDBを参照するよりも高速な外部データ参照処理が可能になります。また、イベントを契機にキャッシュデータを追加・更

新・削除できます。

参考

(*1) Interstage Terracotta BigMemory Max

テラバイト以上の業務データを、サーバのメモリ上で管理し、業務データへの超高速・安定アクセスを実現した、インメモリデータ管理

ソフトウェア。

図1.3 Terracotta連携(1)

- 4 -

Page 14: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

図1.4 Terracotta連携(2)

1.2.3.2 Hadoop連携

Hadoopシステムとの連携によって、入力されたイベントや、複合イベント処理で出力したイベントをHadoopサーバに蓄積できます。

蓄積されたイベントは、Hadoopシステムで分析・加工を行うことによって、イベントの長期傾向の分析が可能となり、業務改善や、より高

精度なルール開発などに役立てることができます。

Hadoopシステムには、ビッグデータ分析活用ソフトウェア Interstage Big Data Parallel Processing Server(以降、BDPP)(*2)を利用できま

す。

参考

(*2) Interstage Big Data Parallel Processing Server

Apache Hadoopをベースに、当社独自の技術を統合することで、更なる処理性能の向上や信頼性を実現した、企業システムでのビッ

グデータ支援ソフトウェア

- 5 -

Page 15: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

図1.5 Hadoop連携

1.3 提供機能の概要

ここでは、BDCEPが提供する機能の概要について説明します。

各機能の詳細については、「第2章 提供機能」を参照してください。

図1.6 提供機能一覧

- 6 -

Page 16: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

1.3.1 CEPエンジンの機能

入力アダプター

SOAP、HTTP、Socketと3種類の通信方法を提供しており、各種センサー、スマートフォン、SOAシステム等と接続可能です。

ロギング(Hadoop連携)

入力されたイベントや、複合イベント処理で出力したイベントを、ログとして記録できます。

このログは、Hadoopシステムを出力先にできます(Hadoop連携)。また、ルール開発時の動作確認用にCEPサーバを出力先とする

こともできます。

Hadoopシステムにログを出力することで、Hadoopシステムでイベントの分析が可能になり、イベントの傾向把握やルールの追加、

変更に役立てることができます。

高速フィルター

入力イベントのフィルタリングや、マスタデータとイベントの高速照合処理を記述した“ルール定義”を事前に登録することで、入力

イベントを高速に処理できます。

複合イベント処理

入力イベントの検知パターンを記述した“ルール定義”を事前に登録することで、刻々と発生するイベントをリアルタイムに分析・判

断できます。

外部データアクセス

複合イベント処理から、外部データを参照できます。

Terracotta連携

Terracottaに格納したキャッシュデータを、外部データとして参照できます。また、イベントを契機にキャッシュデータを追加・更

新・削除できます。

RDB連携

RDBに登録されているデータを外部データとして参照できます。

出力アダプター

複合イベント処理で出力したイベントを、SOAPリスナを使用してユーザー開発Webサービスに送信したり、カスタムリスナを使用し

てユーザー開発Javaクラスで処理したりできます。

他にも、複合イベント処理で出力したイベントをHadoopシステムに格納できるロギングリスナや、複合イベント処理の結果をデバッ

グ用にログ出力するデバッグログリスナが存在します。

1.3.2 開発/運用環境に関する機能

運用コマンド

CEPエンジンに対して各種操作を行うコマンドを提供します。

1.3.3 状態監視に関する機能

リソースログ出力

メモリの使用量や、入出力イベント数などのCEPエンジンのリソース利用状況の情報をログ出力します。

リソースログを使用することで、チューニングなどBDCEPの運用・保守作業に役立てることができます。

1.4 複合イベント処理とは

ここでは、複合イベント処理について説明します。

1.4.1 複合イベント処理

複合イベント処理は、次々と送信される大量のイベントを、あらかじめ定義しておいたルールに従い高速、かつリアルタイムに分析・判

断する技術です。

- 7 -

Page 17: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

図1.7 複合イベント処理機能概要

複合イベント処理には、以下の特徴があります。

リアルタイム処理

複合イベント処理では、外部から入力されたデータをそのままメモリ上で処理するため、従来よりも大量の入力データを高速で処理

できます。

そのため、刻々と変化していく状況にも、即座に対応を返すことができます。

一般的に、複合イベント処理によって実現できるスループットとレイテンシ(*1)は以下とされています。

- ルールに基づくスループット:数万~数百万イベント/秒

- 処理のレイテンシ:数μ秒~数m秒

参考

(*1) レイテンシ

複合イベント処理では、イベントが入力されてから、出力されるまでにかかる時間となります。

プログラムの開発不要

複合イベント処理がどのような入力イベントに対し、どのような処理を実行するかは全てルールに記述します。

特別なプログラムの開発は不要です。

検知するイベントパターンを変更したいなど、途中で処理内容を変更したい場合でも、ルールを変更するだけで対応できます。

- 8 -

Page 18: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

第2章 提供機能

本章では、Interstage Big Data Complex Event Processing Server (以降、BDCEP)で提供する機能について説明します。

本章で説明する機能は以下の通りです。

・ 主要機能

- 入力アダプター

- ロギング

- 高速フィルター

- 複合イベント処理

- 外部データアクセス

- 出力アダプター

・ 運用機能

- 運用コマンド

- エンジンログ

- リソースログ

- クラスタサービス

2.1 入力アダプター

入力アダプターは、各種センサ、スマートフォン、SOAシステムなどから送信されたイベントを受信する機能です。

BDCEPでは、以下の3つの入力アダプターを提供します。

・ SOAPアダプター

・ HTTPアダプター

・ Socketアダプター

図2.1 入力アダプター図

- 9 -

Page 19: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

2.1.1 SOAPアダプター

機能内容

SOAPアダプターは、SOAP通信により、SOAPメッセージを受信できます。

受信したSOAPメッセージの内容から、XML形式、CSV形式のイベントデータを取り出し、高速フィルターに渡します。

使用シーン

SOAシステムなど、SOAP通信が可能なシステムからイベントデータを受信する場合に使用します。

SOAPメッセージの例や、イベント送信アプリケーションのサンプルについては、「開発リファレンス」の「第3章 入力アダプター機能リファ

レンス」を参照してください。

2.1.2 HTTPアダプター

機能内容

HTTPアダプターは、HTTP通信により、HTTPリクエストを受信できます。

受信したHTTPリクエストの内容から、XML形式、CSV形式のイベントデータを取り出し、高速フィルターに渡します。

SOAP通信よりも軽量な通信が可能です。

使用シーン

イベント送信アプリケーションがWebアプリケーションの場合や、スマートフォンの場合に使用します。

リクエストヘッダーの設定や、イベント送信アプリケーションのサンプルについては、「開発リファレンス」の「第3章 入力アダプター機能

リファレンス」を参照してください。

2.1.3 Socketアダプター

機能内容

Socketアダプターでは、BDCEP独自の通信プロトコルにより、大量のイベントの高速な受信が可能です。

受信したイベントは、高速フィルター処理に渡します。

使用シーン

高スループットによる大量イベント処理が必要な場合に使用します。

プロトコルの詳細や、イベント送信アプリケーションのサンプルについては、「開発リファレンス」の「第3章 入力アダプター機能リファレ

ンス」を参照してください。

2.2 ロギング

ロギング機能は、入力アダプターから受け取った高速フィルター処理前のイベント、または複合イベント処理の出力結果のイベントを、

ログとして記録する機能です。

イベントの記録先として、Interstage Big Data Parallel Processing Server (Hadoop連携)、もしくはCEPサーバを選択できます。

Interstage Big Data Parallel Processing Serverへの記録(Hadoop連携)

イベントを、Interstage Big Data Parallel Processing Server (以降BDPP)内に生成するイベントログに記録します。

BDPPでは、イベントログの蓄積、分析、加工を行うことができます。

- 10 -

Page 20: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

イベントログの分析結果は、より高精度な複合イベント処理ルールへの反映などに利用します。

CEPサーバへの記録

イベントをCEPサーバのエンジンログに記録します。ルールの開発時に、イベントの受信確認やルールの動作確認などで利用できま

す。

図2.2 ロギング機能

目的に応じて、イベントの記録先を選択してください。

イベントログの出力先などについては、「5.6.4.1 イベントログの出力先とファイル形式」を参照してください。

注意

Hadoop連携を使用するためには、BDPPを別途導入する必要があります。

2.3 高速フィルター

高速フィルターは、入力イベントの抽出処理や、マスタデータと入力イベントとの結合処理を高速に行うことができる機能です。

高速フィルターから出力されたイベントは、複合イベント処理への入力イベントとなります。

ここでは、高速フィルターで使用するフィルタールールと、マスタデータ(業務マスタのデータをCSV形式でフォーマットしたファイル)について説明します。

2.3.1 フィルタールール

フィルタールールとは、イベントに対する抽出処理やマスタデータとの結合処理の仕方を定義したルールのことです。

入力アダプターから、高速フィルターに渡された入力イベントは、定義されたフィルタールールに基づき処理されます。

フィルタールールは、IF-THEN型の記述方式で記述します。

フィルタールールの詳細については、「開発リファレンス」の「第2章 フィルタールール言語リファレンス」を参照してください。

- 11 -

Page 21: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

フィルタールールによって実現する典型的な処理を紹介します。

入力イベントの抽出処理

入力イベントの中から、フィルタールールで設定した条件のイベントのみを抽出し、複合イベント処理機能に抽出したイベントを渡しま

す。

マスタデータ照合による抽出処理

入力イベントの内容をもとに、マスタデータを照合し、照合したマスタデータ側の値をもとに、入力イベントの抽出処理を行います。

マスタデータは、抽出処理の条件にのみ使用し、入力イベントとの結合処理は行いません。

マスタデータとの結合処理

入力イベントと、あらかじめ登録しておいたマスタデータを結合して、複合イベント処理機能に渡します。

結合結果に対して、さらに抽出処理を行うことも可能です。

図2.3 マスタデータとの結合処理例

文章の重み付け処理

入力イベント中の文章に含まれる、特定キーワードに基づき文章の重み付けを行います。

重み付けの合計が閾値より大きいイベントだけを抽出するほか、複合イベント処理との組み合わせで、閾値より大きいイベントを連続し

て受信していることを検知することも可能です。

2.3.2 マスタデータ

マスタデータとは、業務マスタのデータをCSV形式にしたファイルを指します。

マスタデータは、高速フィルターに渡された入力イベントの抽出条件や、結合対象として利用します。

マスタデータの詳細については、「5.5.2 マスタデータ(高速フィルター用)」を参照してください。

- 12 -

Page 22: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

注意

マスタデータは、CEPエンジンの起動時にCEPエンジンのメモリ上に展開されます。必要なメモリ使用量は、「3.3.1 メモリ使用量の見積

もり」の該当項目を参照してください。

2.4 複合イベント処理

複合イベント処理とは、イベント検知のルールを事前に登録することで、任意のイベントの検知や、イベント同士の結合処理などを行う

ことができる機能です。

ここでは、複合イベント処理で可能な動作について説明します。

2.4.1 複合イベント処理の動作

複合イベント処理は、高速フィルターで処理したイベントを受け取り、複合イベント処理ルールに則りイベントを処理します。

その後、複合イベント処理に定義されたルールに該当したイベントは、出力アダプターに渡されます。

出力アダプターの詳細については、「2.6 出力アダプター」を参照してください。

複合イベント処理のルールは、SQL型ルール(複合イベント処理言語)で記述します。

複合イベント処理言語に関する詳細は、「開発リファレンス」の「第1章 複合イベント処理言語リファレンス」を参照してください。

以下に、BDCEPの複合イベント処理機能で可能な動作について紹介します。

イベント間のマッチング処理

高速フィルターより入力された、複数のイベントデータ同士のマッチング処理を行います。

外部データアクセス

Terracotta連携やRDB連携により、外部のデータの参照ができます。

複合イベント処理では、ルールを定義するだけで外部データの参照が可能です。

Terracotta連携の機能に関する詳細は、「2.5.1 Terracotta連携」を参照してください。

RDB連携の機能に関する詳細は、「2.5.2 RDB連携」を参照してください。

キャッシュデータと入力イベントの結合処理

複合イベント処理では、入力イベントをキャッシュとしてメモリ上に保持できます。(ウィンドウ機能)

また、保持したキャッシュデータは他の入力イベントとの結合処理が可能です。

以下の図は、結合処理の動作イメージです。

- 13 -

Page 23: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

図2.4 ウィンドウを使用したキャッシュデータと入力イベントの結合処理例

注意

・ 保持するキャッシュに応じて、メモリ使用量の見積もりが必要です。見積もり方法については、「3.3.1 メモリ使用量の見積もり」を参

照してください。

・ CEPエンジンを停止した場合、メモリ上に保持していたキャッシュは削除されます。

2.5 外部データアクセス

複合イベント処理機能では、Terracotta連携またはRDB連携により、外部データの参照を行うことができます。また、Terracotta連携では

追加、更新、削除も行うことができます。

2.5.1 Terracotta連携

BDCEPの複合イベント処理から、外部のInterstage Terracotta BigMemory Max (以降Terracotta)に格納されているキャッシュを名前付

きウィンドウとして参照できます。ウィンドウ中のデータが実際には外部にあるという意味で、このような名前付きウィンドウのことをVirtualData Windowとも言います。

以下の例では、Terracottaに格納されているキャッシュを参照し、参照したデータを入力イベントと結合し、出力アダプターに渡してい

ます。

- 14 -

Page 24: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

図2.5 Terracotta連携の例(1)

以下の例では、入力イベントをTerracottaのキャッシュに保持し、保持したキャッシュデータを他の入力イベントと結合する処理をしてい

ます。

図2.6 Terracotta連携の例(2)

Terracottaの設定方法については、「4.4.3 Terracotta連携のセットアップ」を参照してください。

- 15 -

Page 25: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

複合イベント処理からTerracottaのキャッシュを利用する方法は、「5.4.4.3.3 Terracottaのキャッシュの利用方法」を参照してください。

注意

Terracotta連携を使用するためには、Terracottaを別途導入する必要があります。

2.5.2 RDB連携

BDCEPの複合イベント処理から、RDBのデータの参照ができます。

キャッシュを使用するように設定することで毎回RDBにアクセスするよりも高速な参照が可能になります。具体的には、一度参照したク

エリのキーと結果をキャッシュに格納し、二度目以降の同一キーによるRDB参照は格納されたキャッシュからデータを取得します。

以下の例では、RDBのデータを参照し、参照したデータを入力イベントと結合して出力アダプターに渡しています。

図2.7 RDB連携の例

RDB連携の設定方法については、「4.4.4 RDB連携のセットアップ」を参照してください。

RDBのデータの参照方法は、「5.4.4.4.2 複合イベント処理ルールでのRDB参照の指定方法」を参照してください。

注意

・ キャッシュにデータを多く格納した場合、メモリの使用量も増大します。メモリ使用量に応じて、キャッシュの保持時間を設定してく

ださい。RDB参照で使用するメモリ量の見積もり方法については、「3.3.1 メモリ使用量の見積もり」を参照してください。

・ RDB連携では各種RDB製品が提供するJDBCドライバを利用します。BDCEPでは以下のJDBCドライバでの動作を確認していま

す。

- Symfoware Server (Nativeインタフェース) V12.0のJDBCドライバ

- Symfoware Server (Openインタフェース) V12.0のJDBCドライバ

- 16 -

Page 26: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

- PostgreSQL JDBC Driver Version 9.3-1100 (JDBC 4)

2.6 出力アダプター

出力アダプターは、複合イベントルールの処理結果を外部に出力する機能です。

BDCEPには、目的に応じた4種類の出力アダプターが用意されています。

図2.8 出力アダプター

表2.1 出力アダプターの概要

出力アダプター 機能内容 出力先

SOAPリスナ 複合イベント処理の結果(イベント)を、SOAP通信によってユーザー開発Webサービスに

通知します。

・ ユーザー開発Webサービス

・ エンジンログ(送信記録)

カスタムリスナ 複合イベント処理の結果をユーザー開発

Javaクラスに渡して実行します。

・ ユーザー開発Javaクラス

ロギングリスナ 複合イベント処理の結果をロギングします。 ・ イベントログ(BDPP)

・ エンジンログ

デバッグログリスナ 複合イベント処理ルールのデバッグ情報を

出力します。

・ エンジンログ

2.6.1 SOAPリスナ

複合イベント処理の結果を、SOAP通信によりユーザー開発Webサービスに送信します。

- 17 -

Page 27: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

また、エンジンログに送信記録を残します。

複合イベント処理の処理結果を、外部のアプリケーションで利用したい場合に使用します。

SOAPリスナの使用方法については、「5.4.4.5 SOAPリスナ」を参照してください。

また、「5.4.8 SOAPリスナ定義の設計」も併せて参照してください。

注意

ユーザー開発Webサービスは、別途開発が必要です。

2.6.2 カスタムリスナ

複合イベント処理の結果を、ユーザー開発Javaクラスに渡します。

複合イベント処理の処理結果を、CEPエンジンと同じプロセス(Java VM)で動作するJavaプログラムで処理したい場合に使用します。

カスタムリスナの使用方法については、「5.4.4.6 カスタムリスナ」を参照してください。

注意

ユーザー開発Javaクラスは、別途開発が必要です。

2.6.3 ロギングリスナ

複合イベント処理の結果を、ログ格納領域にロギングします。

複合イベント処理の結果を、Hadoopシステム(BDPP)で分析したい場合に使用します。

ロギングリスナの使用方法については、「5.4.4.7 ロギングリスナ」を参照してください。

2.6.4 デバッグログリスナ

複合イベント処理ルールのデバッグ情報をエンジンログに出力します。

複合イベント処理ルールに対して動作確認を行いたい場合に使用してください。

デバッグログリスナの使用方法については、「5.7.1.2.1 デバッグログリスナ」を参照してください。

注意

デバッグログリスナは、性能低下を招く可能性があるため、開発時のみに使用するようにしてください。

2.7 運用コマンド

BDCEPの運用操作機能をコマンドで提供します。

以下に、提供するコマンドの一覧を示します。

コマンドの詳細については、「第8章 コマンドリファレンス」を参照してください。

分類 コマンド名 コマンド概要

導入 cepconfigeng CEPエンジン作成/削除

開発 cepdeployrsc ・ 開発資産配備

・ ルール(*1)およびマスタデータの動的変更

cepgetrsc 開発資産参照

- 18 -

Page 28: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

分類 コマンド名 コマンド概要

cepundeployrsc 開発資産配備解除

運用 cepdispeng CEPエンジンの状態表示

cepdispserv CEPサービス(*2)の状態表示

cepstarteng CEPエンジン起動

cepstartserv CEPサービス(*2)の起動

cepstopeng CEPエンジン停止

cepstopserv CEPサービス(*2)の停止

保守・チューニング cepgetjvmopt JVMオプション参照

cepsetjvmopt JVMオプション設定

トラブルシュート cepcollectinfo 調査資料一括採取

(*1) フィルタールールおよび複合イベント処理ルール

(*2) CEPサーバ上のCEPエンジンを管理するサービス

2.7.1 ルールおよびマスタデータの動的変更

ルールおよびマスタデータの動的変更機能により、CEPエンジンを停止せずに、新しいルール(フィルタールールおよび複合イベント

処理ルール)への置き換えや、新しいマスタデータの再読み込みが可能です。

CEPエンジンの停止、起動の処理が不要になるため、ルールの置き換えやマスタデータの再読み込みにかかる時間を短縮できます。

動的変更の詳細については、「8.3 cepdeployrsc」を参照してください。

2.8 エンジンログ

エンジンログには、メモリ不足やロギング失敗など、CEPエンジンで発生したエラー情報が出力されます。

CEPエンジンで何らかの異常を検知した場合に、本ログを解析することで原因を特定できます。

また、複合イベント処理ルールにデバッグログリスナを設定した場合は、記述した複合イベント処理ルールのデバッグ情報が出力され

ます。

また、ロギング機能でのイベントの記録先としても利用します。

エンジンログの出力先など詳細については、「6.1.5.3 ログによる異常監視」を参照してください。

2.9 リソースログ

リソースログには、定期的に収集された、CEPエンジンのリソース情報が出力されます。

本ログを分析することにより、リソースの利用状況の把握やチューニングが可能となります。

リソースログの出力項目や、出力先など詳細については 「6.1.5.4 CEPエンジンのリソース利用状況の確認」 を参照してください。

2.10 クラスタサービス

CEPサーバのハードウェア故障による長時間の業務停止を防止するため、BDCEPのクラスタサービス機能により、PRIMECLUSTERを

利用した高信頼システムの構築が可能です。

詳細については、「7.2.1 高信頼システム運用の概要」を参照してください。

- 19 -

Page 29: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

第3章 システム構成と設計

ここでは、Interstage Big Data Complex Event Processing Server (以降、BDCEP)のシステム構成と設計について説明します。

3.1 システム構成

BDCEPと関連製品のシステム構成図を以下に示します。

各機能に関しては、「第2章 提供機能」を参照してください。

連携機能について

BDCEPでは、以下の製品との連携が可能です。xは任意の数字です。

・ Hadoop連携で利用可能な製品

- Interstage Big Data Parallel Processing Server V1.0.x の V1.0.1以降

・ Terracotta連携で利用可能な製品

- Interstage Terracotta BigMemory Max V4.0.x の V4.0.1以降

・ RDB連携で利用可能な製品 (以下の製品のJDBCドライバがサポートするRDBと連携可能です)

- Symfoware Server (Nativeインタフェース) V12.x.x の V12.0.0以降

- Symfoware Server (Openインタフェース) V12.x.x の V12.0.0以降

- PostgreSQL JDBC Driver Version 9.x-xxxx (JDBC 4) の Version 9.3-1100以降

上記の連携機能を使用する場合は、CEPサーバとは別に各製品をインストールしたサーバを用意する必要があります。

製品ごとに必要となるサーバ構成の設計や、導入手順については、各製品のマニュアルを参照してください。

連携のためのCEPサーバのセットアップについては「4.4 セットアップ」を参照してください。

- 20 -

Page 30: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

3.2 システム構成の設計

システム構成の設計について説明します。

3.2.1 システム構成の設計

どのような業務でBDCEPを使用するか、BDCEPを利用することで何を実現したいかに合わせて、必要な機能や連携システムを明確に

して、以降の設計を行ってください。

システムの構成や、各機能の内容については、「3.1 システム構成」や、「第2章 提供機能」を参照してください。

BDCEPをスケーラブルな構成や、高信頼な構成で運用する場合は、それぞれ「7.1 スケーラブルシステム運用」、「7.2 PRIMECLUSTERを使った高信頼システム運用」を参照してください。

3.2.2 CEPサーバの設計観点

業務ごとに使用する機能を決定した後は、CEPサーバの構成の見積もりを行います。見積もりには、以下の各機能の設計が必要で

す。

・ 全体の設計

・ 入力アダプターの設計

・ 高速フィルターの設計

・ 複合イベント処理の設計

・ 出力アダプタ―の設計

以降では、各機能の設計において検討が必要な事項について説明します。ここで検討した事項は、「3.3 システム資源の設計」で使用

します。

3.2.2.1 全体の設計

CEPサーバ全体の設計に関して、検討すべき事項は以下の通りです。

・ CEPサーバで運用するCEPエンジンの数

3.2.2.2 入力アダプターの設計

入力アダプターに関して、検討すべき事項は以下の通りです。

・ 使用する入力イベントの種類

・ 各入力イベントの詳細

- 単位時間あたりの受信数

- 大データサイズ

- 平均データサイズ

- ロギングの有無

- 項目数

3.2.2.3 高速フィルターの設計

高速フィルター処理の設計に関して、検討すべき事項は以下の通りです。

・ 高速フィルター文(if-then文)の数

・ 各高速フィルター文(if-then文)の詳細

- 高速フィルター文に指定する検索条件

- 使用するマスタデータ

- 21 -

Page 31: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

- 高速フィルター処理済みイベントの種類(入力イベントと項目内容が異なるもの)

・ 高速フィルター処理済みイベントの詳細

- 単位時間あたりの発生数

- 平均データサイズ

- 項目数

・ 使用するマスタデータの種類

・ 各マスタデータの詳細

- レコード数

- 各項目の平均データサイズ

- ファイルサイズ

3.2.2.4 複合イベント処理の設計

複合イベント処理の設計に関して、検討すべき事項は以下の通りです。

・ Terracotta連携の有無

・ 参照するTerracottaのキャッシュの種類

・ RDB連携の有無

・ RDB連携で使用するキャッシュサイズの詳細

- キャッシュ保持期間

- キャッシュ破棄間隔

3.2.2.5 出力アダプタ―の設計

出力アダプターに関して、検討すべき事項は以下の通りです。

・ 複合イベント処理ルールから呼び出すユーザー開発Webサービスの種類

・ ユーザー開発Webサービスの呼び出しの詳細

- 単位時間あたりの呼び出し回数

- 平均データサイズ

・ 複合イベント処理ルールでロギングするデータ(イベント、またはルールの処理結果)の種類

・ ロギングするデータの詳細

- 単位時間あたりの発生数

- 平均データサイズ

・ 複合イベント処理ルールから呼び出すユーザー開発Javaクラス(カスタムリスナ)の種類

・ ユーザー開発Javaクラスの呼び出しの詳細

- 単位時間あたりの呼び出し回数

- 平均データサイズ

3.2.3 連携するHadoopシステムの設計観点

Hadoop連携によりロギングを行う場合、Hadoopシステムの設計に対して提供が必要な事項は以下の通りです。

これらの情報をもとに、Hadoopシステム内に必要なイベントログの格納領域を設計してください。Hadoopシステム自体の設計について

は、Interstage Big Data Parallel Processing Serverの製品マニュアルを参照してください。

・ ロギング対象データ(イベント、または複合イベント処理ルールの処理結果)の種類

- 22 -

Page 32: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

・ 各ロギング対象データの詳細

- 単位時間あたりの発生数

- 平均データサイズ

- 蓄積期間

3.2.4 連携するTerracottaサーバの設計観点

Terracotta連携を行う場合、Terracottaサーバ側の設計に対して提供が必要な事項は以下の通りです。

この情報をもとに、Terracottaサーバの設計を行ってください。Terracottaサーバ自体の設計については、Interstage Terracotta BigMemoryMaxのマニュアルを参照してください。

・ キャッシュに格納するデータサイズの総計

3.2.5 連携するRDBサーバの設計観点

RDB連携を行う場合、RDBサーバ側の設計に対して提供が必要な事項は以下の通りです。

これらの情報をもとに、RDBサーバの設計を行ってください。RDBサーバ自体の設計については、連携するRDB製品のマニュアルを

参照してください。

・ RDBサーバの同時接続数

- RDB連携を行うCEPエンジンの数 × 2で計算

・ RDB連携で発行する各クエリの詳細

- 単位時間あたりの発行回数

- クエリのSQL文

3.3 システム資源の設計

3.3.1 メモリ使用量の見積もり

CEPサーバにて使用するメモリ量を算出する計算式を以下に示します。

必要となるメモリ見積もり量 = A + ((B + C + D + E + F) × 使用するCEPエンジン数 + G + H)× 1.2 + I

表3.1 メモリの見積もり式の項目説明

項目 説明 メモリ使用量

A ベースメモリ量です。 2.7GB

B 高速フィルタールール使用時のメモリ量で

す。

「3.3.1.1 高速フィルタールール使用時のメモリ量」を参照してくだ

さい。

C 高速フィルターでマスタデータを使用した

場合のメモリ量です。

「3.3.1.2 高速フィルターでマスタデータを使用した場合のメモリ

量」を参照してください。

D 複合イベント処理でのルール使用時のメモ

リ量です。

見積もり式は以下の通りです。(単位:MB)

ルール定義数 × 31MB

E 複合イベント処理でのイベントタイプ定義

使用時のメモリ量です。

見積もり式は以下の通りです。(単位:MB)

(入力イベントの種類の数 + 高速フィルタールール処理済みイベ

ントの種類の数) × 37MB

- 23 -

Page 33: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

項目 説明 メモリ使用量

F 複合イベント処理でのSOAPリスナ定義使

用時のメモリ量です。

見積もり式は以下の通りです。(単位:MB)

ユーザー開発Webサービスの数 × 2.5MB

G Terracotta連携で必要なメモリ量です。 見積もり式は以下の通りです。(単位:MB)

キャッシュのデータプールサイズ × Terracotta連携を行うCEPエ

ンジンの数

キャッシュのデータプールサイズの値は、「9.3.1 Terracottaのキャッ

シュの構成情報ファイル」を参照してください。

H RDB連携(キャッシュ使用)で必要なメモリ

量です。

見積もり式は以下の通りです。(単位:MB)

RDB連携を行うCEPエンジンの必要メモリ量 =(キャッシュ保持時間 + キャッシュ破棄間隔)× 1秒当たりの検索条件が異なるRDB検索回数

× 検索条件にヒットする平均レコード数

× (抽出カラムの合計サイズ(バイト) + 15)× 13 ÷ 1048576

RDB連携で必要なメモリ量 = RDB連携を行うCEPエンジンの必要メモリ量の合計

I カスタムリスナから呼び出す、ユーザー開

発Javaクラスが使用するメモリ量です。

ユーザー開発Javaクラスの実装内容に依存します。

3.3.1.1 高速フィルタールール使用時のメモリ量

高速フィルタールール使用時のメモリ量を算出する計算式を以下に示します。(単位:バイト)

高速フィルタールール使用時のメモリ量=各if-then文で必要なメモリ量の合計

if-then文で必要なメモリ容量=272×1024×1024+960×1024×R+16×L+8×α

変数 意味 単位

R 高速フィルタールールの出力式に記述する出力項目の数 個

L 入力イベントの 大データサイズ バイト

α 部分文字、文字範囲、数値範囲の検索で使用する領域 (*1) バイト

(*1) 部分文字指定、文字範囲指定または数値範囲指定の検索を実行する場合は、以下の計算で算出します。

部分文字の数、文字の範囲、または数値の範囲 × キーワードの文字数 × 2,048バイト

部分文字指定、文字範囲および数値範囲指定を組み合わせて検索を実行する場合は、以下の計算で算出します。

部分文字の数 × 文字の範囲 × 数値の範囲 × キーワードの文字数 × 2,048バイト

・ 「部分文字の数」には、“|”で区切られた部分の個数を指定します。

例えば、“高(田|山|見沢)太郎”という検索キーワードを指定した場合、部分文字の数は3となります。

・ 「文字の範囲」には、“-”で区切ったASCII文字の文字コード値の範囲を指定します。

例えば、“class[A-C]”という検索キーワードを指定した場合、その範囲は0x41(A)、0x42(B)、0x43(C)となるため、文字範囲は3とな

ります。

・ 「数値の範囲」には、“,”で区切った数値1と数値2の範囲を指定します。

例えば、“アルコール[9,11]%”という検索キーワードを指定した場合、その範囲は9、10、11となるため、数値範囲は3となります。

3.3.1.2 高速フィルターでマスタデータを使用した場合のメモリ量

マスタデータを使用する場合、使用しない場合に加えて以下の量のメモリ容量が必要です。

- 24 -

Page 34: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

マスタデータを使用する場合のメモリ使用量=各if-then文で必要なメモリ容量の合計

if-then文で必要なメモリ容量=各出力項目で必要なメモリ使用量の合計+各結合関係式で必要なメモリ容量の合計

出力項目で必要なメモリ使用量=N×(B+60)

(数値型、または文字列型の完全一致を指定した場合)

結合関係式で必要なメモリ容量=N×(216+A)

(文字列の部分一致を指定した場合)

結合関係式で必要なメモリ容量=α×N×(2×A-(log10Nまたは1の大きい方))×144

各変数の意味は以下の通りです。

変数 意味 単位

N マスタデータのレコード数 件数

A 検索式、または連結式の結合関係式に指定したマスタ項目の平均データサイズ (*1) バイト

B 出力式の出力項目に指定したマスタ項目の平均データサイズ (*1) バイト

α 連結キー係数 (*2) 0 < α < 1

(*1) 結合関係式、および、出力項目にval関数が指定されている場合のデータサイズは16です。

(*2) 高速フィルタールールの連結条件に指定したマスタデータの内容に依存します(下表)。

表3.2 連結キー係数

マスタデータの内容 連結キー係数

キーの後半に値の変化が多い場合

例:(000001、000002、000012、000125など)

0.4

キーの前半に値の変化が多い場合

例:(100-001、210-001、321-001など)

0.6

キーの全体に値の変化が多い場合

例:(123456、234512、912384など)

0.8

3.3.2 ディスク使用量の見積もり

CEPサーバで必要なディスク使用量を算出する計算式を以下に示します。

必要となるディスク使用量 = (A + B + C + D + E + F + G + H) × 1.2

表3.3 ディスク使用量の見積もり式の項目説明

項目 説明 ディレクトリ 見積もりディスク使用量

A ベースディスク使用

以下のディレクトリです。

/opt

/etc/opt

/var/opt

以下の通りです。

/opt : 900MB

/etc/opt : 30MB

/var/opt : 60MB

B イベントログ

(高速フィルター使用

前)

「5.6.4.1 イベントログの出力先とファイル形式」を参

照してください。

(*1)

C イベントログ

(複合イベント処理

後)

「5.6.4.1 イベントログの出力先とファイル形式」を参

照してください。

(*2)

- 25 -

Page 35: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

項目 説明 ディレクトリ 見積もりディスク使用量

D リソースログ [高速フィルター]

/var/opt/FJSVcep/cep/flt/logs/ResourceLog/CEPエ

ンジン名

[複合イベント処理]

/var/opt/FJSVcep/cep/cep/logs/ResourceLog/CEPエンジン名

見積もり式は以下の通りです。(単位:MB)

2MB × 使用するCEPエンジン数

E エンジンログ [高速フィルター]

/var/opt/FJSVcep/cep/flt/logs/EngineLog/CEPエン

ジン名

[複合イベント処理]

/var/opt/FJSVcep/cep/cep/logs/EngineLog/CEPエ

ンジン名

見積もり式は以下の通りです。(単位:MB)

200MB × 使用するCEPエンジ

ン数

F カスタムログ /var/opt/FJSVcep/cep/cep/logs/EngineLog/CEPエ

ンジン名

見積もり式は以下の通りです。(単位:MB)

100MB × 使用するCEPエンジ

ン数

G マスタデータ マスタ定義ファイルのdataFileに指定したパスになり

ます。

マスタ定義ファイルの詳細は「9.2.3 マスタ定義ファ

イル」を参照してください。

マスタデータのファイルサイズに

なります。

H 高速フィルターの保

守用ログ

/var/opt/FJSVisjee/nodeagents/ijna/CEPエンジン名

_Flt_Ins/current見積もり式は以下の通りです。(単

位:MB)

(高速フィルタールールに記述し

たフィルター文の合計数 ×1.6+

0.2)×4MB

I その他の保守用ログ

(上記のログを除く)

/var/opt/FJSVisjee 配下のログ

/var/opt/FJSVjs2su 配下のログ

/var/opt/FJSVcep 配下のログ

/var/opt/FJSVihs 配下のログ

/var/opt/FJSVjs5 配下のログ

/var/opt/FJSVj2ee 配下のログ

/var/opt/FJSVisjmx 配下のログ

/var/opt/FJSVisas 配下のログ

/var/opt/FJSVod 配下のログ

見積もり式は以下の通りです。(単

位:MB)

1301MB+618MB×使用する

CEPエンジン数

J ユーザー開発Javaクラスによるファイル出

力(カスタムログは除

く)

ユーザー開発Javaクラスの実装内容に依存します。 ディスク使用量は、ユーザー開発

Javaクラスの実装内容に依存しま

す。

(*1) 入力アダプターでロギング対象となるイベントについて計算します。計算式は以下の通りです。

イベントログ(B)のディスク使用量(単位:KB) = 各ロギング対象イベントのディスク使用量の合計

ロギング対象イベントのディスク使用量(単位:KB)

= 1秒あたりのイベント受信数 × 平均データサイズ(単位:KB) × イベントログの蓄積期間(単位:秒) × 1.2

(*2) 複合イベント処理で、ロギング対象となるデータ(イベント、ルールの処理結果)について計算します。計算式は以下の通りです。

イベントログ(C)のディスク使用量(単位:KB) = 各ロギング対象データのディスク使用量の合計

- 26 -

Page 36: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

ロギング対象データのディスク使用量(単位:KB)

= 1秒あたりのデータ発生数 × 平均データサイズ(単位:KB) × イベントログの蓄積期間(単位:秒) × 1.2

- 27 -

Page 37: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

第4章 インストールおよびセットアップ

本章では、Interstage Big Data Complex Event Processing Server (以降、BDCEP)のインストール/アンインストール方法について説明

します。また、インストール後のセットアップ方法について説明します。

BDCEPを高信頼な構成で運用する場合は、先に「7.2.3 クラスタサービスの環境構築」を参照してください。

4.1 インストール概要

BDCEPのインストール概要について説明します。

4.1.1 インストールの方法

BDCEPのインストールは、シェルスクリプトを利用して行います。インストールには、以下の方法があります。

対話式インストール

インストーラからエンジン実行ユーザー名などの問い合わせを行い、それに対するユーザーからの指定に従って、インストールを実行

します。

サイレントインストール

インストーラからの問い合わせを行わず、インストーラの起動時に指定された設定ファイルに従って、インストールを実行します。

4.1.2 インストールされるパッケージ

BDCEPでインストールされるパッケージの一覧を以下に示します。

表4.1 パッケージ一覧

分類 パッケージ名 補足

BDCEPの基本機能 FJSVcep

FJSVes

FJSVextp

FJSVihs

FJSVisas

FJSVisco

FJSVisgui

FJSVisjee

FJSVisjmx

FJSVisscs

FJSVj2ee

FJSVJavaSE-jdk6-rhel5 Red Hat Enterprise Linux 5 (for Intel64)の場合

にインストールされます

FJSVJavaSE-jdk6-rhel6 Red Hat Enterprise Linux 6 (for Intel64)の場合

にインストールされます

FJSVjs2su

FJSVjs5

FJSVjssrc

FJSVod

FJSVots-EE

- 28 -

Page 38: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

分類 パッケージ名 補足

FJSVporb

FJSVsclr64

FJSVsmee64

FJSVsvmon

FJSVtd

FJSVtdis

FJSVxmlpc

注意

BDCEPが提供するパッケージを直接rpmコマンドなどでインストール/アンインストールした場合、正常に動作しません。

技術サポート員による指導がある場合を除き、必ずBDCEPのインストールシェルスクリプト/アンインストールシェルスクリプトを使い、

インストール/アンインストールを行ってください。

4.2 インストール条件

インストールに必要な資源について説明します。

4.2.1 ハードウェア環境

BDCEPを使用するためには、以下のハードウェア条件を満たす必要があります。

・ PRIMERGY RXシリーズ、PRIMERGY TXシリーズ

また、BDCEPを使用するには十分なメモリ環境が必要です。

メモリサイズの見積りについては、「第3章 システム構成と設計」を参照してください。

4.2.2 ソフトウェア環境

BDCEPを使用するためには、以下のソフトウェアが必要です。

4.2.2.1 前提基本ソフトウェア

以下の基本ソフトウェアが必要です。

基本ソフトウェア名 備考

Red Hat Enterprise Linux 5 (for Intel64) 本ソフトウェアは、バージョン・レベル5.3以降での運用をサポート

しています。

Red Hat Enterprise Linux 6 (for Intel64) 本ソフトウェアは、RHSA-2010:0842 (kernel-2.6.32-71.7.1.el6) 以降での運用をサポートしています。

バージョン・レベル 6.1以降はRHSA-2010:0842を適用済みです。

注意

BDCEPはOSのSELinuxを無効にした環境で動作保証します。

- 29 -

Page 39: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

参考

BDCEPは、Red Hat Enterprise Linux 6 (for Intel64)上で動作する場合、OSを 低限のオプションでインストールしたパッケージに加

え、以下のパッケージを使用します。

パッケージ アーキテクチャー

alsa-lib x86_64

cloog-ppl x86_64

compat-libtermcap i686

compat-readline5 i686

cpp x86_64

file x86_64

gcc x86_64

gcc-c++ x86_64

gdb x86_64

glibc i686

glibc-devel x86_64

glibc-headers x86_64

kernel-headers x86_64

libICE x86_64

libSM x86_64

libX11 x86_64

libX11-common noarch

libXau x86_64

libXext x86_64

libXi x86_64

libXp x86_64

libXt x86_64

libXtst x86_64

libgomp x86_64

libstdc++-devel x86_64

libtool-ltdl x86_64

libxcb x86_64

make x86_64

mpfr x86_64

ncurses-libs i686

nss-softokn-freebl i686

perl x86_64

perl-Module-Pluggable x86_64

perl-Pod-Escapes x86_64

perl-Pod-Simple x86_64

perl-libs x86_64

- 30 -

Page 40: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

パッケージ アーキテクチャー

perl-version x86_64

ppl x86_64

strace x86_64

tcsh x86_64

unixODBC x86_64

zlib i686

4.2.2.2 必須パッチ

以下のパッチを事前にインストールする必要があります。

項番 基本ソフトウェア パッチID/一括修正

1 Red Hat Enterprise Linux 6 (for Intel64) RHBA-2011:0321-1

4.2.2.3 必要なパッケージ

BDCEPを使用する場合、以下のパッケージが必要となります。

各パッケージが導入されてない環境にBDCEPをインストールする場合には、BDCEPのインストーラによりインストールされます。

項番 パッケージ名 備考

1 FJSVcir

(CIRuntime Application)

富士通ミドルウェア製品共通ツールである「アンインストールと管理(ミドルウェ

ア)」です。インストールされている富士通ミドルウェア製品情報の管理や製品

の削除を行います。

2 FJSVqstl

(FJQSS)

富士通ミドルウェア製品共通の資料採取ツールです。

4.2.2.4 排他ソフトウェア

以下のソフトウェア/パッケージを同一システムにインストールしないでください。

項番 製品名 バージョン・レベル 備考

1 Interstage Application Server V9.0.0以降 (*1)

2 Interstage Application Development CycleManager

V10.1以降

3 Interstage Big Data Complex Event ProcessingServer

V1.0.0以降 同一オペレーティング・システムに

複数インストールすることはできませ

ん。

4 Interstage Big Data Parallel Processing Server V1.0.0以降 開発実行環境サーバ機能は同一

システムにインストール可能です。

5 Interstage Business Application Server V9.0.0以降 (*1)

6 Interstage Service Integrator V9.0.0以降 (*1)

7 Interstage Job Workload Server V8以降

8 Interstage List Works V9以降

9 Interstage Service Integrator V9.0.0以降 (*1)

10 Interstage Shunsaku Data Manager V7

11 Interstage Web Server V9.0.0以降 (*1)

- 31 -

Page 41: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

項番 製品名 バージョン・レベル 備考

12 Interstage Web Server Express V11.0.0以降 (*1)

13 ServerView Resource Orchestrator CloudEdition

V3以降

14 Systemwalker Availability View V13.3.0以降 (*1)

15 Systemwalker Centric Manager V13.4.0以降 Systemwalker Centric Managerの“業務サーバ”は同一システムにイ

ンストール可能です。

16 Systemwalker IT Change Manager V14以降

17 Systemwalker Network Manager V12以降

18 Systemwalker Service Catalog Manager V14.1以降

19 Systemwalker Service Quality CoordinatorEnterprise Edition

V13.4以降 ダッシュボード/BrowserAgentを利

用する場合のみ、排他ソフトウェア

です。

20 Systemwalker Software ConfigurationManager

V14.1以降

(*1) Red Hat Enterprise Linux 5 (for Intel64)またはRed Hat Enterprise Linux 6 (for Intel64)において、32bitモードでの動作をサポート

する各製品についても同一システムにインストールすることはできません。

4.2.3 インストール時に必要な資源

BDCEPをインストールするには、以下の資源が必要です。

ディスク容量

BDCEPをインストールするには、以下のディスク容量が必要です。必要があれば、該当するファイルシステムのサイズを拡張してくださ

い。

ディレクトリ 必要なディスク容量

/opt 900MB

/etc/opt 30MB

/var/opt 60MB

メモリ容量

BDCEPのインストールのために、以下のメモリ容量が必要です。必要があれば、メモリの搭載量を拡張してください。

・ 2.7GB

4.2.4 運用時に必要な資源

BDCEPを運用するためには、以下の資源を見積り、必要な容量を用意してください。

・ メモリ

・ ディスク

資源の見積りについては、「第3章 システム構成と設計」を参照してください。

4.3 インストール

BDCEPのインストール方法について説明します。

- 32 -

Page 42: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

4.3.1 インストール前の作業

BDCEPをインストールする前に必要な作業について説明します。

・ /etc/hostsの設定

・ 使用するポート番号の確認

・ ディスクの空き容量の確認

・ エンジン実行ユーザーおよびグループの作成

・ システムパラメーターの確認

・ リソース制限値の確認

・ /etc/cron.daily/tmpwatch の修正 (Red Hat Enterprise Linux 5.4以前の場合)

・ FJSVsmee64、FJSVsclr64パッケージの削除

4.3.1.1 /etc/hostsの設定

CEPサーバのホスト名(*1)でネットワークの名前解決が可能なように、/etc/hosts にCEPサーバのホスト名を登録します。登録にあたり次

の点にご注意ください。

・ 「127.0.0.1」(CEPサーバのループバックアドレス)にCEPサーバのホスト名を登録する場合は、必ずCEPサーバの外部からアクセス

する時のIPアドレスの設定を先に記載してください。

・ または、「127.0.0.1」にCEPサーバのホスト名を設定しないでください。

(*1) /etc/sysconfig/network ファイルの HOSTNAME パラメーターの設定値になります。

/etc/hostsの設定例

127.0.0.1にCEPサーバのホスト名 cepsv1 を設定する例です。この例では、CEPサーバの外部からアクセスする時のIPアドレスを10.10.10.10としています。

10.10.10.10 cepsv1

127.0.0.1 cepsv1 localhost.localdomain localhost

4.3.1.2 使用するポート番号の確認

BDCEPが使用するポート番号が使用可能か確認します。BDCEPで使用するポート番号は以下の通りです。該当のポートが使用でき

るようにファイアーウォールやOSの設定を行ってください。

ポート番号 説明

80 入力アダプター(SOAPアダプター、HTTPアダプター)が、入力イベントの受信に使用する

ポート番号です。

81 BDCEPの内部で使用するポート番号です。

CEPサーバ外からのアクセスは不要です。102

389

636

2000

2465

3279

4433

- 33 -

Page 43: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

ポート番号 説明

5432

6666

8002

8009

8080

8686

8909

8919

9700

10550

10555

12000

12001

12200

12210

12220

12230

13000

23600-23602

23700-23710

28080

28090-28100

28686-28696

任意のポート 入力アダプターのSocketアダプターが、入力イベントの受信に使用するポート番号です。

5001から32767までの範囲で未使用のポート番号を、1つのCEPエンジンあたり1つ、CEPサーバ全体で 大5つ設定して使用します。

使用するポート番号の設定は、インストール後のCEPエンジンのセットアップで行います。

なお、初期セットアップ時に作成されるCEPエンジンには9600番ポートが設定されていま

す。

4.3.1.3 ディスクの空き容量の確認

ディスクに十分な空き容量があることを確認します。必要なディスク容量の詳細については、「4.2.3 インストール時に必要な資源」を参

照してください。

空きディスクが不足している場合は、該当するファイルシステムのサイズを拡張してください。

4.3.1.4 エンジン実行ユーザーおよびグループの作成

CEPエンジンを実行する特定のユーザーおよびグループを作成します。ここで作成したユーザー、グループの権限で、CEPエンジン

の各プロセスを実行します。

ユーザー名「isbdcep」、グループ名「isbdcep」で作成する場合の操作例

- 34 -

Page 44: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

$ su - <ENTER>

# /usr/sbin/groupadd isbdcep <ENTER>

# /usr/sbin/useradd -g isbdcep isbdcep <ENTER>

注意

・ ユーザーの作成方法は、システムの管理方針により異なります。必ずマシン管理者に確認してください。

・ ユーザー名およびグループ名の長さは、8文字以内にしてください。

4.3.1.5 システムパラメーターの確認

BDCEPを運用する際にはシステムパラメーターのチューニングが事前に必要です。

/etc/sysctl.confを編集して、パラメーターの"種別"により、対象のシステムパラメーターの値を適切な値に変更してください。

・ 種別が" 大"の場合

すでに設定されている値(初期値または以前の設定値)が表の値以上の場合は変更不要です。表の値より小さい場合は、表の値

に変更してください。

・ 種別が"加算"の場合

すでに設定されている値(初期値または以前の設定値)に表の値を加算してください。加算する前にシステム上限値を確認し、加

算した値がシステム上限値を超える場合は、システム上限値を設定してください。

現在のシステムパラメーターは "/sbin/sysctl -a"で確認できます。

変更後は "/sbin/sysctl -p /etc/sysctl.conf" を実行するか、OSを再起動してください。

変更方法の詳細については、OSのドキュメントを参照してください。

以下は設定対象のシステムパラメーターです。

共有メモリ

パラメーター 説明 設定値 種別

kernel.shmmax 共用メモリの 大サイズ 57413492 大

kernel.shmmni 共用メモリセグメントの 大数 41 加算

セマフォ

セマフォの設定値は、各パラメーター値を以下の形式で指定します。

kernel.sem = SEMMSL値 SEMMNS値 SEMOPM値 SEMMNI値

パラメーター 説明 設定値 種別

SEMMSL値 セマフォ識別子あたりの 大セマフォ数 512 大

SEMMNS値 システム全体のセマフォ数 5763 加算

SEMOPM値 セマフォコールあたりの 大演算子数 50 大

SEMMNI値 システム全体のセマフォ演算子数 1143 加算

メッセージキュー

パラメーター 説明 設定値 種別

kernel.msgmax メッセージの 大サイズ 16384 大

kernel.msgmnb メッセージキュー上のメッセージの 大バイト数 32768 大

- 35 -

Page 45: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

パラメーター 説明 設定値 種別

kernel.msgmni メッセージキューIDの 大数 526 加算

4.3.1.6 リソース制限値の確認

BDCEPを運用する際にはリソース制限値としてエンジン実行ユーザーが実行できるプロセス(スレッド)数のチューニングが事前に必

要です。

/etc/security/limits.confを編集して、エンジン実行ユーザーが実行できるプロセス(スレッド)数を適切な値に変更してください。

BDCEPでは、エンジン実行ユーザーが実行できるプロセス(スレッド)数に「2048」以上の値を設定する必要があります。すでに設定さ

れている値(初期値または以前の設定値)に「2048」の値を加算してください。

エンジン実行ユーザーが実行できるプロセス(スレッド)数の値は以下のコマンドで確認できます。スーパーユーザーで実行してくださ

い。

# /bin/su -c 'ulimit -u' エンジン実行ユーザー名 <ENTER>

変更後はOSを再起動してください。変更方法の詳細については、OSのドキュメントを参照してください。

/etc/security/limits.confの設定例

エンジン実行ユーザー「isbdcep」で実行できるプロセス(スレッド)数を設定する例です。この例では、デフォルト値「1024」に「2048」を

加算した値を設定しています。

isbdcep soft nproc 3072

4.3.1.7 /etc/cron.daily/tmpwatchの修正 (Red Hat Enterprise Linux 5.4以前の場合)BDCEPの動作中に、次の共有メモリファイルを生成します。(XXXはユーザー名、YYYはプロセスID)

/tmp/hsperfdata_XXX/YYY

tmpwatchシェルスクリプトがcronに登録されている場合、tmpwatchシェルスクリプトにより共有メモリファイルが削除され、BDCEPの動作

に支障をきたす場合があります。

そのようなときは、共有メモリファイルがtmpwatchの削除対象外となるように/etc/cron.daily/tmpwatchのシェルスクリプトを修正してくださ

い。

/etc/cron.daily/tmpwatchシェルスクリプトの修正例

/usr/sbin/tmpwatch XXX /tmp (XXXは時間を表す数字)に該当する処理を実行する前に、以下の処理を行うように修正します。

for f in `echo /tmp/hsperfdata_*/*` ; do

/bin/touch $f > /dev/null 2>&1

done

4.3.1.8 FJSVsmee64、FJSVsclr64パッケージの削除

BDCEP以外の富士通製製品(Systemwalker Centric Managerなど)により、FJSVsmee64、FJSVsclr64パッケージが導入済みの場合は

次の作業を行います。

1. インストール済みのFJSVsmee64、FJSVsclr64パッケージの確認

FJSVsmee64、FJSVsclr64パッケージがインストールされているかを確認します。また、インストールされている場合には、そのバー

ジョン・レベルを確認します。それぞれ、以下の方法で確認します。

- 36 -

Page 46: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

# rpm -q -i FJSVsmee64 | grep Version <ENTER>

# rpm -q -i FJSVsclr64 | grep Version <ENTER>

インストールされている場合にはバージョン情報が表示されます。何も表示されなかった場合にはインストールされていないた

め、以降の作業は不要です。「4.3.2 インストール手順」に進んでください。

注意

インストールされているバージョン・レベルが、BDCEPが提供するバージョン・レベルよりも新しい場合は、BDCEPのインストール

後に、「4.3.3.2 FJSVsmee64、FJSVsclr64パッケージの再インストール」の作業が必要です。

参考

本バージョンのBDCEPが同梱しているFJSVsmee64、FJSVsclr64のバージョンは以下のとおりです。

FJSVsmee64 4.1.2

FJSVsclr64 2.0.7

2. すべての富士通製製品を停止します。停止方法については、各製品のマニュアルを参照してください。

3. FJSVsmee64、FJSVsclr64パッケージをアンインストールします。

# rpm -e FJSVsmee64 <ENTER>

# rpm -e FJSVsclr64 <ENTER>

4.3.2 インストール手順

以下の2種類の方法から、使用方法に適したインストール方法を選択してください。マルチユーザーモードでインストールをする場合

は、他のユーザーの操作がインストールに影響ないことを確認してください。

・ 対話式インストール

・ サイレントインストール

注意

すでにBDCEPがインストールされている環境にはインストールできません。

4.3.2.1 対話式インストール

1. スーパーユーザーになります。

$ su - <ENTER>

2. インストールDVD-ROMを挿入し、任意のディレクトリからDVD-ROMに格納されているインストールシェルスクリプト(install.shシェ

ル)を実行します。

# mount /dev/デバイスファイル名 <DVD-ROMマウントディレクトリ> <ENTER>

# <DVD-ROMマウントディレクトリ>/install.sh <ENTER>

3. 以下のように製品名が表示されます。

+------------------------------------------------------------+

| Interstage Big Data Complex Event Processing Server V1.1.0 |

| |

| Copyright 2012-2013 FUJITSU LIMITED |

+------------------------------------------------------------+

- 37 -

Page 47: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

4. 上記に続いて表示される以下の対話処理で、事前に作成したエンジン実行ユーザーと、エンジン実行ユーザーが所属するグ

ループ名を指定します。

作成済みのユーザー、グループのみ指定可能です。また、qを入力して<ENTER>キーを押すとインストールを中止できます。

以下はユーザー名に isbdcep、グループ名に isbdcep を指定した場合の入力例です。

Please specify the engine execution user and group.

CEP engine processes will run as the specified user and group.

It differs who performs operational commands.

Please enter the user name of the engine execution user [q]: isbdcep <ENTER>

Please enter the group name of the engine execution user [q]: isbdcep <ENTER>

5. 続いて、初期セットアップ時に作成するエンジン名を指定します。また、qを入力して<ENTER>キーを押すとインストールを中止

できます。

Please enter the initial engine's name (default: CepEngine) [q]: CepEngine <ENTER>

6. インストール内容が表示されます。

<インストールパッケージ>には、インストールするすべてのパッケージが半角空白区切りで表示されます。

Engine execution user (group):

<指定したエンジン実行ユーザー名> (<指定した所属グループ名>)

Initial engine's name:

<指定したエンジン名>

Installation packages:

<インストールパッケージ>

7. 内容を確認し、パッケージのインストールを開始する場合はyを入力して<ENTER>キーを押します。

インストールを中止する場合にはqを入力して<ENTER>キーを押します。

Do you want to proceed with the installation? [y,q]:y <ENTER>

8. インストールが正常に終了すると、以下のメッセージが出力されます。

The installation processing completed successfully.

9. インストールの正常終了後に、OSを再起動してください。引き続き、「4.3.3 インストール後の作業」を行ってください。

# shutdown -r now <ENTER>

4.3.2.2 サイレントインストール

1. インストール設定ファイルを作成します。指定するパラメーターを事前に設計および確認して作成します。

ファイルの詳細については、「9.5.1 インストール設定ファイル」を参照してください。

以下は、ファイルの例です。

エンジン実行ユーザーに isbdcep、エンジン実行ユーザーの所属グループに isbdcep、初期セットアップ時に作成するCEPエン

ジン名に CepEngine を指定しています。

BDCEP_USER_NAME=isbdcep

BDCEP_GROUP_NAME=isbdcep

BDCEP_INITIAL_ENGINE_NAME=CepEngine

- 38 -

Page 48: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

ポイント

インストール設定ファイルのひな形が、BDCEPの提供媒体(DVD-ROM)の"/samples/bdcep.conf"に格納されています。ひな形を

システムの作業ディレクトリにコピーしてから、パラメーターを編集することで、効率よく作業できます。

2. スーパーユーザーになります。

$ su - <ENTER>

3. インストールDVD-ROMを挿入し、任意のディレクトリからDVD-ROMに格納されているインストールシェルスクリプト(install.shシェ

ル)に“-s <インストール設定ファイルのパス>”オプションを付けて実行します。

実行後、BDCEPのインストールが開始されます。

# mount /dev/デバイスファイル名 <DVD-ROMマウントディレクトリ> <ENTER>

# <DVD-ROMマウントディレクトリ>/install.sh -s <インストール設定ファイルのパス> <ENTER>

注意

<インストール設定ファイルのパス>の指定は必須です。

指定した<インストール設定ファイルのパス>にファイルが無い場合や、読込みに失敗した場合、エラーメッセージを表示してイン

ストールを中止します。

4. インストールが正常に終了すると、以下のメッセージが出力されます。

The installation processing completed successfully.

5. インストールの正常終了後に、OSを再起動してください。

# shutdown -r now <ENTER>

4.3.3 インストール後の作業

インストール後の作業について説明します。

4.3.3.1 環境変数の設定

CEPサーバ利用者の環境変数PATHに、以下のパスを追加してください。

/opt/FJSVcep/bin

ポイント

CEPサーバの /etc/profile.d ディレクトリに以下の内容のファイルを作成することで、CEPサーバ利用者に対し、一律に環境変数PATHを設定できます。

ファイル: /etc/profile.d/FJSVcep.sh

# Interstage Big Data Complex Event Processing Server V1.1.0

export PATH=/opt/FJSVcep/bin:${PATH}

ファイル: /etc/profile.d/FJSVcep.csh

# Interstage Big Data Complex Event Processing Server V1.1.0

setenv PATH /opt/FJSVcep/bin:${PATH}

- 39 -

Page 49: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

4.3.3.2 FJSVsmee64、FJSVsclr64パッケージの再インストール

BDCEPがインストールしたFJSVsmee64、FJSVsclr64パッケージのバージョンが、先にインストールされていたパッケージよりも古い場

合、次の作業を行います。

1. FJSVsmee64、FJSVsclr64パッケージをアンインストールします。

# rpm -e FJSVsmee64 <ENTER>

# rpm -e FJSVsclr64 <ENTER>

2. 新しいバージョンのFJSVsmee64、FJSVsclr64パッケージを同梱していた製品から、FJSVsmee64、FJSVsclr64パッケージを再イ

ンストールします。インストール方法については、その製品のマニュアルを参照してください。

3. 「4.3.1.8 FJSVsmee64、FJSVsclr64パッケージの削除」で停止したすべての製品を起動します。起動方法については、各製品の

マニュアルを参照してください。

4.3.3.3 修正の適用

「6.3.3 修正の適用」を参照して、BDCEPおよびBDCEPに含まれるソフトウェアの修正を適用してください。

修正の適用後、BDCEPのセットアップを行います。セットアップの詳細については、「4.4 セットアップ」を参照してください。

4.3.4 インストール中にエラーが発生した場合

インストール中に失敗した場合の対処方法について説明します。

パッケージインストール前にエラーになった場合

エラーメッセージに従って対処してから、再度 install.sh を実行してください。

パッケージインストール中にエラーになった場合

uninstall.shを実行し、インストール済みのパッケージをアンインストールしてください。その後、install.sh 実行時に出力されたエラーメッ

セージに従って対処してから、再度 install.shシェルを実行してください。

詳細については、「トラブルシューティング集」の「2.1 インストール時の異常」を参照してください。

参考

インストーラのログファイル

以下はインストーラが出力するログファイルです。画面に表示されるメッセージの他、詳細な動作状況が記録されており、トラブル発生

時に参照します。

/var/tmp/bdcep_install.log

インストールに成功するとログファイルは以下の名前で保管されます。

/var/opt/FJSVcep/bdcep_install.log

4.4 セットアップ

BDCEPのセットアップについて説明します。

4.4.1 セットアップの概要

BDCEPのセットアップの概要を以下に示します。セットアップ後、開発資産の開発、CEPサーバの運用と続きます。

- 40 -

Page 50: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

4.4.2 Hadoop連携のセットアップ

BDCEPのロギング機能により、受信したイベントや、CEPエンジンから出力されるイベントを記録できます。記録先には以下の2種類が

選択できます。

・ Hadoopシステム

・ CEPサーバ(*1)

(*1)イベント受信の動作確認や、複合イベント処理の処理結果の確認の目的で、エンジンログにイベントを記録します。

Hadoopシステムにイベントを記録する場合、Hadoop連携のセットアップが追加で必要です。

連携可能なHadoopシステムは以下の通りです。xは任意の数字です。

・ Interstage Big Data Parallel Processing Server V1.0.x の V1.0.1以降

セットアップ手順

1. CEPサーバに、BDPPの開発実行環境サーバ機能をインストールおよびセットアップします。CEPエンジンはHadoopシステムに

アクセスするアプリケーションとして動作します。

詳細は、BDPPマニュアルの「ユーザーズガイド」の「6.4 開発実行環境サーバへのインストール」を参照してください。

2. Hadoopシステムに、BDCEPのインストール時に指定したエンジン実行ユーザーを、Hadoop利用ユーザーとして登録します。

詳細は、BDPPマニュアルの「ユーザーズガイド」の「第11章 ジョブの実行ユーザーの管理」を参照してください。

4.4.3 Terracotta連携のセットアップ

BDCEPの複合イベント処理機能は、Interstage Terracotta BigMemory Max(以降 Terracotta)と連携することで、Terracotta上のキャッ

シュを高速に参照できます。Terracotta連携を行うには、Terracotta連携のセットアップが追加で必要です。

連携可能なTerracottaは以下の通りです。xは任意の数字です。

・ Interstage Terracotta BigMemory Max V4.0.x の V4.0.1以降

セットアップ手順

1. CEPサーバに、Terracottaをインストールおよびセットアップします。CEPエンジンはTerracottaのクライアントとして動作します。詳

細は、Terracottaのマニュアルを参照してください。

- 41 -

Page 51: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

2. CEPサービスを停止します。

# cepstopserv <ENTER>

3. 以下の4つのファイルの名前を変更して退避します。

- /opt/FJSVisjee/lib/jersey-bundle-1.0.3.1.jar

- /opt/FJSVisjee/lib/jsr311-api-1.0.jar

- /opt/FJSVisjee/lib/jettison-1.0.1.jar

- /opt/FJSVisjee/lib/jackson-asl-0.9.4.jar

実際の変更作業は次のコマンドを実行します。

# cd /opt/FJSVisjee/lib/ <ENTER>

# mv jersey-bundle-1.0.3.1.jar jersey-bundle-1.0.3.1.jar.backup <ENTER>

# mv jsr311-api-1.0.jar jsr311-api-1.0.jar.backup <ENTER>

# mv jettison-1.0.1.jar jettison-1.0.1.jar.backup <ENTER>

# mv jackson-asl-0.9.4.jar jackson-asl-0.9.4.jar.backup <ENTER>

4. CEPサービスを再起動します。

# cepstartserv <ENTER>

5. Terracottaライセンスファイル(terracotta-license.key)のパーミッション設定を行い、エンジン実行ユーザーが読み取り可能にしま

す。

6. Terracotta連携機能設定ファイルを編集します。詳細は「9.3.2 Terracotta連携機能設定ファイル」を参照してください。

4.4.4 RDB連携のセットアップ

BDCEPの複合イベント処理機能は、RDB連携機能により、CEPサーバ外部のRDBを参照できます。RDB連携を行うには、RDB連携

のセットアップが追加で必要です。

BDCEPでは以下の製品のJDBCドライバがサポートするRDBとの連携が可能です。xは任意の数字です。

・ Symfoware Server (Nativeインタフェース) V12.x.x の V12.0.0以降

・ Symfoware Server (Openインタフェース) V12.x.x の V12.0.0以降

・ PostgreSQL JDBC Driver Version 9.x-xxxx (JDBC 4) の Version 9.3-1100以降

セットアップ手順

1. CEPサーバに、接続するRDBに合わせたJDBCドライバをインストールおよびセットアップします。CEPエンジンはRDBのクライア

ントとして動作します。詳細は、各JDBCドライバのマニュアルを参照してください。

2. RDB連携機能設定ファイルを編集します。詳細は、「9.4.1 RDB連携機能設定ファイル」を参照してください。

注意

Symfoware Server (Nativeインタフェース)と連携する場合、RDB環境の同時処理数は16以上を設定してください。

4.4.5 CEPエンジンのセットアップ

CEPエンジンのセットアップについて説明します。

・ インストール直後の状態

・ CEPエンジンの設定変更

・ CEPエンジンの新規作成

- 42 -

Page 52: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

4.4.5.1 インストール直後の状態

インストール直後は、CEPエンジンを管理するCEPサービスが起動しており、また、すぐに利用可能なCEPエンジンが一つ作成されて

います。以降、このCEPエンジンを他のCEPエンジンと区別して指す場合は「初期CEPエンジン」とします。初期CEPエンジンは停止状

態です。

図4.1 インストール直後の状態

この初期CEPエンジンは以下の設定になっています。サンプルアプリケーションの配備と動作確認はこの初期CEPエンジンを使って行

うことが可能です。

項目 設定値

CEPエンジン名 インストール時に指定した名前になります。

インストール時に指定を省略した場合は"CepEngine"です。

ロギング種別 設定されていません(ロギング機能は使用しない)

ディレクトリ名 同上

ロギングファイルオープン数 同上

ロギングサイクル時間 同上

Socketアダプターポート 9600

高速フィルター機能のJVMオプション

(*1)メモリ割り当てプールの 大値:2048MBメモリ割り当てプールの初期値:512MBPermanent世代領域の 大値: 192MB

複合イベント処理機能のJVMオプション

(*1)同上

(*1) CEPエンジンが使用するメモリについての設定です。各パラメーターの詳細については、「6.3.4.1 JVMオプションのチューニング」

を参照してください。

また、以下は初期CEPエンジン作成で使用したエンジン構成ファイルです。

/etc/opt/FJSVcep/cep/sample_eng.xml

エンジン構成ファイルの内容の見方については、「9.1.1 エンジン構成ファイル」を参照してください。

4.4.5.2 CEPエンジンの設定変更

初期CEPエンジンでロギング機能を使用する場合は、CEPエンジンの設定変更作業が必要です。

CEPエンジンの各種設定変更には、以下の2種類があり、それぞれ変更可能な項目が異なります。

- 43 -

Page 53: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

設定変更方法 変更可能な項目

cepconfigengコマンドによる設定変更 ・ ロギング設定

・ Socket通信時に使用するポート番号

cepsetjvmoptコマンドによる設定変更 ・ CEPエンジンが使用するメモリ

ここでは、cepconfigengコマンドによる設定変更について説明します。

cepsetjvmoptコマンドによる設定変更については、「6.3.4.1 JVMオプションのチューニング」を参照してください。

cepconfigengコマンドによる設定変更

cepconfigengコマンドによる設定変更の流れは以下の通りです。

CEPエンジンの設定変更手順について説明します。なお、以下の作業において、コマンド実行はスーパーユーザーで行ってください。

1. 現在のエンジン構成ファイルの用意

cepconfigengコマンドの実行時に指定するエンジン構成ファイルには、変更対象外であるCEPエンジンも定義する必要がありま

す。そのため、保管されている、現在のエンジン構成ファイルを元にして変更内容を定義します。

初期CEPエンジンの作成で使用したエンジン構成ファイルは以下の場所に保管されています。

/etc/opt/FJSVcep/cep/sample_eng.xml

初期CEPエンジン作成で使用したエンジン構成ファイルを用意する例

- 44 -

Page 54: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

# cp /etc/opt/FJSVcep/cep/sample_eng.xml /etc/opt/FJSVcep/Engine.xml <ENTER>

注意

cepconfigengコマンドに指定するエンジン構成ファイルに、作成済みのCEPエンジンの定義が含まれていない場合、cepconfigengコマンドは定義が無いCEPエンジンを削除します。

2. エンジン構成ファイルのバックアップ

現在のエンジン構成ファイルを編集する前に、エンジン構成ファイルのバックアップを作成します。編集ミスにより定義情報が失

われることを防ぐために、必ずバックアップを作成してください。

エンジン構成ファイルのバックアップ例

# cp /etc/opt/FJSVcep/Engine.xml /etc/opt/FJSVcep/Engine.bak.xml <ENTER>

3. エンジン構成ファイルの編集

エンジン構成ファイルはviコマンドなどを使用して編集し、対象のCEPエンジンの設定を定義します。

エンジン構成ファイルの書式については、「9.1.1 エンジン構成ファイル」を参照してください。

初期CEPエンジンのロギング機能を有効にする定義例

インストール直後の初期CEPエンジンに対し、CEPサーバのロギング機能(出力先はエンジンログ)を有効にする場合の定義例

です。

定義中の"CepEngine"は、インストール時に指定したCEPエンジン名によって異なります。

1

2

3

4

5

6

7

8

9

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<subSystemConfig xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1">

<engineConfig id="CepEngine">

<logging>

<type>file</type>

</logging>

<socketAdapterPort>9600</socketAdapterPort>

</engineConfig>

</subSystemConfig>

4. CEPサービスの起動状態を確認

cepconfigengコマンドの実行には、CEPサービスが起動していることが必要です。CEPサービスの状態確認はcepdispservコマン

ドで行います。cepdispservコマンドの詳細については、「8.5 cepdispserv」を参照してください。

起動していない場合は、cepstartservコマンドによってCEPサービスを起動させてください。cepstartservコマンドの詳細について

は、「8.10 cepstartserv」を参照してください。

cepdispservコマンドによるCEPサービスの起動状態の確認例

cepdispservコマンドを実行して、以下の内容が出力されるか確認します。

nnnnとなっている箇所には、動作しているプロセス番号が表示されます。

- 45 -

Page 55: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

CepEngineとなっている箇所には、作成済みのCEPエンジン名が表示されます。

# cepdispserv <ENTER>

(途中省略)

Interstage Java EE DAS started

(途中省略)

Interstage Java EE Node Agent started

(途中省略)

CEPAgentIJServerCluster running

CepEngine_flt not running

CepEngine_cep not running

(途中省略)

Status : Running

(途中省略)

jsvc (pid nnnn nnnn) を実行中...

(途中省略)

pg_ctl: server is running (PID: nnnn)

(途中省略)

Command cepdispserv executed successfully.

参考

CEPサービスの実体

CEPサービスは複数のプロセスから構成されるサービスです

5. エンジンの停止状態を確認

cepconfigengコマンドによるCEPエンジンの設定変更には、対象となるCEPエンジンが停止していることが必要です。エンジンの

状態確認はcepdispengコマンドで行います。cepdispengコマンドの詳細については、「8.4 cepdispeng」を参照してください。

CEPエンジンが起動している場合は、cepstopengコマンドによってCEPエンジンを停止させてください。cepstopengコマンドの詳細

については、「8.11 cepstopeng」を参照してください。

cepdispengコマンドによる初期CEPエンジンの停止状態の確認例

cepdispengコマンドを実行し、初期CEPエンジンについて、以下の内容が出力されるか確認します。

コマンド実行例および出力例の"CepEngine"は、インストール時に指定したCEPエンジン名によって異なります。

# cepdispeng -e CepEngine <ENTER>

engineId :CepEngine

port :9600

status_filter :STOP

status_cep :STOP

Command cepdispeng executed successfully.

6. cepconfigengコマンドの実行

編集したエンジン構成ファイルを指定して、cepconfigengコマンドを実行します。実行すると、変更確認が行われるので、そのま

ま実行して良いなら"y"と入力します。"n"または"q"でコマンドの実行をキャンセルできます。cepconfigengコマンドの詳細につい

ては、「8.2 cepconfigeng」を参照してください。

cepconfigengコマンドの実行例

編集したエンジン構成ファイルとして /etc/opt/FJSVcep/Engine.xml を指定する例です

- 46 -

Page 56: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

# cepconfigeng -f /etc/opt/FJSVcep/Engine.xml <ENTER>

Are you sure you want to change the CEP Engine configuration? [y,n,q]:y <ENTER>

Command cepconfigeng executed successfully.

7. エンジン構成ファイルの保管

cepconfigengコマンドに指定したエンジン構成ファイルは、今後さらにCEPエンジンの追加や削除、設定変更を行う際に必要に

なるため、大切に保管します。必要に応じて、外部媒体へのバックアップなどを検討します。

注意

バックアップ作成方法はシステムの管理方針により異なります。必ずマシン管理者に確認してください。

4.4.5.3 CEPエンジンの新規作成

基本的にCEPエンジンは1つだけ運用しますが、複数の開発者グループ用に開発環境を分けたい場合など、複数のCEPエンジンを用

意したい場合があります。

BDCEPは、1つのCEPサーバで 大5つまでCEPエンジンを作成できます。ここでは、cepconfigengコマンドを使用したCEPエンジンの

新規作成について説明します。

cepconfigengコマンドによるCEPエンジンの新規作成

cepconfigengコマンドによるCEPエンジンの新規作成の流れは以下の通りです。

CEPエンジンの新規作成手順について説明します。なお、以下の作業において、コマンド実行はスーパーユーザーで行ってください。

1. 現在のエンジン構成ファイルの用意

cepconfigengコマンドの実行時に指定するエンジン構成ファイルには、既存のCEPエンジンも定義する必要があります。そのた

め、保管されている、現在のエンジン構成ファイルを元にして追加するCEPエンジンの設定を定義します。

- 47 -

Page 57: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

ポイント

先に、「4.4.5.2 CEPエンジンの設定変更」の実行例に従って操作した場合、現在のエンジン構成ファイルは以下のファイルにな

ります。

/etc/opt/FJSVcep/Engine.xml

注意

cepconfigengコマンドに指定するエンジン構成ファイルに、既存のCEPエンジンの定義が含まれていない場合、cepconfigengコ

マンドは定義が無いCEPエンジンを削除します。

2. エンジン構成ファイルのバックアップ

現在のエンジン構成ファイルを編集する前に、エンジン構成ファイルのバックアップを作成します。編集ミスにより定義情報が失

われることを防ぐために、必ずバックアップを作成してください。

エンジン構成ファイルのバックアップ例

# cp /etc/opt/FJSVcep/Engine.xml /etc/opt/FJSVcep/Engine.bak.xml <ENTER>

3. エンジン構成ファイルの編集

エンジン構成ファイルはviコマンドなどを使用して編集し、新規に追加するCEPエンジンの設定を定義します。

CEPエンジン名は、他のCEPエンジンと重複しない名前にします。エンジン構成ファイルの書式については、「9.1.1 エンジン構

成ファイル」を参照してください。

CEPエンジン NewCepEngine を新規作成する定義例

4.4.5.2のCEPエンジンの設定変更の実行例に従って変更した初期CEPエンジンのほかに、以下の設定のCEPエンジンを新規作

成します。

項目 設定値 説明

CEPエンジン名 NewCepEngine 他のCEPエンジンと重複しない名

前にします

ロギング種別 ロギングを使用しないため、設定しない

ディレクトリ名 同上

ロギングファイルオープン数 同上

ロギングサイクル時間 同上

Socketアダプターポート Socket通信は行わないため、設定しない 設定しない場合は、SOAPアダプ

ターとHTTPアダプターのみ利用

可能です。

以下はエンジン構成ファイルの定義例です。

9、10行目の<engineConfig id="NewCepEngine">から</engineConfig>までが、新たに追加されるCEPエンジンの定義になりま

す。

- 48 -

Page 58: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

既存のCEPエンジンの定義は変更せずに残します。定義中の"CepEngine"は、インストール時に指定したCEPエンジン名によっ

て異なります。

1

2

3

4

5

6

7

8

9

10

11

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<subSystemConfig xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1">

<engineConfig id="CepEngine">

<logging>

<type>file</type>

</logging>

<socketAdapterPort>9600</socketAdapterPort>

</engineConfig>

<engineConfig id="NewCepEngine">

</engineConfig>

</subSystemConfig>

4. CEPサービスの起動状態を確認

cepconfigengコマンドの実行には、CEPサービスが起動していることが必要です。CEPサービスの状態確認はcepdispservコマン

ドで行います。cepdispservコマンドの詳細については、「8.5 cepdispserv」を参照してください。

5. cepconfigengコマンドの実行

編集したエンジン構成ファイルを指定して、cepconfigengコマンドを実行します。実行すると、変更確認が行われるので、そのま

ま実行して良いなら"y"と入力します。"n"または"q"でコマンドの実行をキャンセルできます。cepconfigengコマンドの詳細につい

ては、「8.2 cepconfigeng」を参照してください。

cepconfigengコマンドの実行例

編集したエンジン構成ファイルとして /etc/opt/FJSVcep/Engine.xml を指定する例です

# cepconfigeng -f /etc/opt/FJSVcep/Engine.xml <ENTER>

Are you sure you want to change the CEP Engine configuration? [y,n,q]:y <ENTER>

Command cepconfigeng executed successfully.

6. エンジン構成ファイルの保管

cepconfigengコマンドに指定したエンジン構成ファイルは、今後さらにCEPエンジンの追加や削除、設定変更を行う際に必要に

なるため、大切に保管します。必要に応じて、外部媒体へのバックアップなどを検討します。

注意

バックアップ作成方法はシステムの管理方針により異なります。必ずマシン管理者に確認してください。

4.5 セットアップの解除

ここでは、「4.4 セットアップ」でセットアップした機能について、セットアップを解除する方法について説明します。

・ CEPエンジンの削除

・ RDB連携の解除

・ Terracotta連携の解除

・ Hadoop連携の解除

4.5.1 CEPエンジンの削除

CEPエンジンの削除方法について説明します。

- 49 -

Page 59: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

不要になったCEPエンジンを削除することで、対象CEPエンジンが使用していたメモリやディスクなどのシステム資源を他の用途で利

用できます。ここでは、cepconfigengコマンドを使用したCEPエンジンの削除方法について説明します。

注意

CEPエンジンを削除すると、CEPエンジン上に配備した定義情報(ルール定義など)も削除されます。そのほか、CEPエンジンのエンジ

ンログやリソースログも削除されます。必要に応じて、バックアップを取得してください。詳細は、「6.3.2 バックアップ、リストア」を参照し

てください。

cepconfigengコマンドによるCEPエンジンの削除

cepconfigengコマンドによるCEPエンジンの削除の流れは以下の通りです。

図4.2 CEPエンジン削除の流れ

CEPエンジンの削除手順について説明します。なお、以下の作業において、コマンド実行はスーパーユーザーで行ってください。

1. 現在のエンジン構成ファイルの用意

cepconfigengコマンドの実行時に指定するエンジン構成ファイルには、既存のCEPエンジンも定義する必要があります。そのた

め、保管されている、現在のエンジン構成ファイルを元にして追加するCEPエンジンの設定を定義します。

ポイント

先に、「4.4.5.3 CEPエンジンの新規作成」の実行例に従って操作していた場合、現在のエンジン構成ファイルは以下のファイル

になります。

/etc/opt/FJSVcep/Engine.xml

- 50 -

Page 60: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

注意

cepconfigengコマンドに指定するエンジン構成ファイルに、既存のCEPエンジンの定義が含まれていない場合、cepconfigengコ

マンドは定義が無いCEPエンジンを削除します。

2. エンジン構成ファイルのバックアップ

現在のエンジン構成ファイルを編集する前に、エンジン構成ファイルのバックアップを作成します。編集ミスにより定義情報が失

われることを防ぐために、必ずバックアップを作成しましょう。

エンジン構成ファイルのバックアップ例

# cp /etc/opt/FJSVcep/Engine.xml /etc/opt/FJSVcep/Engine.bak.xml <ENTER>

3. エンジン構成ファイルの編集

エンジン構成ファイルはviコマンドなどを使用して編集し、削除対象となるCEPエンジンの定義をコメントアウトするか、削除しま

す。

エンジン構成ファイルの書式については、「9.1.1 エンジン構成ファイル」を参照してください。

CEPエンジン NewCepEngine を削除する定義例

「4.4.5.3 CEPエンジンの新規作成」の実行例に従って作成した、CEPエンジン NewCepEngine を削除します。

以下はエンジン構成ファイルの定義例です。

9~12行目では、単に該当部分の定義を削除するのではなく、<engineConfig id="NewCepEngine">から</engineConfig>ま

でをコメントアウトしています。コメントアウトにすることで、削除範囲をよく確認しながら作業できます。定義中の"CepEngine"は、

インストール時に指定したCEPエンジン名によって異なります。

1

2

3

4

5

6

7

8

9

10

11

12

13

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<subSystemConfig xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1">

<engineConfig id="CepEngine">

<logging>

<type>file</type>

</logging>

<socketAdapterPort>9600</socketAdapterPort>

</engineConfig>

<!--

<engineConfig id="NewCepEngine">

</engineConfig>

-->

</subSystemConfig>

4. CEPサービスの起動状態を確認

cepconfigengコマンドの実行には、CEPサービスが起動していることが必要です。CEPサービスの状態確認はcepdispservコマン

ドで行います。cepdispservコマンドの詳細については、「8.5 cepdispserv」を参照してください。

5. エンジンの停止状態を確認

cepconfigengコマンドによるCEPエンジンの削除には、対象となるCEPエンジンが停止していることが必要です。エンジンの状態

確認はcepdispengコマンドで行います。cepdispengコマンドの詳細については、「8.4 cepdispeng」を参照してください。

- 51 -

Page 61: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

6. cepconfigengコマンドの実行

編集したエンジン構成ファイルを指定して、cepconfigengコマンドを実行します。実行すると、変更確認が行われるので、そのま

ま実行して良いなら"y"と入力します。"n"または"q"でコマンドの実行をキャンセルできます。cepconfigengコマンドの詳細につい

ては、「8.2 cepconfigeng」を参照してください。

cepconfigengコマンドの実行例

編集したエンジン構成ファイルとして /etc/opt/FJSVcep/Engine.xml を指定する例です

# cepconfigeng -f /etc/opt/FJSVcep/Engine.xml <ENTER>

Are you sure you want to change the CEP Engine configuration? [y,n,q]:y <ENTER>

Command cepconfigeng executed successfully.

7. エンジン構成ファイルの保管

cepconfigengコマンドに指定したエンジン構成ファイルは、今後さらにCEPエンジンの追加や削除、設定変更を行う際に必要に

なるため、大切に保管します。必要に応じて、外部媒体へのバックアップなどを検討します。

注意

バックアップ作成方法はシステムの管理方針により異なります。必ずマシン管理者に確認してください。

4.5.2 RDB連携の解除

RDB連携の解除の流れは以下の通りです。

図4.3 RDB連携解除の流れ

RDB連携の解除手順について説明します。

1. 実行中アプリケーションの内容確認

実行中のアプリケーションがRDB連携を必要としていないか、アプリケーションの保守担当に問い合わせて確認します。

2. CEPエンジンの設定確認

既存のCEPエンジンに、RDB参照定義が配備されていないか確認します。RDB参照定義が配備されている場合、RDB参照定

義を配備解除します。

3. CEPサービスの停止

起動中のCEPサービスを停止します。停止方法は以下の通りです。コマンドの実行はスーパーユーザーで行ってください。

- 52 -

Page 62: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

# cepstopserv <ENTER>

4. JDBCドライバのアンインストール

JDBCドライバをアンインストールします。アンインストール方法については、各JDBCドライバのマニュアルを参照してください。

4.5.3 Terracotta連携の解除

Terracotta連携の解除の流れは以下の通りです。

図4.4 Terracotta連携解除の流れ

1. 実行中アプリケーションの内容確認

実行中のアプリケーションがTerracotta連携を必要としていないか、アプリケーションの保守担当に問い合わせて確認します。

参考

アプリケーションがTerracotta連携によりTerracottaのキャッシュ参照を行う場合、複合イベント処理ルール定義中で、create window文でvdw:ehcache()を指定します。詳細は「Terracottaのキャッシュの参照方法」を参照してください。

2. CEPサービスの停止

起動中のCEPサービスを停止します。停止方法は以下の通りです。コマンドの実行はスーパーユーザーで行ってください。

# cepstopserv <ENTER>

3. Terracottaのアンインストール

Terracottaをアンインストールします。アンインストール方法については、Interstage Terracotta BigMemory Max のマニュアルを参

照してください。

4.5.4 Hadoop連携の解除

Hadoop連携の解除の流れは以下の通りです。

- 53 -

Page 63: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

図4.5 Hadoop連携解除の流れ

1. 実行中アプリケーションの内容確認

実行中のアプリケーションがHadoop連携を行っていないか、アプリケーションの保守担当に問い合わせて確認します。Hadoop連携を行うアプリケーションがある場合、アプリケーションの修正を検討します。

参考

アプリケーションがHadoop連携を利用するには、以下の2種類の方法があります。詳細は「第5章 開発」を参照してください。

- イベントタイプ定義でuseLogging項目にtrueを指定する

- 複合イベント処理ルール定義中で、@LoggingListenerアノテーションを使用

2. CEPエンジンの設定確認

既存のCEPエンジンが、Hadoop連携の設定を行っていないか、現在のCEPエンジンの設定で使用した、エンジン構成ファイル

の内容を確認します。Hadoop連携を行うCEPエンジンがある場合、CEPエンジンの設定変更を検討します。

参考

先に、「4.4.5 CEPエンジンのセットアップ」に従って操作した場合、現在のエンジン構成ファイルは以下のファイルになります。

/etc/opt/FJSVcep/Engine.xml

Hadoop連携を行う場合、<logging>要素配下の<type>要素に"bdpp"が指定されます。エンジン構成ファイルの書式については、

「9.1.1 エンジン構成ファイル」を参照してください。

3. CEPサービスの停止

起動中のCEPサービスを停止します。停止方法は以下の通りです。コマンドの実行はスーパーユーザーで行ってください。

# cepstopserv <ENTER>

4. 開発実行環境サーバ機能のアンインストール

開発実行環境サーバ機能をアンインストールします。アンインストール方法については、Interstage Big Data Parallel ProcessingServer のマニュアルを参照してください。

4.6 アンインストール

BDCEPのアンインストール方法について説明します。

- 54 -

Page 64: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

4.6.1 アンインストール前の作業

BDCEPをアンインストールする前に必要な作業について説明します。

4.6.1.1 イベント送信の停止

CEPサーバへのイベントの送信を停止します

4.6.1.2 ユーザー資産のバックアップ

ユーザー資産をバックアップします。定義情報など、ユーザー資産のバックアップ方法については、「6.3.2 バックアップ、リストア」を参

照してください。

4.6.1.3 CEPサービスの停止

起動中のCEPサービスを停止します。停止方法は以下の通りです。コマンドの実行はスーパーユーザーで行ってください。

# cepstopserv <ENTER>

4.6.1.4 修正の削除

以下の、BDCEP、およびBDCEPが同梱する製品の UpdateSite 形式の修正を適用している場合は、修正を削除します。

・ Interstage Big Data Complex Event Processing Server

・ Interstage Application Server Enterprise Edition(64bit)

参照

詳細は、UpdateAdvisor(ミドルウェア)の help および各修正パッチの修正情報ファイルを参照してください。

4.6.2 アンインストール手順

アンインストール手順について説明します。

以下の2種類の方法から、使用方法に適したアンインストール方法を選択してください。マルチユーザーモードでアンインストールをす

る場合は、他のユーザーの操作がアンインストールに影響ないことを確認してください。

対話式アンインストール

アンインストーラからの問い合わせにより、アンインストール実行の確認を行い、アンインストールを実行します。

サイレントアンインストール

アンインストーラからの問い合わせを行わず、アンインストールを実行します。

注意

アンインストールでは、BDCEPでインストールされたパッケージがアンインストールされます。インストールされている特定のパッケージ

や機能を選択してアンインストールできません。なお、一部のパッケージはアンインストール後に手動で削除します。

また、アンインストールを行うと、インストール先ディレクトリ配下の資源は削除されます。必要な資源については、必ずアンインストール

前に退避してください。バックアップの詳細は、「6.3.2 バックアップ、リストア」を参照してください。

4.6.2.1 対話式アンインストール

1. スーパーユーザーになります。

$ su - <ENTER>

- 55 -

Page 65: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

2. インストールDVD-ROMを挿入し、任意のディレクトリからDVD-ROMに格納されているアンインストールシェルスクリプト(uninstall.shシェル)を実行します。

# mount /dev/デバイスファイル名 <DVD-ROMマウントディレクトリ> <ENTER>

# <DVD-ROMマウントディレクトリ>/uninstall.sh <ENTER>

3. 以下のように製品名が表示されます。

+------------------------------------------------------------+

| Interstage Big Data Complex Event Processing Server V1.1.0 |

| |

| Copyright 2012-2013 FUJITSU LIMITED |

+------------------------------------------------------------+

4. 上記に続いて以下のようにアンインストール内容が表示されます。

<アンインストールパッケージ>には、アンインストールするすべてのパッケージが半角空白区切りで表示されます。

Uninstallation packages:

<アンインストールパッケージ>

5. 内容を確認し、アンインストールを開始する場合にはyを入力して<ENTER>キーを押します。

アンインストールを中止する場合にはqを入力して<ENTER>キーを押します。

y入力後、BDCEPのアンインストールが開始されます。また、qの入力でアンインストールを中止できます。

All files/directories under the installation destination directory will be deleted.

Please back up the required resources before uninstalling.

Do you want to proceed with the uninstallation ? [y,q]:

6. アンインストールが正常に終了すると、以下のメッセージが出力されます。引き続き、「4.6.3 アンインストール後の作業」を行って

ください。

The uninstallation processing completed successfully.

4.6.2.2 サイレントアンインストール

1. スーパーユーザーになります。

$ su - <ENTER>

2. インストールDVD-ROMを挿入し、任意のディレクトリからDVD-ROMに格納されているアンインストールシェルスクリプト(uninstall.shシェル)に“-s”オプションを付けて実行します。

# mount /dev/デバイスファイル名 <DVD-ROMマウントディレクトリ> <ENTER>

# <DVD-ROMマウントディレクトリ>/uninstall.sh -s <ENTER>

3. アンインストールが正常に終了すると、以下のメッセージが出力されます。

The uninstallation processing completed successfully.

4.6.3 アンインストール後の作業

ここでは、アンインストール後の作業について説明します。

4.6.3.1 FJSVodパッケージの削除

以下の他製品がCEPサーバ上にインストールされている場合、アンインストーラによるFJSVodパッケージのアンインストールは行われ

ません。

・ Systemwalker Centric Manager 運用管理サーバ

FJSVodパッケージを手動でアンインストールする場合、以下の手順で行ってください。

- 56 -

Page 66: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

1. 使用している製品の確認

以下の製品がインストールされているか確認してください。インストールされている場合は、アンインストールしないでください。

- Systemwalker Centric Manager 運用管理サーバ

2. アンインストール

rpmコマンドでアンインストールしてください。コマンドはスーパーユーザーで実行してください。

# /bin/rpm -e --nodeps FJSVod <ENTER>

4.6.3.2 FJSVsmee64、およびFJSVsclr64パッケージの削除

FJSVsmee64、およびFJSVsclr64パッケージは、Systemwalker Centric Managerなど、Interstage以外の富士通製製品に同梱されている

場合があるため、アンインストーラによるアンインストールは行われません。

この2つのパッケージを手動でアンインストールする場合、以下のコマンドを実行してください。コマンドはスーパーユーザーで実行し

てください。

# /bin/rpm -e --nodeps FJSVsmee64 <ENTER>

# /bin/rpm -e --nodeps FJSVsclr64 <ENTER>

4.6.3.3 環境変数の設定解除

CEPサーバ利用者の環境変数PATHから、以下のパスを削除してください。

/opt/FJSVcep/bin

ポイント

「4.3.3.1 環境変数の設定」において、/etc/profile.d ディレクトリに以下のファイルを作成した場合は、作成したファイルを削除してくだ

さい。

・ /etc/profile.d/FJSVcep.sh

・ /etc/profile.d/FJSVcep.csh

4.6.3.4 インストール時に指定したエンジン実行ユーザーについて

インストール時に指定するエンジンの実行ユーザーおよび所属グループは、アンインストール時に削除されません。不要な場合は、

ユーザーの削除を行ってください。

実行ユーザー isbdcepを手動で削除する例です。

$ su - <ENTER>

# userdel isbdcep <ENTER>

注意

ユーザーおよびグループの削除方法は、システムの管理方針により異なります。必ずマシン管理者に確認してください。

4.6.3.5 アンインストールと管理(ミドルウェア)について

BDCEPをインストールすると、「アンインストールと管理(ミドルウェア)」もインストールされます。

- 57 -

Page 67: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

「アンインストールと管理(ミドルウェア)」は、富士通ミドルウェア製品共通のツールです。インストールされている富士通ミドルウェア製品

情報の管理や製品のアンインストーラの起動を行います。

本ツールをアンインストールする場合は、以下の手順で行ってください。

1. 「アンインストールと管理(ミドルウェア)」を起動して他の富士通ミドルウェア製品が残っていないか確認します。起動方法は以下

のとおりです。

# /opt/FJSVcir/cir/bin/cimanager.sh -c <ENTER>

2. インストールされている富士通ミドルウェア製品が何もない場合、下記のアンインストールコマンドを実行します。

# /opt/FJSVcir/bin/cirremove.sh <ENTER>

3. "本ソフトウェアは富士通製品共通のツールです。本当に削除しますか?[y/n]: "と表示されたら、「y」を入力して継続します。

数秒ほどでアンインストールが完了します。

4. アンインストール完了後、以下のディレクトリおよびその配下のファイルを削除します。

/var/opt/FJSVcir

4.6.4 アンインストール中にエラーが発生した場合

アンインストーラ実行時に失敗した場合は、メッセージに従って対処したあと、再度uninstall.shシェルを実行してください。

詳細については、「トラブルシューティング集」の「2.2 アンインストール時の異常」を参照してください。

参考

アンインストーラのログファイル

以下はアンインストーラが出力するログファイルです。画面に表示されるメッセージの他、詳細な動作状況が記録されており、トラブル

発生時に参照します。

/var/tmp/bdcep_uninstall.log

アンインストールに成功するとログファイルは削除されます。

- 58 -

Page 68: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

第5章 開発

本章では、Interstage Big Data Complex Event Processing Server (以降、BDCEP)を使ったイベント処理の設計から開発、テストについ

て説明します。

また、サンプルアプリケーションについて説明します。

5.1 BDCEPのイベント処理の概要

BDCEPのイベント処理には、大きく分けて以下の2種類があります。

・ 入力イベントをロギング機能により、外部のHadoopシステム内に記録します。

・ 入力イベントに対して一連のルールを適用し、その処理結果をロギング、外部のWebサービスに送信、またはユーザー開発Javaクラスで処理します。ルール適用では外部データ(分散キャッシュ、RDB)の参照なども行います。

これらの一連の動作は、以下の定義情報を配備することで実現します。定義情報の詳細については後述します。

・ イベントタイプ定義(必須)

・ ルール定義(必要に応じて)

・ マスタ定義(必要に応じて)

・ RDB参照定義(必要に応じて)

・ SOAPリスナ定義 (必要に応じて)

また、BDCEPによるイベントの処理結果を活用するには、これらの定義情報の他に、記録されたイベント/処理結果を分析するための

アプリケーションや、イベントの処理結果を受信して動作するWebサービスなどが必要になります。

5.2 開発資産の一覧

BDCEPにおける開発資産の一覧を以下に示します。開発資産は大きく分けて、定義情報、データ、連携アプリケーションがあります。

定義情報はCEPエンジンに配備して実行します。その他は、それぞれ対応するサーバに用意(配備)します。

表5.1 開発資産の一覧

開発資産種別 開発資産 説明 配備先

定義情報

イベントタイプ定義

入力アダプターが受信するイベントのフォーマットを定

義します。フォーマットの他、ログ格納領域の指定、複

合イベント処理の利用有無を定義します。

入力アダプターが受信するイベントには、XML形式と

CSV形式があります。

CEPエンジン

ルール定義

高速フィルター処理のルールと、複合イベント処理の

ルールを定義します。それぞれ、フィルタールール言語

(IF-THEN型)、複合イベント処理ルール言語(SQL型)

で記述します。

複合イベント処理ルールの処理結果は、SOAP通信で

外部のアプリケーションに送信するほか、ロギング機能

によりディスクに蓄積したり、カスタムリスナ機能により

ユーザー開発Javaクラスで処理したりできます。

イベントタイプ定義(フィ

ルター済みイベント)

高速フィルター処理の結合・抽出処理などにより、イベ

ントを構成する項目が変化する場合に定義します。

フィルター済みイベントはCSV形式になります。

マスタ定義高速フィルター処理でマスタ参照を行う場合に作成しま

す。参照するマスタデータの定義です。

- 59 -

Page 69: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

開発資産種別 開発資産 説明 配備先

RDB参照定義複合イベント処理でRDB連携を行う場合に作成します。

RDBへの接続情報を定義します。

SOAPリスナ定義

複合イベント処理ルールの処理結果を、SOAPで外部

のアプリケーションに送信する際の、送信先となるユー

ザー開発Webサービスのインターフェースを定義しま

す。

データ

イベントデータ

(テスト用)

定義情報の動作確認用に、CEPサーバに送信するイベ

ントデータです。

イベント

送信元

システム

マスタデータ

(高速フィルター用)

高速フィルター処理でマスタ参照を行う場合に別途必

要です。CSVファイル形式で、CEPサーバ上に用意しま

す。

CEPサーバ

Terracotta(*1)のキャッ

シュ

Terracotta連携を行う場合に別途必要です。連携する

Terracottaサーバ上に用意します。

Terracottaのキャッシュに対して、データの格納や更新

を行うためには、別途、Terracottaアプリケーションが必

要です。

Terracottaサーバ

RDB

RDB連携を行う場合に検討が必要です。連携するRDBサーバ上に用意します。

RDBにデータの格納や更新を行うには、RDBのコマン

ド、またはRDBのアプリケーションが必要です。

RDBサーバ

連携アプリ

ケーション

イベント送信

アプリケーション

CEPエンジンに対しイベントを送信するアプリケーション

です。SOAPでイベント送信を行う場合は、SOAPクライ

アントアプリケーションを用意します。

既存システムをイベント送信元として、CEPエンジンに直

接イベントを送信する場合は不要です。新たに開発が

必要な場合は、送信元になる機器に合わせた開発が必

要です。

ルール定義の動作テストでは、製品に同梱されるイベン

ト送信サンプルプログラムを利用できます。

イベント

送信元

システム

ユーザー開発

Javaクラス

複合イベント処理ルールの出力をカスタムリスナ経由で

受け取り、処理するJavaクラスです。

CEPサーバに配備し、CEPエンジンから呼び出されま

す。

CEPエンジン

ユーザー開発

Webサービス

出力アダプターが送信するイベントデータを受け取り、

動作するWebサービス(SOAPアプリケーション)です。

CEPサーバと連携するアプリケーションサーバ上に配備

します。

アプリケー

ション

サーバ

イベントログ分析

アプリケーション

Hadoopシステムに記録したイベントログを分析するため

のアプリケーションです。HadoopのJava APIを使用して

開発します。

Hadoopシステム内に配備して実行します。

Hadoopシステム

Terracottaアプリケー

ション

複合イベント処理ルールとは別に、Terracottaのキャッ

シュに 初にデータを展開するなど、キャッシュの内容

を更新するためのアプリケーションです。

既存のTerracottaのキャッシュを活用する場合は不要で

す。

Terracottaサーバ

- 60 -

Page 70: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

以下の図は、各開発資産の配備先を示します。

図5.1 開発資産の配備先

5.3 作業概要

開発の流れは以下の通りです。

- 61 -

Page 71: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

図5.2 開発の流れ

開発環境について

定義情報の設計および開発は、開発者のパソコンなどを使って行い、動作確認はCEPサーバでCEPエンジンに配備して行います。

テスト用イベントデータやマスタデータ(CSV)には、既存のデータベースから取り出したデータや、Excelなどのツールを使って生成し

たデータを使用します。

連携アプリケーションの開発は、連携先のシステム、製品に合わせた開発環境を使用します。

5.4 設計(定義ファイル)ここでは各定義情報の設計について説明します。

5.4.1 定義情報の概要

以下の各定義情報に含まれる項目の概要について説明します。

・ イベントタイプ定義

・ ルール定義

・ マスタ定義

・ RDB参照定義

・ SOAPリスナ定義

5.4.1.1 イベントタイプ定義

イベントタイプ定義の概要について以下の表に示します。

表5.2 イベントタイプ定義の概要

項目 意味

開発資産ID 配備先のCEPエンジンで一意となるIDを指定します。

イベントタイプ定義の開発資産IDは、複合イベント処理ルールで、イベントストリー

ム名としても利用します。

形式 フィルター処理、複合イベント処理へ入力されるイベントの形式を指定します。

XMLまたはCSVのどちらかを指定します。

- 62 -

Page 72: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

項目 意味

フィルター済みイベントの場合はCSVのみになります。

CSVカラム情報 イベントの形式がCSVの場合に必要な設定です。

列の名称、列の型情報を定義します。

XMLスキーマ(*1) イベントの形式がXMLの場合に必要な設定です。

イベントの構造を表すスキーマ(XMLスキーマ)を指定します。

ルート要素(*1) イベントがXML形式の場合、イベントのルート要素の名前を指定します。XMLス

キーマで定義された要素の1つになります。

ロギング利用 入力アダプターで受け取った高速フィルター処理前のイベントに対するロギング機

能を利用するかどうかを指定します。

ログ格納領域(*1) 入力アダプターでロギング機能を利用する場合の格納領域を指定します。

複合イベント処理の使用有

複合イベント処理を利用するかどうか指定します。

(*1) イベントタイプ定義(フィルター済み)の場合は検討不要です。イベントタイプ定義(フィルター済み)については、「5.4.6 イベントタ

イプ定義(フィルター済み)の設計」を参照してください。

5.4.1.2 ルール定義

ルール定義の概要について以下の表に示します。

表5.3 ルール定義の概要

項目 意味

開発資産ID 配備先のCEPエンジンで一意となるIDを指定します。

フィルタールール 高速フィルターのルールを記述します。

ルールには、複数のフィルター文を並べて記述できます。

ルール中の以下の項目は、関連する開発資産の開発資産IDの値を利用します。

・ on文のイベントタイプ

入力イベントに対応するイベントタイプ定義の開発資産IDを指定します。

・ マスタデータ

マスタ定義の開発資産IDを指定します。

・ 出力式のイベントタイプ別名

フィルター済みイベントに対応するイベントタイプ定義の開発資産IDを指定し

ます。

複合イベント処理ルール 複合イベント処理用のルール(複合イベント処理ルール)を記述します。

ルールには、複数の複合イベント処理文をセミコロンで区切って記述できます。

ルール中の以下の項目は、関連する開発資産の開発資産IDの値を利用します。

・ 入力となるイベントストリーム名

イベントタイプ定義の開発資産IDを指定します。

・ データベース名

RDB参照定義の開発資産IDを指定します。

・ SoapListenerアノテーション

SOAPリスナ定義の開発資産IDを指定します。

5.4.1.3 マスタ定義

マスタ定義の概要について以下の表に示します。

- 63 -

Page 73: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

表5.4 マスタ定義の概要

項目 意味

開発資産ID 配備先のCEPエンジンで一意となるIDを指定します。

スキーマ情報ファイル データファイルの項目名が記述されたファイルを指定します。

データファイル データファイルのパス、またはデータファイルが格納されたディレクトリのパスを指

定します。

ディレクトリを指定した場合、ディレクトリに格納された全てのファイルが対象となり

ます(サブディレクトリは除く)。

複数データファイルを指定して、1つのマスタデータとすることも可能です。

スキップ利用の有無 データファイルの先頭行を読み飛ばすかどうかを指定します。

5.4.1.4 RDB参照定義

RDB参照定義の概要について以下の表に示します。

表5.5 RDB参照定義の概要

項目 意味

開発資産ID 定義情報を一意に識別するためのIDを指定します。

データベース名 データベースシステムの名前を指定します。(*1)

スキーマ名 接続するRDBのスキーマ名を指定します。(*1)

JDBCドライバクラス JDBCドライバのクラスを指定します。(*2)

データベースURL 接続するデータベースのURLを指定します。

アクセスID RDBに接続するユーザー名を指定します。

アクセスパスワード RDBに接続するユーザーのパスワードを指定します。

キャッシュ保持時間 RDB参照結果をキャッシュに保持する期間を指定します。

キャッシュ破棄間隔 RDB参照結果のキャッシュを破棄する間隔を指定します。

(*1) Symfoware (Nativeインタフェース)を参照する場合に必要です。

(*2) Symfoware (Openインタフェース)またはPostgreSQLを参照する場合に必要です。

5.4.1.5 SOAPリスナ定義

SOAPリスナ定義の概要について以下の表に示します。

表5.6 SOAPリスナ定義の概要

項目 意味

開発資産ID 配備先のCEPエンジンで一意となるIDを指定します。

接続URL ユーザー開発Webサービスの接続URLを指定します。

名前空間 ユーザー開発Webサービスへ送信するメッセージ(SOAPボディの中身)の名前空

間を指定します。

名前空間の接頭辞 ユーザー開発Webサービスへ送信するメッセージ(SOAPボディの中身)で使用す

る名前空間プレフィックスを指定します。

ルート要素 ユーザー開発Webサービスへ送信するメッセージ(SOAPボディの中身)のルート

要素の名前を指定します。

5.4.2 開発資産IDと定義情報間の対応関係

各定義情報は、定義情報を一意に識別する開発資産IDを持ち、定義情報間の関連付けに利用されます。

- 64 -

Page 74: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

定義情報の設計では、この開発資産IDの管理が必要です。

各開発資産間の関連図を以下に示します。各々の開発資産に記述する開発資産IDやルールは、この関係が成立するように定義す

る必要があります。

図5.3 開発資産IDと定義情報間の対応関係

5.4.3 イベントタイプ定義の設計

イベントタイプ定義の設計にあたり留意すべき項目について説明します。

5.4.3.1 入力イベントの特性

入力イベントのデータ形式やサイズ、発生頻度などを確認します。

・ 既存のシステムを入力イベントの送信元にする場合は、既存システムのイベントの仕様について確認します。

・ 入力イベントの平均サイズや、単位時間(1時間、1秒など)あたりの平均受信数など、入力イベントの処理量に関係する要件を確認

します。

・ イベントタイプ定義では、イベントのデータ形式としてXML形式とCSV形式の2種類が選択できます。

- 既存システムが扱うデータ形式がXMLの場合は、XML形式、CSVの場合はCSV形式の選択を推奨します。

- バイナリ形式などの、その他のデータ形式の入力イベントは直接受信できないため、イベント送信元とCEPサーバの間でデー

タ形式の変換を行うことを検討します。

5.4.3.2 イベントの記録、分析

分析などの目的で、イベントを記録、蓄積する場合に留意する点について説明します。

- 65 -

Page 75: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

イベントの記録には、BDCEPのロギング機能を使用します。

イベントの蓄積

イベント記録先のHadoopシステムに、記録したイベントを蓄積するため、以下の点を検討します。

・ 記録するイベントの種類と形式

どのイベントを記録、蓄積するのか検討します。

・ 記録するイベントの格納先

接続するHadoopシステムは、CEPエンジンのエンジン構成ファイルによって設定されます。

接続先のHadoopシステムにおいて、格納先として使用可能なパスを確認します。

・ イベントの蓄積量(必要な空きディスク容量)

大量のイベントを蓄積するためには、イベントの格納先に十分な空きディスク容量が必要です。

イベントの平均サイズ、単位時間当たりの記録数、蓄積期間を確認して、イベントの記録、蓄積に必要なディスク容量を検討しま

す。

必要に応じて、イベントの格納先となるシステムの拡張計画を検討します。

蓄積したイベントの分析

蓄積したイベントの分析を行うには、分析用のアプリケーションの設計、開発が必要です。

分析用アプリケーションの設計については、「5.6.4 イベントログ分析アプリケーションの設計」を参照してください。

5.4.4 ルール定義の設計

ルール定義は、高速フィルター処理で使用するフィルタールールと、複合イベント処理で使用する複合イベント処理ルールの2種類の

ルールから構成されます。

ここでは、ルールの設計時の留意点や作成手順など、以下の項目について説明します。

・ 高速フィルター処理

- フィルタールール作成時の留意項目

- フィルタールールの処理パターン

・ 複合イベント処理

- 複合イベント処理ルール作成時の留意項目

- 複合イベント処理ルールの作成手順

・ Terracotta連携

・ RDB連携

・ SOAPリスナ

・ カスタムリスナ

・ ロギングリスナ

5.4.4.1 高速フィルター処理

高速フィルターで使用するフィルタールールを定義します。

フィルタールール作成時の留意項目

フィルタールール作成において留意すべき項目は以下の通りです。

- 66 -

Page 76: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

・ ルールの作成単位

イベントタイプごとにフィルタールールを作成します。あるイベントタイプに対して、同時に複数のフィルタールールを定義すること

はできません。

・ フィルタールールの処理パターン

後述する処理パターンから適したものを選択し、選択したパターンに沿ってルール作成することを推奨します。

フィルタールールの詳細については「開発リファレンス」の「第2章 フィルタールール言語リファレンス」を参照してください。

・ マスタデータ

フィルタールールの中で参照します。イベントの通信量を節約するために、個々のイベントにはIDやコードといった、限られた情報

しか含まれない場合があります。その状態でイベントを処理するルールを書くことは困難なため、IDやコードをキーとして参照可能

なマスタデータを利用できます。これにより、ルールの作成が容易になります。

マスタデータは、利用者が事前にCSV形式のファイルとして作成する必要があります。

マスタデータの設計については、「5.4.5 マスタ定義の設計」を参照してください。

・ フィルタールールのメモリ使用量

フィルタールールの利用には、多量のメモリを必要とします。必要なメモリ使用量の詳細は「3.3.1.1 高速フィルタールール使用時

のメモリ量」、および「3.3.1.2 高速フィルターでマスタデータを使用した場合のメモリ量」を参照してください。

フィルタールールの処理パターン

高速フィルターでは、フィルタールールを定義することで、イベントの抽出や、マスタデータと組み合わせた抽出処理、および連結処理

を記述できます。高速フィルターの出力が、そのまま複合イベント処理の入力となります。

高速フィルターで行う処理は、通常、以下の4パターンと、その組み合わせで表現されます。

・ 抽出処理

・ マスタデータ照合による抽出処理

・ マスタデータとの結合処理

・ 文章の重み付け処理

5.4.4.1.1 抽出処理

入力イベントから、フィルタールールのif-then文に記述した条件に適合するイベントを抽出します。

大量のイベントの中から必要なイベントだけ抽出したい場合に検討します。

抽出処理の例

イベントに含まれる内容(value)を使ってイベントを抽出する例です。

抽出条件として、「value > 10」を定義しています。

- 67 -

Page 77: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

作成するルール

上記の例で作成するルールは以下の通りです。

on 入力イベントタイプID {

if ($value > 10) then output() as 入力イベントタイプID;

}

・ 入力イベントタイプIDは、対象となるイベントタイプ定義の開発資産IDです。

参考

出力するイベントの項目内容を絞り込む

出力するイベントの項目を絞ることも可能です。以下は、前述の例において、keyだけ出力する例です。

入力イベントと異なる形で出力する場合は、対応するイベントタイプ定義(フィルター済み)も必要になります。

詳細については、「開発リファレンス」の「2.7 出力式の書式」を参照してください。

on 入力イベントタイプID {

if ($value > 10) then output($key) as 出力イベントタイプID;

}

・ 入力イベントタイプIDは、対象となるイベントタイプ定義の開発資産IDです。

・ 出力イベントタイプIDは、項目を絞った結果を表すイベントタイプ定義(フィルター済み)の開発資産IDです。

5.4.4.1.2 マスタデータ照合による抽出処理

入力イベントに含まれるIDやコードなどの値をもとに、マスタデータ(CSVファイル)の該当エントリーを照合し、該当エントリーの値に基

づいてイベントを抽出します。

大量のイベントの中から必要なイベントだけ抽出したいが、イベントの中に抽出に必要な情報が含まれていない場合に検討します。

このパターンの処理を行う場合は、マスタ定義の設計も必要です。

マスタデータ照合による抽出処理の例

イベントに含まれるkeyを元に、対応するマスタデータのエントリーを参照し、エントリーの中のaddressの値に基づいてイベントを抽出す

る例です。抽出条件として「address=="福岡"」を定義しています。

- 68 -

Page 78: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

作成するルール

上記の例で作成するルールは以下の通りです。

on 入力イベントタイプID {

if (lookup("マスタ定義ID", $key == $key, string($address)) == "福岡") then output() as 入力イベントタイプID;

}

・ 入力イベントタイプIDは、対象となるイベントタイプ定義の開発資産IDです。

・ マスタ定義IDは、参照するマスタデータに対応するマスタ定義の開発資産IDです。

・ $addressを文字列として比較するため、string($address)で値を取り出しています。

・ $key == $key の左辺は入力イベントの key、右辺はマスタデータの key になります。

注意

lookupにより照合しただけでは入力イベントにマスタデータの情報は付与されません。マスタデータとの結合処理が必要な場合は連

結式(join)の記述が必要です。結合処理については、「5.4.4.1.3 マスタデータとの結合処理」を参照してください。

5.4.4.1.3 マスタデータとの結合処理

入力されたイベントと、マスタデータを連結します。次の複合イベント処理で必要なデータを付与したい場合に検討します。複合イベン

ト処理ルールでRDB参照を行うよりも高速な結合処理が可能です。

結合した結果を複合イベント処理に渡すためには、結合結果に対応するイベントタイプ定義(フィルター済み)も必要です。

マスタデータとの結合処理の例

イベントに含まれるkeyを元に、対応するマスタデータを結合して、イベントにaddressを付与した例です。

- 69 -

Page 79: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

作成するルール

上記の例で作成するルールは以下の通りです。

on 入力イベントタイプID {

join("マスタ定義ID", $key == $key) output($key, "マスタ定義ID".$address) as 出力イベントタイプID;

}

・ 入力イベントタイプIDは、ルールの対象となるイベントタイプ定義の開発資産IDです。

・ マスタ定義IDは、参照するマスタデータに対応するマスタ定義の開発資産IDです。

・ 出力イベントタイプIDは、結合した結果を表すイベントタイプ定義(フィルター済み)の開発資産IDです。

5.4.4.1.4 文章の重み付け処理

マスタデータにキーワードへの重み付けを登録しておくことで、入力イベントの文章に重み付けを行うことが可能です。これにより、重

み付けの合計が閾値より大きいイベントだけを抽出したり、閾値より大きいイベントを連続して発信していることを検知したりできます。

文書の重み付け処理の例

イベントに含まれる文章の内容に、マスタデータに定義された検索ワードが含まれているなら、含まれている検索ワードの数と、検索

ワードごとに設定された重みの合計値を付与して出力します。

- 70 -

Page 80: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

作成するルール

上記の例で作成するルールは以下の通りです。

on 入力イベントタイプID {

join("マスタ定義ID", $message = $word)

output($ID,

$subject,

"マスタ定義ID".$word,

"マスタ定義ID".$weight,

lookup_count("マスタ定義ID".$word),

lookup_sum("マスタ定義ID".$weight)) as 出力イベントタイプID;

}

・ 入力イベントタイプIDは、ルールの対象となるイベントタイプ定義の開発資産IDです。

・ マスタ定義IDは、参照するマスタデータに対応するマスタ定義の開発資産IDです。

・ 出力イベントタイプIDは、結合した結果を表すイベントタイプ定義(フィルター済み)の開発資産IDです。

5.4.4.2 複合イベント処理

複合イベント処理で使用するルールを定義します。

複合イベント処理ルール作成時の留意項目

複合イベント処理のルール作成において留意すべき項目は以下の通りです。

・ ルールの作成単位

イベントのパターン検知を行う目的や用途別などに作成します。あるルールに記述したイベントのパターン検知が、別のルールに

影響を与えないよう作成単位を決定します。

1つのルール定義に多数の処理を記述することも可能ですが、ルール定義の規模が大きくなり、メンテナンス性の低下につながり

ます。

- 71 -

Page 81: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

例えば、家電に関するイベントの処理を行う場合、生活家電と情報家電で検知する内容が大きく異なっていれば、ルール定義は

以下の2つを作成します。

- 生活家電に関するイベントのパターンを検知するルール定義

- 情報家電に関するイベントのパターンを検知するルール定義

・ 外部データの参照

イベントの処理に、外部データの参照が必要か検討します。外部データとしてTerracottaのキャッシュとRDBの2種類が利用可能で

す。

Terracottaのキャッシュの参照については「5.4.4.3 Terracotta連携」を参照してください。

RDBの参照については「5.4.4.4 RDB連携」を参照してください。

・ 処理結果の送信または記録の有無

複合イベント処理ルールの処理結果をSOAPで外部のWebサービスに送信する他に、CEPエンジンに配備したJavaクラスで処理し

たり、ロギング機能でイベントログに記録したりできます。それぞれ、複合イベント処理ルールにSOAPリスナ、カスタムリスナ、ロギン

グリスナを適用します。

SOAPリスナの使い方については「5.4.4.5 SOAPリスナ」を参照してください。

カスタムリスナの使い方については「5.4.4.6 カスタムリスナ」を参照してください。

ロギングリスナの使い方については「5.4.4.7 ロギングリスナ」を参照してください。

・ ルールの作成手順

複合イベント処理ルールは、 初からステートメントを記述せず段階的に設計し、目的とするイベントの検知を確実に行えるように

開発を進めることを推奨します。以下に複合イベント処理ルールの作成手順を示します。

複合イベント処理ルールの作成手順

複合イベント処理ルールの作成手順について、例を挙げて説明します。

1. 複合イベント処理で実現したい内容の検討

複合イベント処理で実現したいことを決定します。この時点ではやりたい事が明確でなくても、収集したイベントを分析することに

よって、実現したいことが見つかる場合もあります。

ルールの例

「在宅時に雨が降りそうな場合は、洗濯機の乾燥機能の使用をレコメンドする。」

2. イベント、参照する外部データ、出力内容の検討

ルール作成に必要なイベント、参照用の外部データ、および出力内容について、検討します。また、イベントをメモリ内に保持し

ておくための名前付きウィンドウについて検討します。

イベント、外部データ、出力、名前付きウィンドウの例

前述のルール例では、以下のイベント、外部データ、出力内容、名前付きウィンドウが考えられます。

- イベント

- テレビ操作イベント

各家庭のホームゲートウェイから送られる家電イベントデータのうち、機器カテゴリのプロパティ値がTelevisionのものとし

ます。

- 天気予報イベント

予報は時間と天気で表すものとします。

- 72 -

Page 82: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

- 外部データ

- 洗濯機の機種情報(乾燥機能の有無)

ホームゲートウェイのIDから、その家庭の洗濯機の乾燥機能の有無がわかるものとします。

- 出力内容

- レコメンド対象の家庭のホームゲートウェイID

- レコメンド内容

- 名前付きウィンドウ

- 天気予報イベント用名前付きウィンドウ

天気予報イベントを時刻ごとに1日保持することにします。

3. 処理内容の詳細化

イベントやそれを検知する複合イベント処理の内容を詳細化(具体化)します。

ここでの詳細化とは、日常言語で表現された“やりたい事”を、イベントや複合イベント処理の条件、外部データなどの具体的な

情報を利用することで、作成するルールに近づけた表現にする作業です。

複合イベント処理の内容を詳細化する例

「在宅時に雨が降りそうな場合は、洗濯機の乾燥機能の使用をレコメンドする。」というルールを詳細化すると以下のようになりま

す。

ルールの構成要素 詳細化した処理内容

「在宅時」 テレビ操作を行った家庭を在宅と判断します(テレビ操作を知らせるイベントを検知し

ます)。

「雨が降りそう」 名前付きウィンドウに格納された天気予報情報を参照し、天気予報の時刻と、テレビ

の操作時刻から、今後雨となる予報が出ているかどうかを確認します。

「洗濯機の乾燥機能」 ホームゲートウェイに接続している洗濯機の製品情報を、Terracottaのキャッシュから

取得します。

「レコメンドする」 雨予報の場合、洗濯機に乾燥機能がなければ、洗濯物の部屋干しをレコメンドしま

す。

洗濯機に乾燥機能があれば、乾燥機能の利用をレコメンドします。

4. イベントフロー図の作成

処理内容の詳細化が完了したら、イベント処理の流れをまとめてイベントフロー図を作成します。イベントフロー図は、イベントと

その処理内容のつながりを図で示したものです。実現しようとする処理内容を確認する上でも役立つため、複合イベント処理ルー

ル言語で処理を記述する前に作成する事を推奨します。

参考

イベントフロー図の凡例

本書で使用するイベントフロー図の凡例です。

- 73 -

Page 83: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

イベントフロー図の例

「在宅時に雨が降りそうな場合は、洗濯機の乾燥機能の使用をレコメンドする。」のイベントフロー図です。

1. 天気予報イベントを保持するための名前付きウィンドウを作成します。

2. 洗濯機の乾燥機能の有無を調べるための名前付きウィンドウ(Terracottaのキャッシュ)を作成します。

3. 天気予報イベントを天気予報ウィンドウに格納します。

4. 家電イベントからTV操作のイベントを検知します。

5. TV操作のイベントの発生時間から今後の天気予報を確認し、雨予報の場合だけイベントを残します。

- 74 -

Page 84: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

6. TV操作が行われ、かつ天気予報が雨の家庭について洗濯機機能ウィンドウを検索し、洗濯機の乾燥機能のあり/なしに

応じてレコメンドすべき情報を付加してユーザー開発Webサービスに送信します。

7. ユーザー開発Webサービスでは、受け取った情報をもとに、家庭にレコメンドを送信します。ユーザー開発Webサービス

では、同じ家庭に一定期間同じレコメンドを行わないように制御します。

5. 複合イベント処理ルールの作成

イベントフロー図のそれぞれの要素に対応させて、複合イベント処理ルールを記述します。

イベントフロー図に対応する複合イベント処理ルールの例

ルールの意味については、「開発リファレンス」の「第1章 複合イベント処理言語リファレンス」を参照してください。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

// 1.天気予報イベント用の名前付きウィンドウ作成

@Name('WeatherWin')

create window WeatherForecastWin.std:unique(FORCASTIME).win:time(1 day)

(FORCASTIME long, WEATHER string);

// 2. 洗濯機の乾燥機能の有無を確認するための名前付きウィンドウを作成

create window ProductFuncWin.vdw:ehcache('ProductFuncCache', 'gatewayId')

as (gatewayId string, dryFunc string);

// 3.天気予報イベントを名前付きウィンドウに登録

@Name('InputWeather')

insert into WeatherForecastWin

select weathfore.FORCASTIME as FORCASTIME, weathfore.WEATHER as WEATHER

from WeatherForecastEvent as weathfore;

// 4.TV操作イベントを検知

@Name('ChkTVEvent')

insert into TVControl

select heevnt.gatewayId as gatewayId, heevnt.updateTime as updateTime from HEEvent as heevnt

where heevnt.deviceCategory = 'Television';

// 5.TV操作時点の天気確認(雨予報を検出)

// 天気予報の時間帯は以下の式で判定。FORCASTIMEはlong(ミリ秒)を想定

// 天気予報の時刻 <= TVControlのupdateTime <= 天気予報の時刻+1時間(3600000ミリ秒)

@Name('GetRainyEvent')

insert into TVControlRain

select tvevnt.gatewayId as gatewayId

from TVControl as tvevnt unidirectional, WeatherForecastWin as weather

where updateTimeToMillis(tvevnt.updateTime) between weather.FORCASTIME

and (weather.FORCASTIME + 3600000)

and weather.WEATHER = 'rainy';

// 6.洗濯機の乾燥機能有無確認とレコメンド送信

// ProductFuncWin の dryFunc プロパティが乾燥機能有無を示す('1':あり)

// SOAPリスナにより出力をアプリケーションに送信

// ‘USE_DRY_FUNC’ = 乾燥機能がある場合のレコメンドID

// ‘HANG_LAUNDRY_INSIDE’ = 乾燥機能がない場合のレコメンドID

// ロギングリスナにより出力をロギングする

// table='ログ格納領域'

// properties='出力するプロパティ名(出力結果)をカンマ区切りで設定'

@Name('PutRecommend')

@SoapListener('soap-001')

@LoggingListener(table='/logsoap',properties='gatewayId,recommendId')

select tvevnt.gatewayId as gatewayId,

case when product.dryFunc = '1' then 'USE_DRY_FUNC' else 'HANG_LAUNDRY_INSIDE' end as recommendId

- 75 -

Page 85: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

46

47

from TVControlRain as tvevnt unidirectional, ProductFuncWin as product

where product.gatewayId = tvevnt.gatewayId;

5.4.4.3 Terracotta連携

ここでは、Terracotta連携を行う場合の留意点と、その利用方法について説明します。

・ Terracotta連携を利用する場合の留意点

・ Terracottaのキャッシュの構成情報ファイルの準備

・ Terracottaのキャッシュの参照方法

- Virtual Data Windowの作成

- Virtual Data Windowの利用

5.4.4.3.1 Terracotta連携を利用する場合の留意点

複合イベント処理の外部データ参照において、Terracotta連携を利用する場合に留意すべき項目について説明します。

・ Terracotta連携の必要性の確認

高速フィルターでマスタデータを利用する場合と異なり、Terracotta連携の場合、随時更新されるデータの参照が可能です(高速

フィルターの場合、マスタデータの動的変更で更新可能ですが、プログラムから随時更新することはできません)。

また、イベントを契機に外部キャッシュのデータを追加、更新、削除することも可能です。

・ Terracottaのキャッシュの構成

複合イベント処理ルールから参照するTerracottaのキャッシュのデータは、キーと値で構成するエントリーとして管理されます。複合

イベント処理ルールで使用するキャッシュに格納するキーと値の形式については、「5.5.3 Terracottaのキャッシュ」を参照してくださ

い。

・ Terracottaのキャッシュの参照方法

複合イベント処理ルールからTerracottaのキャッシュを参照するには、Virtual Data Window機能を利用します。Virtual Data Windowの作成方法、および作成したVirtual Data Windowを使ったキャッシュの利用方法については、「5.4.4.3.3 Terracottaのキャッシュの

利用方法」を参照してください。

5.4.4.3.2 Terracottaのキャッシュの構成情報ファイルの準備

Terracottaのキャッシュ(Ehcacheと呼びます)をVirtual Data Window機能により利用するためには、Ehcacheの構成情報ファイル

(ehcache.xml)をCEPサーバに配置しておく必要があります。Ehcacheの構成情報ファイルは以下の場所に配置します。

/etc/opt/FJSVcep/config/ehcache.xml

Ehcacheの構成情報ファイルに関する詳細はTerracottaのマニュアルを参照してください。以下には、Terracotta連携機能で必須となる

設定項目について説明します。

要素または属性 説明

ehcache 構成情報ファイルのルート要素です。

name キャッシュを作成するときに指定した、キャッシュマネージャーの名

前を指定します。

maxBytesLocalHeap 使用するデータプールのサイズです。

terracottaConfig Terracottaサーバを定義するための要素です。

url Terracottaサーバを「ホスト名またはIPアドレス:ポート番号」の形式

で、カンマ(,)区切りで列挙します。

cache キャッシュを定義するための要素です。

- 76 -

Page 86: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

要素または属性 説明

1つのehcache要素内に複数のcache要素を記述できます。

name キャッシュの名前です。vdw:ehcacheで指定するキャッシュ名になり

ます。

terracotta Terracottaサーバを使用するために定義します。

nonstop ノンストップキャッシュとして使用するために定義します。

immediateTimeout ネットワーク切断を検出した時点でタイムアウトの対応を行うかどうか

指定します。値にtrueを指定します。

timeoutMillis タイムアウトになるまでの待機時間を指定します。

timeoutBehavior タイムアウトが発生したときの動作を指定します。

type 値にexceptionを指定します。

searchable キャッシュに対して検索を実施するために定義します。

以下に、2台のTerracottaサーバ(192.168.1.1と192.168.1.2)上に構成されたキャッシュCache001をTerracotta連携で使用する場合の例

を示します。

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

<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd"

name="SearchConfig"

maxBytesLocalHeap="64M">

<terracottaConfig url="192.168.1.1:9510,192.168.1.2:9510"/>

<cache name="Cache001">

<terracotta>

<nonstop immediateTimeout="true" timeoutMillis="3000">

<timeoutBehavior type="exception"/>

</nonstop>

<searchable />

</cache>

</ehcache>

5.4.4.3.3 Terracottaのキャッシュの利用方法

Virtual Data Windowの作成方法と、作成したVirtual Data Window の利用方法について説明します。

Virtual Data Windowの作成

複合イベント処理ルールからTerracottaのキャッシュを利用するには、ルール中でVirtual Data Window(以降VDW)を作成します。

具体的には、以下のように記述します。

構文:イベントタイプIDを利用する場合

create window ウィンドウ名.vdw:ehcache("キャッシュ名","キープロパティ名")as イベントタイプID;

構文:型情報を直接指定する場合

create window ウィンドウ名. vdw:ehcache("キャッシュ名","キープロパティ名") as (プロパティ名 型, プロパティ名 型, ...);

・ VDWの作成はcreate window文でvdw:ehcache()を使用して行います。

キャッシュの実体を参照するため、キャッシュ名とデータ参照のためのキープロパティ名の設定が必要です。この2つの設定は、

vdw:ehcache()の引数として指定します。

- 77 -

Page 87: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

・ キャッシュ名には、使用するキャッシュの名前を指定します。

・ キープロパティ名には、エントリーを特定するためのプロパティ名を指定します。イベントタイプIDを利用する場合は、指定されたイ

ベントタイプのプロパティ名を指定します。型情報を直接指定する場合は、任意の名前を指定できます。指定したプロパティの型

は、キャッシュのKeyクラスに対応する型である必要があります。

・ ウィンドウ名には任意の名前を指定します。ここで指定した名前で、複合イベント処理ルールのselect文(insert into句、from句)、onselect文、on update文、on delete文、on merge文、副問合せからキャッシュにアクセスできます。

・ イベントタイプIDには、CSV形式のイベントタイプ定義で定義されたイベントを指定します。(XML形式のイベントタイプ定義は指

定できません。)

・ プロパティ名 型、にはキャッシュのValueに設定するjava.util.HashMapのキーと対応したプロパティ名と型を指定する必要がありま

す。また、キープロパティ名で指定したプロパティ名とその型も指定する必要があります。

・ 指定したプロパティ名が、キャッシュのValueに設定するjava.util.HashMapに設定されていない場合、複合イベント処理ルールで

null値として扱われます。

Virtual Data Window (VDW)作成の記述例

Terracottaのキャッシュ(MARKET)を参照するVDW(MarketWindow)の作成例です。

create window MarketWindow.vdw:ehcache("MARKET", "code") as (code string, high int, low int);

・ キープロパティとしてcodeを指定しています。

・ プロパティとして、code(string型)、high(int型)、low(int型)を定義しています。

Virtual Data Windowの利用

作成したVirtual Data Windowは、通常のウィンドウと同じように利用します。ただし、キャッシュデータへのアクセスでは、insert into句、

unidirectionalを指定した結合(join)、on select文、on update文、on delete文、on merge文、副問合せを使用します。

作成したVirtual Data Window(VDW)の使用例

MarketEventのイベントをVDWに挿入する例です。

insert into MarketWindow select code, high, low from MarketEvent;

TicketEventのイベントを契機に、VDWのMarketWindowを参照し、条件に合うVDWのイベント(キャッシュのエントリー)のデータを取得

する例です。この例ではTicketEventを契機とするために、TicketEventにunidirectionalを指定して結合(join)しています。

select W.high, W.low from TicketEvent as Input unidirectional, MarketWindow as W

where W.code = Input.code;

TicketEventのイベントを契機に、VDWのMarketWindowを参照し、条件に合うVDWのイベント(キャッシュのエントリー)のデータを取得

する例です。この例ではon select文を使用しています。

on TicketEvent as Input

select W.high, W.low from MarketWindow as W

where W.code = Input.code;

TicketEventのイベントを契機に、VDWのMarketWindowを参照し、条件に合うVDWのイベント(キャッシュのエントリー)のデータを取得

する例です。この例では副問合せを使用しています。

select (select W.high from MarketWindow as W where W.code = Input.code) as high from TicketEvent as Input;

- 78 -

Page 88: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

MarketEventのイベントを契機にVDWにある同一のcodeをもつイベントを更新する例です。

on MarketEvent as New

update MarketWindow as W

set high = New.high, set low = New.low

where W.code = New.code;

注意

Virtual Data Window利用時の注意

・ 他のビューを指定しない

Virtual Data Windowを定義するcreate window文において、vdw:ehcache()の指定と一緒にwin:length(1)などの他のビューを指定

しないでください。指定しても構文エラーにはなりませんが、そのビューの指定によりTerracottaのキャッシュのデータは操作できま

せん(win:length(1)を指定したとしても、キャッシュ内のイベントは1つになりません)。

・ insert into句は単なる挿入ではない

Terracottaのキャッシュにはキープロパティの値に対して1つのイベント(キャッシュのエントリー)だけが保持されます。そのため、

insert into句でVirtual Data Windowに新しいイベントを挿入した際に、すでにキャッシュ内に同じキープロパティの値をもつイベン

トがあった場合、そのイベントは新しいイベントで更新されます。

・ CEPエンジンの外で追加されたキャッシュのエントリーは通知されない

Virtual Data Windowをfrom句に指定した単純なselect文やunidirectionalを指定していない結合(join)の場合、同一CEPエンジン

上の複合イベント処理ルールでinsert into句によりVirtual Data Windowに挿入したイベントは通知されますが、Terracottaアプリケー

ションや別のCEPエンジンから追加されたイベント(キャッシュのエントリー)は通知されません。キャッシュのデータにアクセスする

にはunidirectionalを指定した結合(join)、on select文、副問合せを使用してください。

以下は単純なselect文の例です。

select W.high, W.low from MarketWindow;

以下はunidirectionalを指定していない結合(join)の例です。

select W.high, W.low from TicketEvent.std:lastevent() as Input, MarketWindow as W

where W.code = Input.code;

insert into句でMarketWindowにイベントを挿入した際には、挿入されたイベントがこれらのselect文に通知されますが、CEPエンジ

ンの外で追加されたイベントは通知されません。

・ where句ではキャッシュのエントリーを一意に特定する必要がある

Virtual Data Window に格納された情報にアクセスする際に利用できるwhere句には、キャッシュのエントリーを一意に特定する条

件が含まれる必要があります。キャッシュのエントリーを一意に特定する条件とは、vdw:ehcache()で指定したキープロパティと"="で比較する条件です。以下にその例を示します。

以下の例では、W.code = T.code でキャッシュのエントリーを一意に特定できるのでOKです。

create window MarketWindow.vdw:ehcache("MARKET", "code") as (code string, high int, low int);

on TicketEvent as T

select W.high, W.low from MarketWindow as W

where W.code = T.code and ( T.price > W.high or T.price < W.low);

以下は上記のルールでwhere句だけを変更した場合の、OKな記述例と、NGな記述例です。

No 記述例 OK/NG 説明

1 where W.code = '1111' OK キープロパティに対する"="による比較で一意に特

定できるのでOK

- 79 -

Page 89: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

No 記述例 OK/NG 説明

2 where ( T.price > W.high orT.price < W.low) and

W.code=T.code

OK 別の条件が前にあるが、キープロパティに対する"="による比較が含まれ、キャッシュのエントリーを一意

に特定できるのでOK

3 where W.high = 1000 NG キープロパティに対する"="による比較がないため

NG

4 where W.code > '1111' NG キープロパティに対して "="以外の演算を行ってい

るためNG

5 where W.code='1111' or W.high=1000 NG キープロパティに対する"="による比較が含まれてい

るが、or条件があり、キャッシュのエントリーを一意に

特定できないためNG

5.4.4.4 RDB連携

ここではRDB連携を行う場合の留意点と、その利用方法について説明します。

外部データとしてRDBを参照する場合、RDB参照定義を作成します。RDB参照定義はRDBとの接続情報です。

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

・ RDB連携を利用する場合の留意点

・ 複合イベント処理ルールでのRDB参照の指定方法

5.4.4.4.1 RDB連携を利用する場合の留意点

以下にRDB連携を利用する場合の留意点を示します。

・ RDB連携定義の作成

RDB連携を利用するには、ルール定義の他にRDB参照定義が必要です。RDB参照定義については「5.4.7 RDB参照定義の設

計」を参照してください。

・ RDBの内容

RDBは、入力するイベントから得られないデータやイベントのプロパティに関連する静的なデータで、かつルール照合のために必

要なデータは何か、という観点で検討する必要があります。RDBのデータは、複合イベント処理ルール(select文)を発行して参照で

きます。

RDBで用意する情報の例

地域、住所などの情報が考えられます。

イベントの内容から、各顧客を識別するIDは得られても、その顧客のいる地域(住所)はイベント内容に含まれないことがあります。

この場合、顧客IDと地域(住所)の対応関係を登録したRDBを用意することで、イベント内の顧客IDをキーに、その顧客の地域(住所)を参照でき、地域(住所)に基づく処理に活用できます。

・ 日本語利用時の注意

複合イベント処理言語から参照するテーブル名やテーブルの項目名などのRDB側の定義名には日本語を使用できません。RDB参照定義中に記述するデータベース名や、スキーマ名、ユーザー名なども同様です。

項目の値には日本語を使用できます。項目の値に日本語を使用する場合、RDBの文字コード(あるいは文字セット)はユニコード

を設定してください。詳細は連携先RDBのマニュアルを参照してください。

- 80 -

Page 90: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

・ 期限付きキャッシュの利用

RDBを初回に参照すると、クエリのキーと結果がCEPエンジンの期限付きキャッシュに格納されます。二回目以降の同一キーによ

るRDB参照は、キャッシュからデータを取得する動作となります。期限付きキャッシュの利用にはRDB参照定義にキャッシュ保持

期間とキャッシュ破棄間隔の設定が必要です。RDB参照定義については「5.4.7 RDB参照定義の設計」を参照してください。

5.4.4.4.2 複合イベント処理ルールでのRDB参照の指定方法

複合イベント処理ルールのfrom句において、以下の構文で指定する事で、RDBに対する問い合せの結果を利用できます。

構文:

sql:データベース名 [" SQL問合せ "] または

sql:データベース名 [' SQL問合せ ']

データベース名には、RDB参照定義において指定した「開発資産ID」を指定します。

SQL問合せは、二重引用符(")または引用符(')で囲んで、さらにその外側を角括弧“[”および“]”で囲んで指定します。

SQL問合せの中には代替パラメーターを含めることができます。代替パラメーターは ${式} の形式で記述し、文の実行時に式が評価

されます。

注意

・ RDBの参照は、複合イベント処理機能の性能劣化につながる可能性があるため、必要 小限にしてください。

・ 複合イベント処理言語から参照するテーブル名やテーブルの項目名などのRDB側の定義名には、日本語を使用できません。項

目の値には日本語を使用できます。

・ シングルクォートで囲んだSQL問合せの中で、シングルクォートで囲んだ文字定数を記述する場合には、エスケープ表記(\')また

はUnicode表記(\u0027)を使います。

RDB参照の使用例

複合イベント処理ルール(select文)の中でのRDB参照の使用例です。

@Name("PutRecommend")

@SoapListener("soap-001")

select tvevnt.gatewayId as gatewayId,

case when db.DRY_FUNC = '1' then 'USE_DRY_FUNC' else 'HANG_LAUNDRY_INSIDE' end as recommendId

from TVControlRain as tvevnt,

sql:app_db[ 'SELECT DRY_FUNC FROM PRODUCTFUNC_TBL WHERE HGW_ID=${tvevnt.gatewayId}' ] as db;

・ 使用するRDB参照定義の開発資産IDは「app_db」を設定しています。

・ RDBのテーブル「PRODUCTFUNC_TBL」を参照しています。

・ RDBのテーブル参照の条件に、代替パラメーター「${tvevnt.gatewayId}」を指定しています。

・ 参照結果には別名「db」をつけ、select文の中で利用しています。

5.4.4.5 SOAPリスナ

複合イベント処理文の処理結果をSOAPでユーザー開発Webサービスに送信するには、SOAPリスナを使用します。

- 81 -

Page 91: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

SOAPリスナを使用するには、処理結果を送信したい複合イベント処理文(select文)の前に、@SoapListenerアノテーションを付与しま

す。

処理結果の送信先や、SOAPメッセージの内容についての詳細は、「5.4.8 SOAPリスナ定義の設計」を参照してください。

構文

@SoapListener("SOAPリスナ定義ID")

複合イベント処理文(select文)

SOAPリスナ定義ID

処理結果を送信するWebサービスの送信先URLなどを定義した、SOAPリスナ定義の開発資産IDを指定します。

複合イベント処理文(select文)

処理結果を送信したい複合イベント処理文(select文)です。

5.4.4.6 カスタムリスナ

複合イベント処理文の結果をユーザー開発Javaクラスに渡して処理したい場合は、カスタムリスナを使用します。

カスタムリスナを使用するには、処理結果を渡したい複合イベント処理文(select文)の前に、@CustomListenerアノテーションを付与しま

す。

ユーザー開発Javaクラスについては、「5.6.3 ユーザー開発Javaクラスの設計」を参照してください。

構文

@CustomListener(mainClass="ユーザー開発Javaクラス名" [, args={"引数1", "引数2", ...}])

複合イベント処理文(select文)

または、二重引用符(")を引用符(')にした形式。

ユーザー開発Javaクラス名

複合イベント処理文の結果を受けとり処理するJavaクラスの名前をFQCN形式(パッケージ名も含めた形式)で指定します。このJavaクラスは、CustomListenerインターフェースを実装している必要があります。

引数1、引数2、...

ユーザー開発Javaクラスに任意の引数を渡したいときに指定します。引数を渡す必要がない場合は、argsを省略できます。

5.4.4.7 ロギングリスナ

複合イベント処理文の処理結果をロギング機能でイベントログに記録したい場合は、ロギングリスナを使用します。

ロギングリスナを使用するには、処理結果を記録したい複合イベント処理文(select文)の前に、@LoggingListenerアノテーションを付与

します。

構文

@LoggingListener(table="ログ格納領域", properties="出力するプロパティ名")

複合イベント処理文(select文)

ログ格納領域

イベントログが記録される、Hadoopシステム内でのパスを絶対パスで指定します。

CEPサーバのエンジンログにイベントを記録する場合(エンジン構成ファイルのtype要素にfileを指定した場合)であっても、イベント

を識別するための、スラッシュ(/)から始まる仮想的なパス名(例:“/イベント名”)を指定してください。

注意

tableの指定は必須です。table=""のように、空の値を指定してもCEPエンジンは正常に起動しますが、ロギングは行われません。

- 82 -

Page 92: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

出力するプロパティ名

select文の処理結果のうち、ロギングするプロパティ名を指定します。コンマ(,)で区切って複数のプロパティを指定することも可能で

す。

処理結果がネストしたプロパティの場合、ネストしたプロパティの間をピリオド(.)で連結します。

parentプロパティにchildプロパティがネストしている場合

以下のようにparentプロパティとchildプロパティがネストしている場合、childプロパティを指定するには「parent.child」と記述します。

<root>

<parent>

<child>aaa</child>

</parent>

</root>

注意

propertiesの指定は必須です。properties=""のように、空の値を指定してもCEPエンジンは正常に起動しますが、ロギングは行われ

ません。

複合イベント処理文(select文)

処理結果をロギングで記録したい複合イベント処理文(select文)です。

注意

・ イベントタイプ定義で定義するロギングと、ルール定義(ロギングリスナ)で定義するロギングは、出力先となるログ格納領域を分け

ることが可能です。しかし、異なるHadoopシステムへロギングする事はできません。

・ 出力プロパティの値がnullの場合、空白に変換してイベントログに出力します。

・ 出力プロパティが数値項目の場合、文字列変換してイベントログに出力します。

・ 存在しない出力プロパティ名を指定した場合、空白をイベントログに出力します。

・ データにダブルクォート(")がある場合、データ内にあるダブルクォートを重ねて出力します。

aa"bb"aaの出力例:

"aa""bb""aa"

5.4.5 マスタ定義の設計

高速フィルターのルールでマスタデータを利用する場合、マスタ定義の設計を行います。

マスタ定義の設計で留意すべき項目について説明します。

・ マスタデータの更新タイミング

マスタデータの更新は、CEPエンジンが次に起動された時に反映されます。

また、マスタデータの動的変更を実施した時にも反映されます。

・ マスタデータによるメモリ使用量

マスタデータは、CEPエンジンの起動時にCEPエンジンのメモリ上に展開されます。必要なメモリ使用量の詳細は「3.3.1.2 高速フィ

ルターでマスタデータを使用した場合のメモリ量」を参照してください。

- 83 -

Page 93: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

5.4.6 イベントタイプ定義(フィルター済み)の設計

高速フィルターでマスタデータとの結合処理などにより、フィルター済みイベントが、元の入力イベントとは異なる形で複合イベント処理

に渡される場合、複合イベント処理に渡される時点の形に対応するイベントタイプ定義が必要です。

イベントタイプ定義(フィルター済み)の設計で留意すべき項目について説明します。

・ フィルター済みイベントを構成する項目

高速フィルタールールによって出力されるイベントの項目を確認します。

出力式(output)で指定している項目数とCSVカラム情報に定義している項目数が合っていることが必要です。

・ イベントの形式

指定可能なイベントの形式はCSV形式のみです。

5.4.7 RDB参照定義の設計

外部データとしてRDBを参照する場合、RDB参照定義を作成します。RDB参照定義はRDBとの接続情報です。

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

・ RDB参照定義を設計する場合の留意点

・ キャッシュ保持期間とキャッシュ破棄間隔の設定

5.4.7.1 RDB参照定義を設計する場合の留意点

以下にRDB参照定義を設計する場合の留意点を示します。

・ 作成単位

RDB参照定義は、CEPエンジンごとに1つだけ配備できます。

・ 期限付きキャッシュの利用

RDBを初回に参照すると、クエリのキーと結果がCEPエンジンの期限付きキャッシュに格納されます。二回目以降の同一キーによ

るRDB参照は、キャッシュからデータを取得する動作となります。期限付きキャッシュの利用にはRDB参照定義にキャッシュ保持

期間とキャッシュ破棄間隔の設定が必要です。

期限付きキャッシュ利用時は、期限付きキャッシュに必要なメモリ使用量の見積もりが必要です。

5.4.7.2 キャッシュ保持期間とキャッシュ破棄間隔の設定

キャッシュに格納するデータ数が多くなれば、CEPエンジンのメモリ使用量が増大していくため、キャッシュの指定値を考察する必要が

あります。

キャッシュ保持期間は、キャッシュに保持する期間を秒単位で0~2147483647の範囲で指定します。

キャッシュ破棄間隔は、保持期間を超えたキャッシュを破棄するためにキャッシュをチェックする間隔で、秒単位で1~2147483647の範

囲で指定します。

以下、キャッシュの保持期間と破棄間隔を指定する場合の考え方について説明します。

RDBデータの更新がない場合

キャッシュの保持期間を大きくしておいて問題ありません。大量のキャッシュ破棄はGC発生となり、処理性能が一時的に落ちます。

キャッシュに入れるデータ量を考察したうえでGCを避けるような破棄間隔を設定してください。

RDBデータの更新が予期される場合

RDBデータが更新されても、 大で保持期間+破棄間隔の間は古いキャッシュのデータが使われる可能性があります。RDBデータ更

新後、どのくらいの間なら古いデータでも許されるかにより保持期間と破棄間隔を設定してください。また、キャッシュはクエリごとに保

持されるため、あるクエリではキャッシュに保持された古いデータが取得され、別のクエリでは更新された新しいデータが取得されると

いう可能性があります。RDB参照を行うルールを設計する際に、そのようなケースが起こり得るか考慮してください。

- 84 -

Page 94: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

5.4.8 SOAPリスナ定義の設計

SOAPリスナ定義では、複合イベント処理ルールの処理結果が送信される、ユーザー開発Webサービスのインターフェースを指定しま

す。SOAPリスナ定義で留意すべき項目について説明します。

・ 作成単位

ユーザー開発Webサービス単位に作成します。汎用的なアプリケーションを作成しSOAPリスナ定義を1つにすることも、合致パター

ンごとにアプリケーションを分離することもできます。

・ 開発資産ID

ルール照合に合致した時に呼び出す処理内容が分かるような、配備先のCEPエンジンで一意となるSOAPリスナ定義の名前を指

定します。

例えば電源がONであることを通知する処理であれば、“powerOn”などが分かりやすい例です。

・ SOAPリスナ定義とユーザー開発Webサービスの対応関係

対応する複合イベント処理ルールのプロパティ値が、呼び出すユーザー開発Webサービスと整合しているか、該当アプリケーショ

ンのWSDL(インターフェース定義)を元に確認してください。既存のWebサービスを利用する場合もインターフェースは既存のまま

で良いのか、変更する必要があるのかなどを検討します。以下に整合が必要な観点を示します。

- パラメーターの名前

ユーザー開発Webサービスに渡すパラメーター名は、複合イベント処理ルールの中で選択されるプロパティ名と一致している

必要があります。

複合イベント処理ルールの中で選択するプロパティ名をユーザー開発Webサービスのパラメーターとして使用する場合は、

ルールの中で別名を定義して使用するようにします。

- パラメーターの型

パラメーターの型も複合イベント処理ルールの中で使用されている型と一致している必要があります。

- パラメーターの順序

SOAPリスナにより出力されるSOAPメッセージ中のパラメーターの順序は、select文に記述したプロパティの順序になるとは限

りません。ユーザー開発Webサービスがパラメーターの順序をチェックする場合、事前にSOAPリスナの出力するSOAPメッセー

ジを確認してその順序を合わせる必要があります。

以下にルール定義とSOAPリスナ定義との対応関係図を示します。ルール定義とそれに関連付けられたSOAPリスナ定義から、ユー

ザー開発Webサービスに送信するSOAPメッセージが生成されます。

- 85 -

Page 95: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

図5.4 ルール定義およびリスナ定義と、送付されるSOAPメッセージの対応関係

5.5 設計(データ)ここでは各データの設計について説明します。

5.5.1 イベントデータ(テスト用)作成したルールの動作確認用に、イベント送信アプリケーションから送信するイベントデータを検討します。

以下の点に留意して検討する必要があります。

・ テストシナリオ(必要なイベントデータの内容)

設計、開発するルールが想定するシナリオに基づいてイベントデータを用意します。

正常データだけでなく、異常データが送信されることも想定して、データを用意します。

・ イベントデータの形式

使用するイベント送信アプリケーションに合わせた形式でイベントデータを用意します。

テスト用のイベント送信アプリケーションとして、BDCEPのサンプルに含まれるイベント送信サンプルプログラムを利用する場合は、

CSV形式でデータを用意します。

5.5.2 マスタデータ(高速フィルター用)高速フィルターでマスタデータを利用する場合、以下の点に留意して検討します。

・ マスタデータの形式

「5.5.2.1 マスタデータの形式」を参照してください。

5.5.2.1 マスタデータの形式

マスタデータはCSV形式のデータファイル、およびスキーマ情報ファイルで構成されます。

- 86 -

Page 96: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

CSV形式については、「9.7 利用可能なCSVの形式」を参照してください。

使用可能な文字コードはUTF-8です。

レコードの 後に記述する改行コードはLFまたはCRLFで指定します。

スキーマ情報ファイル

項目名の行だけを記述したファイルです。

スキーマ情報ファイルに、項目名以外の情報が存在する場合、エラーとなります。

データファイル

データが格納されたファイルです。データファイルの先頭行に項目名が記述されている場合は、先頭行を読み飛ばすようにマスタ

定義で設定できます。詳細は「9.2.3 マスタ定義ファイル」を参照してください。

スキーマ情報ファイルの例

"Kbn","Number","Code","Name","Value","Total","Biko"

データファイルの例

"01","1001","AAA","ブロックA","1,000","1,000","備考:稟議番号 第4023号"

"02","1001","BBB","ブロックB","","1,200","備考:稟議番号 第4023号"

"03","1002","CCC","ブロックC","800","800","備考:稟議番号 第4023号"

5.5.3 Terracottaのキャッシュ

Terracotta連携により、複合イベント処理ルールから外部のTerracottaのキャッシュを参照する場合、以下の点に留意して検討します。

・ キャッシュの初期データ

必要に応じて、キャッシュの初期データを用意します。

データの形式は、使用するTerracottaアプリケーションの仕様に従います。

・ Terracottaのキャッシュの形式

Terracottaのキャッシュは、規定の形式に従っている必要があります。

既存のキャッシュを利用する場合は、「5.5.3.1 利用可能なTerracottaのキャッシュの形式」に合っているか確認します。

5.5.3.1 利用可能なTerracottaのキャッシュの形式

Terracottaのキャッシュは、キーと値のペアで構成されます。BDCEPで参照するキャッシュは以下の構成にする必要があります。

キーに使用可能な型 値に使用可能な型

java.lang.String java.util.HashMap<java.lang.String, java.lang.Object>

複合イベント処理ルールで指定する各プロパティは、上記HashMapの各要素に対応します。

HashMapの各要素の値で使用可能な型と、対応する複合イベント処理ルールにおける型は以下の通りです。

HashMapの各要素に使用可能な型 対応する複合イベント処理ルールの型

java.lang.String string

java.lang.Character char/character

java.lang.Boolean bool/boolean

java.lang.Byte byte

java.lang.Short short

- 87 -

Page 97: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

HashMapの各要素に使用可能な型 対応する複合イベント処理ルールの型

java.lang.Integer int/integer

java.lang.Long long

java.lang.Float float

java.lang.Double double

Terracottaのキャッシュのキーと、値に指定するHashMapは、次の関係にする必要があります。

・ キャッシュのキーに指定するプロパティ名と、HashMapの対応する要素のキーを同じにします。

・ 上記のHashMapの要素の値を、キャッシュのキーの値に設定します。

この関係を図にすると次のようになります。

実際の使用方法については、「5.6.5 Terracottaアプリケーションの設計」を参照してください。

5.5.4 RDBRDB連携により、複合イベント処理ルールから外部のRDBを参照する場合、以下の点に留意して検討します。

・ 日本語利用時の注意

複合イベント処理言語から参照するテーブル名やテーブルの項目名などのRDB側の定義名には日本語を使用できません。RDB参照定義中に記述するデータベース名や、スキーマ名、ユーザー名なども同様です。

項目の値には日本語を使用できます。項目の値に日本語を使用する場合、RDBの文字コード(あるいは文字セット)はユニコード

を設定してください。詳細は連携先RDBのマニュアルを参照してください。

・ ユーザー名(RDB参照定義ではアクセスID)などに利用できる文字と 大長

利用するRDBの種類によって、ユーザー名(アクセスID)などに利用できる文字や長さに制限があります。

例えばSymfoware Server (Nativeインタフェース)の場合、CEPサーバから接続するときに設定するユーザー名(アクセスID)は、英

字で始まる半角英数字の範囲で36文字以内にしてください。ピリオド(.)や日本語は利用できません。

- 88 -

Page 98: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

データベース名、スキーマ名、データベースURL、およびアクセスパスワードについても同様に、利用可能な文字や長さに制限が

あります。各項目で使用可能な文字や長さの詳細は、「9.2.4 RDB参照定義ファイル」を参照してください。

・ RDBのテーブルの形式

利用するRDBのテーブルは、規定の形式に従う必要があります。

既存のRDBを利用する場合は、「5.5.4.1 利用可能なRDBのテーブルの形式」に合っているか確認します。

・ RDBの初期データ

新たにRDBを用意する場合は、初期データの用意が必要です。

既存のRDBを利用する場合は不要です。

初期データの形式は、データの格納に使用するRDBのコマンドの仕様に従います。詳細は連携先RDBのマニュアルを参照してく

ださい。

5.5.4.1 利用可能なRDBのテーブルの形式

RDBのテーブル名およびテーブルの項目名は、半角英数字を用いて、先頭が英字の36文字以下で入力します。

RDBのテーブルの各項目に利用できる型は以下の通りです。各型の詳細は連携先RDBのマニュアルを参照してください。

表5.7 RDBで利用可能な型

CHAR VARCHAR NCHAR NCHAR VARYING

NUMERIC DECIMAL INTEGER SMALLINT

FLOAT REAL DOUBLE PRECISION DATE

TIME TIMESTAMP BLOB

注意

複合イベント処理言語から参照するテーブル名やテーブルの項目名などのRDB側の定義名には、日本語を使用できません。項目の

値には日本語を使用できます。

5.6 設計(連携アプリケーション)ここでは各連携アプリケーションの設計について説明します。

5.6.1 イベント送信アプリケーションの設計

CEPエンジンに対してイベントを送信する方式について検討します。

ここでは、入力イベントの通信方式と、通信方式に合わせてイベントを送信するアプリケーションの検討が必要です。

入力イベントの通信方式

入力イベントの特性に合わせて、CEPエンジンがイベントを受信する時の通信方式について検討します。

イベントの発生元となる既存のシステムが、イベントの送信機能を備えているなら、既存システムが利用可能な通信方式について確認

します。

BDCEPでは、以下の3種類の通信方法が選択できます。

・ SOAP

・ HTTP

・ Socket

通信方法は、イベント送信元となるシステムまたは端末の特性や、求められる処理性能に合わせて選択します。それぞれの通信方法

の特長は以下の通りです。

- 89 -

Page 99: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

通信方法 特徴

SOAP 汎用的な通信プロトコルです。XML、またはCSV形式のイベントデータを、SOAPのメッセージ

でCEPエンジンに送信します。WSDLでインターフェースを定義でき、既存のWebサービス開

発ツールを利用したイベント送信アプリケーション開発が可能です。

HTTP 汎用的な通信プロトコルです。XML、またはCSV形式のイベントデータを、HTTPで接続した

CEPエンジンにそのまま送信します。余計なヘッダー情報が無い分、SOAPよりも通信量が減

らすことが可能で、より大量のイベント送信に向いているほか、RESTでの通信に対応した端末

からもイベント送信が可能です。

Socket TCP/IPのソケット通信上で行う、BDCEP独自の通信プロトコルです。XMLまたはCSV形式の

イベントデータを、一度に複数送信できます。HTTPのヘッダーすら無い分、HTTPよりも通信

量を減らすことが可能で、 も大量のイベント送信に向いています。

イベント送信アプリケーション

CEPサーバにイベントを送信するシステムあるいはアプリケーションについて検討します。

・ イベント送信アプリケーションには、本番運用時にイベントを送信するシステムと、ルールのテスト時に任意のタイミングでイベント

を送信するものの、2種類が考えられます。後者のテスト用のイベント送信について、少量のイベントデータの場合はBDCEP付属

サンプルの「5.11.6 イベント送信サンプルプログラム」の利用を検討します。

・ イベント発生元のシステムが、BDCEPがサポートする通信方式によるイベント送信が可能なら、その機能を利用してCEPエンジン

はイベントを受信できないか確認します。

・ イベントの発生元が、イベントの送信機能を持たない場合、あるいは、BDCEPの入力アダプターの通信方式に対応していない場

合、CEPサーバにイベントを送信するアプリケーション(イベント送信アプリケーション)の開発を検討します。

・ イベント送信アプリケーションは、イベント送信元となるサーバ、端末の仕様にあわせた設計、開発が必要です。各通信方式の詳

細な仕様や、イベント送信アプリケーションのサンプルについては、「開発リファレンス」の「第3章 入力アダプター機能リファレンス」

を参照してください。

5.6.2 ユーザー開発Webサービスの設計

ユーザー開発Webサービスの設計、開発の詳細については、ご使用のアプリケーションサーバのマニュアルを参照してください。ここ

では、ユーザー開発Webサービスの設計において留意すべき事項について説明します。

・ 類似処理は共通化する

例えば、個人に関する複数のレコメンドを行う場合は、レコメンドごとにWebサービスを分離せず、1つのWebサービスにまとめて1つのSOAPリスナ定義を作成し、呼出しパラメーターによってWebサービスの実行処理を切り分けます。

・ 対処や対象が異なる処理は分離する

“人に対するレコメンド処理”と“デバイスの制御”のように対処や対象が異なる場合は、Webサービス内部のロジックやテスト方法

が異なるため、別々のアプリケーションとして開発するように検討してください。

・ 動作確認済みのWebサービス実行環境

BDCEPでは、以下のWebサービスの実行環境でユーザー開発Webサービスの動作を確認しています。他の製品で実行する場合

は、十分な接続テストを行ってください。

製品名 補足

Interstage Application Server JavaEEのWebサービスを利用した場合で確認しています。

Apache Axis2 オープンソースのWebサービス実行基盤です。URLは以下の通りです。

http://axis.apache.org/axis2/java/core/

なお、上記以外の製品を利用する場合は、ユーザー開発WebサービスからCEPエンジンへのレスポンスとなるHTTPヘッダーに、

“Content-Length”、“Content-Type”および、各々の値が正しく設定されていることを確認してください。

- 90 -

Page 100: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

5.6.3 ユーザー開発Javaクラスの設計

カスタムリスナは、複合イベント処理の結果をユーザー開発Javaクラスに渡します。ここでは、ユーザー開発Javaクラスの概要と、設計

時に留意すべき事項について説明します。

ユーザー開発Javaクラスは、次のインターフェースを実装します。

com.fujitsu.cspf.cep.CustomListener

このインターフェースでは次の2つのメソッドを実装する必要があります。

返り値の型 メソッド名 引数 説明

void setArgs String[] args @CustomListenerアノテーションで指定したargsパラメーター

が渡されます。

StringstatementName

@CustomListenerアノテーションが付与された複合イベント処

理文の名前(@Nameで指定した名前)が渡されます。

void update Map[] newEvents @CustomListenerアノテーションが付与された複合イベント処

理文の処理結果(出力イベント)が、java.util.Mapオブジェクト

の配列として渡されます。

1つの出力イベントはプロパティ名と値のペアを保持する

java.util.Mapオブジェクトとして渡されます。

定期的に出力するようなルールの場合、出力イベントがなく

てもupdateメソッドが呼び出されることがあります。

複合イベント処理文から出力が行われるたびに、ユーザー開発Javaクラスに対して次の処理が行われます。

1. ユーザー開発Javaクラスのインスタンスを生成

2. setArgsメソッド呼出し

3. updateメソッド呼出し

また、CEPエンジンの起動時にも、ユーザー開発Javaクラスのインスタンスを生成します。

カスタムリスナの処理で例外が発生した場合、CEPエンジンが例外をキャッチし、例外をエンジンログおよびシステムログに出力しま

す。他のイベントの処理は継続します。

注意

ユーザー開発JavaクラスはCEPエンジンと同じJava VM上で動作します。ここでは、ユーザー開発Javaクラスの設計において留意すべ

き事項について説明します。

・ 処理時間がボトルネックにならないように設計する

ユーザー開発Javaクラスのインスタンス生成や、setArgsメソッドおよびupdateメソッドの呼び出しは、短時間で終わるように設計して

ください。これらの処理に時間がかかると、CEPエンジン内部に処理待ちのイベントが蓄積され、CEPエンジン全体の処理性能を

低下させる可能性があります。特に、大量のイベントを出力する場合はその影響が大きくなります。

・ スレッドセーフな設計を行う

ユーザー開発Javaクラスの処理は複数のスレッドから呼び出されるため、スレッドセーフな設計にしてください。例えば、クラス変数

を使用する場合は、複数のスレッドから呼ばれることを考慮する必要があります。

ただし、ユーザー開発Javaクラスのインスタンスは出力イベントが発生するごとに生成され、1つのインスタンスは1つのスレッドだけ

で動作します。そのため、インスタンス変数を操作するだけであればマルチスレッドを考慮する必要はありません。

・ 監視が必要なエラーは例外としてスローする

ユーザー開発Javaクラスで発生したエラーを監視する必要がある場合、エラーの内容を例外としてユーザー開発Javaクラス外にス

ローしてください。スローされた例外はCEPエンジンによってキャッチされ、エンジンログおよびシステムログに出力されます。

- 91 -

Page 101: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

ユーザー開発Javaクラスのサンプルソースコードが次のディレクトリに格納されています。

/opt/FJSVcep/sample/CustomListener

5.6.4 イベントログ分析アプリケーションの設計

ロギング機能により、イベントログをHadoopシステム内に蓄積する場合、蓄積したイベントログの内容を分析するアプリケーションの設

計を行います。アプリケーションはHadoopのAPIを使用し、Hadoopシステム上で動作します。

Hadoopシステム上で動作するアプリケーションの設計、開発の詳細についてはInterstage Big Data Parallel Processing Server(以降

BDPP)のマニュアルを参照してください。

アプリケーションが分析対象とするイベントログのデータ形式は以下の通りです。

5.6.4.1 イベントログの出力先とファイル形式

イベントログは、イベントタイプ定義や複合イベント処理文のロギングリスナで指定するログ格納領域に出力されます。出力先のログ格

納領域は自動生成されます。

出力先がHadoopシステムの場合、詳細は以下の通りです。

出力先

エンジン構成ファイルのディレクトリ名要素に指定する値によって、出力先を変更できます。

ディレクトリ名要素に、ディレクトリ名を指定した場合、出力先は以下の値を連結したパスになります。

- pdfs.fs.local.basedirの設定値(*1)

- エンジン構成ファイルで指定するディレクトリ名

- イベントタイプ定義、またはロギングリスナで指定するログ格納領域

- 自動生成されるログファイル名

(*1) pdfs.fs.local.basedirはHadoopのマウントディレクトリです。詳細はBDPPのマニュアルを参照してください。

ディレクトリ名要素に、スラッシュ(/)のみを指定した場合、出力先は以下の値を連結したパスになります。

- pdfs.fs.local.basedirの設定値

- イベントタイプ定義、またはロギングリスナで指定するログ格納領域

- 自動生成されるログファイル名

出力先の例

次の条件の場合、出力先は「/mnt/pdfs/hadoop/tmp/ログファイル名」になります。

- pdfs.fs.local.basedirに設定される値が「/mnt/pdfs」で、かつ、

- エンジン構成ファイルのディレクトリ名に「hadoop」を指定していて、かつ、

- イベントタイプ定義、または複合イベント処理文のロギングリスナで指定するログ格納領域に、「/tmp」を指定している場合

次の条件の場合、出力先は「/mnt/pdfs/tmp/ログファイル名」になります。

- pdfs.fs.local.basedirに設定される値が「/mnt/pdfs」で、かつ、

- エンジン構成ファイルのディレクトリ名にスラッシュ(/)を指定していて、かつ、

- イベントタイプ定義、または複合イベント処理文のロギングリスナで指定するログ格納領域に、「/tmp」を指定している場合

- 92 -

Page 102: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

注意

イベントログの出力先が重複した場合、かつ、イベントデータの形式が同じ場合、異なるイベントタイプのイベントデータが、同じファ

イルに出力されます。イベントタイプ別、または、ロギングリスナでの出力別に分析を行う場合は、出力先を分離してください。

ログファイル形式

HadoopのSequenceFile(バイナリファイル)形式です。

ログファイル名

ログファイルは、ログ格納領域に、以下のファイル名で自動生成されます。

このファイルは、デフォルト300秒で拡張子が“.done”にリネームされます。

日時_VM名_枝番

- 日時:yyyyMMddHHmmssSSS

- VM名:プロセスID@CEPサーバのホスト名

- 枝番:0000000001~0000000122

ポイント

拡張子が“.done”のファイルが、イベントログ分析アプリケーションによる分析対象になります。任意のディレクトリに移動して分析し

てください。

注意

拡張子が“.done”以外のファイルは、出力中のファイルのため操作しないでください。

ファイルサイズの上限

ファイルサイズの上限はLONG MAX(2の63乗-1)です。

ファイル数の上限

ありません。

SequenceFileのキー

時刻情報(yyyyMMddHHmmss)がキーになります。対応する Hadoop の型(API)は org.apache.hadoop.io.Text です。

上記時刻は、イベントデータの書込タイミングの時刻になります。(CEPエンジンがイベントを受信した時刻と異なる場合があります)

SequenceFileの値

入力イベントをそのまま出力します。対応する Hadoop の型(API)は org.apache.hadoop.io.BytesWritable です。

SequenceFileの圧縮形式

レコード圧縮

SequenceFileのバージョン

6

参考

出力先がエンジンログの場合

入力イベントをそのままエンジンログに出力します。

- 93 -

Page 103: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

5.6.5 Terracottaアプリケーションの設計

複合イベント処理ルールにおいて、Terracottaのキャッシュを参照する場合は、Terracottaのキャッシュに初期データを格納するアプリ

ケーションの検討が必要です。既存のキャッシュが利用可能な場合は、既存のキャッシュで使われているTerracottaアプリケーションを

利用します。

Terracottaアプリケーションの設計、開発の詳細については、Interstage Terracotta BigMemory Maxのマニュアルを参照してください。

更新対象のキャッシュの形式については「5.5.3.1 利用可能なTerracottaのキャッシュの形式」を参照してください。

Terracottaのキャッシュのキーと、値に指定するHashMapは、次の関係にする必要があります。

・ キャッシュのキーに指定するプロパティ名と、HashMapの対応する要素のキーを同じにします。

・ 上記のHashMapの要素の値を、キャッシュのキーの値に設定します。

Virtual Data Windowの例

create window ウィンドウ名.vdw:ehcache("CacheA", "key") as (key string, address string);

Terracottaのキャッシュにエントリーを追加するプログラムの例

import net.sf.ehcache.*;

import java.util.HashMap;

CacheManager cacheManager = Caching.getCacheManager("/xxx/ehcache.xml"); ...(1)

Ehcache cache = cacheManager.getCache("CacheA"); ...(1)

String keyProperty = "key"; ...(2)

String keyValue = "1"; ...(2)

HashMap value = new HashMap(); ...(3)

value.put(keyProperty, keyValue); ...(3)

value.put("address", "東京"); ...(3)

cache.put(new Element(keyValue, value)); ...(4)

(1) Terracottaのキャッシュ(Ehcache)の構成情報ファイルを指定してCacheManagerを取得し、Virtual Data Windowで使用するキャッシュ

を取得します。

(2) Virtual Data Windowに指定するキーとなるプロパティ名とその値を作成します。ここでは、“key”をキーとなるプロパティとして設定

しています。

(3) キャッシュの値として格納するjava.util.HashMapオブジェクトを作成します。ここでは、プロパティ“address”にjava.lang.String型の値

を設定しています。また、(2)で作成したキーとなるプロパティ名と値を、HashMapの要素に設定する必要があります。

(4) キャッシュにエントリーを追加します。

5.7 実装

開発資産の実装作業(コーディングなど)について説明します。

5.7.1 定義ファイルの作成

定義ファイルの作成について説明します。

・ イベントタイプ定義ファイルの作成

・ ルール定義ファイルの作成

- デバッグログリスナ

・ マスタ定義ファイルの作成

・ RDB参照定義ファイルの作成

- 94 -

Page 104: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

・ SOAPリスナ定義ファイルの作成

5.7.1.1 イベントタイプ定義ファイルの作成

設計したイベントタイプ定義の項目に沿って、イベントタイプ定義ファイルを作成します。

イベントタイプ定義ファイルの書式については「9.2.1 イベントタイプ定義ファイル」を参照してください。

イベントタイプ定義記述例(/tmp/EVENTTYPE_01.xml)

以下はXML形式のイベントに対するイベントタイプ定義の例です。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<eventType xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="EVENTTYPE_01">

<comment>イベントタイプ定義_01</comment>

<type>XML</type>

<xmlSchema>

<![CDATA[

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"

xmlns="http://dataaccesscontrol.sspf.fujitsu.com/namespace/xmlmessage"

targetNamespace="http://dataaccesscontrol.sspf.fujitsu.com/namespace/xmlmessage">

<xs:element name="messagedata">

<xs:complexType>

<xs:sequence>

<xs:element name="memberID" type="xs:string" />

<xs:element name="areaID" type="xs:string" />

<xs:element name="status" type="xs:string" />

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:schema>

]]>

</xmlSchema>

<root>messagedata</root>

<useLogging>true</useLogging>

<loggingTableName>/echonet</loggingTableName>

<useCep>true</useCep>

</eventType>

5.7.1.2 ルール定義ファイルの作成

設計したルール定義の項目に沿って、ルール定義ファイルを作成します。

ルール定義ファイルの書式については「9.2.2 ルール定義ファイル」を参照してください。

また、結合テストでの動作確認用に、複合イベント処理ルールにデバッグログリスナ(@DebugLogListener)を付与します。デバッグログ

リスナについては「5.7.1.2.1 デバッグログリスナ」を参照してください。

記述例

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<rule xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="RULE_01">

<comment>ルール定義_01</comment>

<filter>

<![CDATA[

on EVENTTYPE_01 {

if ($status == 'Walking') then output() as EVENTTYPE_01;

}

- 95 -

Page 105: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

]]>

</filter>

<statements>

<![CDATA[

@SoapListener('LISTEN_01')

@DebugLogListener

select * from EVENTTYPE_01 where areaID = '1010';

]]>

</statements>

</rule>

本例では、以下のルールを記述しています。

高速フィルタールール

イベントタイプEVENTTYPE_01の入力イベントからstatusの項目内容(文字列)がWalkingのイベントを抽出し、複合イベント処理に

渡します。

複合イベント処理ルール

イベントタイプEVENTTYPE_01のイベントデータをSOAPリスナに通知し、同時にデバッグ情報をエンジンログに出力します。

5.7.1.2.1 デバッグログリスナ

デバッグログリスナを使用して、複合イベント処理文の実行時に、デバッグ用のログをエンジンログに出力できます。

具体的には、対象の複合イベント処理文の前に、@DebugLogListenerアノテーションを付与します。

また、同時に@Nameアノテーションで対象の複合イベント処理文に名前をつけることで、エンジンログの出力情報を見分けやすくでき

ます。

構文

@Name("名前")

@DebugLogListener

複合イベント処理文

名前

デバッグログ出力時に同時に出力し、出力情報を見分けやすくします。

複数の複合イベント処理文に同じ名前を付けた場合、後ろにハイフン2つ(--)と数字を付けた形の名前が自動的に付けられます。

複合イベント処理文

デバッグログ出力の対象としたい複合イベント処理文です。

注意

性能低下を招く可能性があるため、本番運用時は使用しないでください。

参考

@Nameアノテーションを指定しない場合

@Nameアノテーションが指定されていない場合は、“0b0562a2-56e7-4cf3-a520-cb1e16ef2992”など自動的に割り当てた一意の名称

が、@Nameアノテーションの値の代わりに出力されます。

@Nameアノテーションを指定した場合の出力例(@Name('EPL')を指定)

- 96 -

Page 106: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

2012-07-09 19:32:35,495 [DEBUG] EPL:length=1

EPL[0]

@Nameアノテーションを指定しない場合の出力例

2012-07-09 19:35:55,244 [DEBUG] 34b1785f-900c-4420-b2bf-ea53aa368b07:length=1

34b1785f-900c-4420-b2bf-ea53aa368b07[0]

5.7.1.3 マスタ定義ファイルの作成

設計したマスタ定義の項目に沿って、マスタ定義ファイルを作成します。

マスタ定義ファイルの書式については「9.2.3 マスタ定義ファイル」を参照してください。

記述例

スキーマ情報ファイルが /var/tmp/SchemaFile01.csv、データファイルが /var/tmp/MasterFile01.csvのマスタ定義(

開発資産ID:MASTER_01)の記述例です。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<master xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="MASTER_01">

<comment>マスタ定義_01</comment>

<schemaFile>/var/tmp/SchemaFile01.csv</schemaFile>

<dataFile>/var/tmp/MasterFile01.csv</dataFile>

<skipHeader>false</skipHeader>

</master>

5.7.1.4 RDB参照定義ファイルの作成

設計したRDB参照定義の項目に沿って、RDB参照定義ファイルを作成します。

RDB参照定義ファイルの書式については「9.2.4 RDB参照定義ファイル」を参照してください。

Symfoware (Nativeインタフェース)を参照する場合の記述例

Symfoware(Openインタフェース)のRDBサーバ(ホスト名:RERDB001、ポート番号:20001)に、データベース名「dbms1」、ユーザー名

「user01」で接続する例です。また、RDBサーバから参照した結果を1分間キャッシュし、2分ごとに保持期間の過ぎたキャッシュを破棄

します。

その他のRDBを参照する場合の記述例は「9.2.4 RDB参照定義ファイル」を参照してください。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<database xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="RDBREF_01">

<comment>RDB参照定義_01</comment>

<jdbcClass>org.postgresql.Driver</jdbcClass>

<url>jdbc:postgresql://RERDB001:20001/mydb?loginTimeout=20</url>

<user>user01</user>

<password>pass123</password>

<maxAge>60</maxAge>

<purgeInterval>120</purgeInterval>

</database>

- 97 -

Page 107: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

5.7.1.5 SOAPリスナ定義ファイルの作成

設計したSOAPリスナ定義の項目に沿って、SOAPリスナ定義ファイルを作成します。

SOAPリスナ定義ファイルの書式については「9.2.5 SOAPリスナ定義ファイル」を参照してください。

記述例

本例では、接続先URLが“http://192.168.11.249/WebServWAR/MyApp1Service”であるユーザー開発Webサービスにルート要素が

cepであるSOAPボディを含むメッセージ(イベント)を通知することを定義します。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<soapListener xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="LISTEN_01">

<comment>SOAPリスナ定義_01</comment>

<url>http://192.168.11.249/WebServWAR/MyApp1Service</url>

<nameSpace>http://webservice/</nameSpace>

<prefix>ns</prefix>

<method>cep</method>

</soapListener>

5.7.2 データの準備

ルールから参照するデータの準備について説明します。

5.7.2.1 イベントデータ(テスト用)の準備

ルールの動作確認で使用するイベントデータを準備(作成)します。

イベントデータの形式については、利用するイベント送信アプリケーションに合わせます。

BDCEPのサンプルに付属するイベント送信サンプルプログラム用のイベントデータの例

/opt/FJSVcep/sample/sample1/event/CouponEvent.csv

"STR0001","CPN0001","30"

5.7.2.2 マスタデータ(高速フィルター用)の準備

マスタ連携で使用する、スキーマ情報ファイルと、データファイルを準備(作成)します。

スキーマ情報ファイルとデータファイルの詳細については「9.2.3 マスタ定義ファイル」を参照してください。

スキーマ情報ファイルの例

"Kbn","Number","Code","Name","Value","Total","Biko"

データファイルの例

"01","1001","AAA","ブロックA","1,000","1,000","備考:稟議番号 第4023号"

"02","1001","BBB","ブロックB","","1,200","備考:稟議番号 第4023号"

"03","1002","CCC","ブロックC","800","800","備考:稟議番号 第4023号"

- 98 -

Page 108: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

5.7.2.3 Terracottaのキャッシュに格納するデータの準備

必要に応じて、複合イベント処理ルールから参照するTerracottaのキャッシュに対し、 初に格納するデータを準備(作成)します。

既存のキャッシュを利用する場合は準備(作成)不要です。

データの形式は、利用するTerracottaアプリケーションの仕様に従います。

5.7.2.4 RDBの準備

複合イベント処理ルールから参照するRDBや 初に格納するデータを準備(作成)します。既存のRDBを利用する場合は準備(作成)不要です。

RDBのスキーマ定義や格納用データは、データの格納に利用するRDBのコマンドの仕様に従って作成します。詳細は連携先RDBの

マニュアルを参照してください。

5.7.3 連携アプリケーションの実装

連携アプリケーションの実装について説明します。

・ イベント送信アプリケーションの実装

・ ユーザー開発Webサービスの実装

・ ユーザー開発Javaクラス(カスタムリスナ)の実装

・ イベントログ分析アプリケーションの実装

・ Terracottaアプリケーションの実装

5.7.3.1 イベント送信アプリケーションの実装

CEPエンジンにイベントを送信するアプリケーションを実装します。

利用する、入力アダプターの種類にあわせた実装を行います。

入力アダプターの種類ごとのサンプルプログラムについては「開発リファレンス」の「第3章 入力アダプター機能リファレンス」を参照し

てください。

5.7.3.2 ユーザー開発Webサービスの実装

SOAPリスナから呼び出すWebサービスのアプリケーションを実装します。

5.7.3.2.1 Webサービス実装手順

Webサービス実装手順について説明します。

1. WSDLの作成

SOAPリスナ定義で設計した、呼び出すWebサービスのインターフェース情報(WebサービスのURL、名前空間、プレフィクス、メ

ソッド)と、複合イベント処理文(select文)で選択列としたパラメーターから、ユーザー開発アプリケーションのWSDL(インターフェー

ス定義)を作成します。

- 99 -

Page 109: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

目的とするイベントを検出するための複合イベント処理文(select文)と、そのルールに関連付けたSOAPリスナ定義、および、

SOAPリスナから生成されるSOAPメッセージの関係を以下に示します。

図5.5 ルール定義およびリスナ定義と、送付されるSOAPメッセージの対応関係

このSOAPメッセージを受け取るWebサービスのWSDLのサンプルを以下に示します。このWSDLはメッセージを受け取るだけ

(One-way)のWebサービスを定義しています。アプリケーションに応答を返す(Request-response)Webサービスとして実装した場

合、CEPエンジンはその応答を無視します。

表5.8 WSDLのサンプル

001

002

003

004

005

006

007

008

009

010

011

012

013

014

015

016

017

018

019

020

021

022

023

024

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

<definitions

targetNamespace="http://example.com/exampleNamespace"

xmlns="http://schemas.xmlsoap.org/wsdl/"

xmlns:tns="http://example.com/exampleNamespace"

xmlns:soapbind="http://schemas.xmlsoap.org/wsdl/soap/"

xmlns:xs="http://www.w3.org/2001/XMLSchema">

<types>

<xs:schema elementFormDefault="qualified"

targetNamespace="http://example.com/exampleNamespace" >

<xs:element name="rootElement">

<xs:complexType>

<xs:sequence>

<xs:element name="property1" type="xs:string" />

<xs:element name="property2" type="xs:string" />

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:schema>

</types>

<message name="notifyMessage">

- 100 -

Page 110: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

025

026

027

028

029

030

031

032

033

034

035

036

037

038

039

040

041

042

043

044

045

046

047

048

049

050

<part name="body" element="tns:rootElement" />

</message>

<portType name="eventReceiverPortType">

<operation name="notifyOperation">

<input message="tns:notifyMessage" />

</operation>

</portType>

<binding name="eventReceiverSOAPBinding" type="tns:eventReceiverPortType">

<soapbind:binding transport="http://schemas.xmlsoap.org/soap/http"

style="document" />

<operation name="notifyOperation">

<soapbind:operation soapAction="" />

<input>

<soapbind:body use="literal" />

</input>

</operation>

</binding>

<service name="eventReceiverService">

<port name="eventReceiverSOAPPort" binding="tns:eventReceiverSOAPBinding">

<soapbind:address location="http://example.com/serviceEndPoint" />

</port>

</service>

</definitions>

上記WSDLの下線部分を、ルール定義、SOAPリスナ定義に合わせて以下のように修正することによって、作成するWebサービ

スの雛形を生成するためのWSDLとして利用できます。

- 003、005、011行目

WSDLの対象名前空間(definitions要素のtargetNamespace属性)、対象名前空間の接頭辞の宣言(definitions要素の

xmlns:tns属性)、WSDL中のXMLスキーマの対象名前空間(types要素中のxs:schema要素のtargetNamespace属性)をSOAPリスナ定義の名前空間の値にします。

- 012、025行目

WSDL中のXMLスキーマで定義するメッセージのルート要素の名前(types要素中のxs:schema要素中のxs:element要素の

name属性)、WSDLのメッセージとして定義している要素(message要素のpart要素のelement属性)をSOAPリスナ定義のルー

ト要素の値にします。

- 015、016行目

WSDL中のXMLスキーマで定義するルート要素の子要素の名前(types要素中のルート要素定義配下のxs:element要素の

name属性)を、複合イベント処理文(select文)の出力プロパティ名にします。

出力するプロパティの数だけ同様の行を作成します。この要素のタイプ(xs:element要素のtype属性)については、上記の例

では文字列(xs:string)を指定しています。プロパティのタイプに合わせて適切に設定しておくことにより、ご利用のツールに

よってはタイプに応じたソースコードを生成してくれるため、プログラム中での型変換が不要となります。

- 047行目

終的なサービス公開用のWSDLでは、service要素配下のsoapbind:address要素のlocation属性に、実際のサービスのURLが入り、これはリスナ定義の接続URLの値にもなります。しかし、開発時には、この接続URLは決まっていない場合も多いた

め、上記サンプルのままでも問題ありません。

2. Webサービスのアプリケーションの実装

作成したWSDLを元に、お使いの開発ツールからWebサービスのアプリケーションの雛型を出力し、そこにアプリケーションのロ

ジックを追加します。

5.7.3.3 ユーザー開発Javaクラス(カスタムリスナ)の実装

CEPエンジンのカスタムリスナ経由で呼び出される、ユーザー開発Javaクラスを実装します。

- 101 -

Page 111: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

5.7.3.3.1 CustomListenerインターフェース

ユーザー開発Javaクラスは、次のインターフェースを実装します。

com.fujitsu.cspf.cep.CustomListener

インターフェースの実体は、CEPサーバの/opt/FJSVcep/cep/lib/CepServerCustom.jarに含まれています。CepServerCustom.jarをお使

いのJava開発環境にコピーし、クラスパスを設定して開発を行ってください。

5.7.3.3.2 カスタムログ

ユーザー開発Javaクラスからカスタムリスナ用のログファイル(カスタムログ)へのログ出力が可能です。カスタムログの出力先は次の通

りです。

/var/opt/FJSVcep/cep/cep/logs/EngineLog/CEPエンジン名/custom.log

出力方法

実装には、Apache Log4jのクラス(org.apache.log4j.Logger)を使用します。

以下のメソッドでログ出力インスタンスを取得します。("custom"は固定です)

Logger myLogger = Logger.getLogger("custom");

参考

Apache Log4jのjarファイルは/opt/FJSVcep/log4j/lib/log4j-1.2.16.jarにあります。

Loggerクラスのfatal、error、warn、infoメソッドを使用してログ出力します。

myLogger.error("xxxxxx");

注意

org.apache.log4j.Loggerクラスのtraceおよび、debugメソッドは利用できません。

5.7.3.3.3 コンパイル

作成したソースコードはコンパイルして、クラスファイルまたはjarファイルを生成する必要があります。

JDK7以降のjavacを使用する場合は「-target 1.6」をオプションに指定してコンパイルしてください。

5.7.3.4 イベントログ分析アプリケーションの実装

イベントログを分析するアプリケーションを実装します。アプリケーションはHadoopのAPIを使用して実装します。詳細は、Interstage BigData Parallel Processing Serverのマニュアルを参照してください。

5.7.3.5 Terracottaアプリケーションの実装

Terracottaアプリケーションを実装します。詳細については、Interstage Terracotta BigMemory Maxのマニュアルを参照してください。

5.8 開発資産の配備

開発資産の配備について説明します。配備作業には以下の項目があります。

・ 定義情報の配備

・ データの用意

・ 連携アプリケーションの配備

- 102 -

Page 112: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

5.8.1 定義情報の配備

CEPサーバに開発した定義情報を格納し、cepdeployrscコマンドにより、定義情報の配備を行います。定義情報の配備方法について

は、「6.1.3.1 定義情報の配備」を参照してください。

以下に、定義情報の配備の例を示します。

定義情報の配備の例

CEPエンジン CepEngine に、以下の定義情報(定義ファイル)を配備する場合のコマンド実行例です。

/application

+-- EVENT01.xml ... イベントタイプ定義 (開発資産ID: EVENT01)

+-- RULE01.xml ... ルール定義 (開発資産ID: RULE01)

+-- MASTER01.xml ... マスタ定義 (開発資産ID: MASTER01)

+-- RDBREF01.xml ... RDB参照定義 (開発資産ID: RDBREF01)

+-- LISTENER01.xml ... SOAPリスナ定義 (開発資産ID: LISTENER01)

コマンド実行例は以下の通りです。

$ cepdeployrsc eventtype -e CepEngine -f /application/EVENT01.xml<ENTER>

Are you sure you want to deploy the event type definition?(default: y) [y,n,q]:<ENTER>

Command cepdeployrsc executed successfully.

$ cepdeployrsc rule -e CepEngine -f /application/RULE01.xml<ENTER>

(省略)

$ cepdeployrsc master -e CepEngine -f /application/MASTER01.xml<ENTER>

(省略)

$ cepdeployrsc rdb_ref -e CepEngine -f /application/RDBREF01.xml<ENTER>

(省略)

$ cepdeployrsc listener -e CepEngine -f /application/LISTENER01.xml<ENTER>

(省略)

5.8.2 データの用意

ルールの動作に必要なデータを用意します。

イベントデータ(テスト用)

イベント送信元システムに格納します。

イベント送信アプリケーションとして、イベント送信サンプルプログラムを利用する場合は、CEPサーバに格納します。

ログ格納領域

ログ格納領域となるディレクトリを作成し、インストール時に設定した、エンジン実行ユーザーに対する書込み許可を設定します。作

業は通常、CEPサーバのシステム管理者によって行います。

参考

ログ格納領域となるディレクトリが存在しない場合、ロギング時に自動生成されます。

ディレクトリ作成はエンジン実行ユーザーの権限で行われます。

ディレクトリの作成例

エンジン実行ユーザー(グループ)が isbdcep (isbdcep) の場合の作成例です。

作業は hadoop コマンドを使って行います。コマンドの実行はスーパーユーザーで行います。

- 103 -

Page 113: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

エンジン構成ファイルのディレクトリ名要素に任意のディレクトリ名を指定した場合

指定した名前のディレクトリを、Hadoopのファイルシステムのルートディレクトリ直下に作成します。

作成したディレクトリは、エンジン実行ユーザーが書込み可能なように所有者を変更します。

イベントタイプ定義、またはロギングリスナで指定するログ格納領域は自動作成されます。

以下は、ディレクトリ名要素に「hadoop」を指定した場合の例です。

# hadoop fs -mkdir /hadoop <ENTER>

# hadoop fs -chown isbdcep:isbdcep /hadoop <ENTER>

エンジン構成ファイルのディレクトリ名要素にスラッシュ(/)のみ指定した場合

エンジン実行ユーザーがHadoopのファイルシステムのルートディレクトリに書込み可能なら作業は不要です。

書込み許可が無い場合、イベントタイプ定義、またはロギングリスナで指定するログ格納領域と同名のディレクトリを

作成します。

作成したディレクトリは、エンジン実行ユーザーが書込み可能なように所有者を変更します。

以下は、イベントタイプ定義、またはロギングリスナで指定するログ格納領域に「/tmp」を指定した場合の例です。

# hadoop fs -mkdir /tmp <ENTER>

# hadoop fs -chown isbdcep:isbdcep /tmp <ENTER>

マスタデータ

マスタ定義で指定したパスに、スキーマ情報ファイルとデータファイルを格納します。

格納したファイルは、インストール時に設定した、エンジン実行ユーザーに対するファイルの読込み許可の設定が必要です。

Terracottaのキャッシュ

新規にTerracottaのキャッシュを用意する場合は、別途開発したTerracottaアプリケーションにより、初期データをキャッシュに格納し

ます。

なお、事前にTerracottaサーバの設定を行い、格納先となるキャッシュの作成が必要です。キャッシュの作成方法については、

Interstage Terracotta BigMemory Maxのマニュアルを参照してください。

既存のキャッシュをそのまま利用する場合は、特に作業は必要ありません。

RDB

新規にRDBを用意する場合は、RDBのコマンドにより初期データをRDBに格納します。

なお、事前に格納先となるRDBの作成が必要です。RDBの作成方法については、連携先RDBのマニュアルを参照してください。

既存のRDBをそのまま利用する場合は、特に作業は必要ありません。

5.8.3 連携アプリケーションの配備

開発した連携アプリケーションを配備します。

イベント送信アプリケーション

イベント送信元システムに配備します。配備方法は、送信元システムでのアプリケーションの配備方法に従います。

イベント送信アプリケーションとして、イベント送信サンプルプログラムを利用する場合は、配備不要です。

ユーザー開発Webサービス

アプリケーションサーバに配備します。配備方法は、使用するアプリケーションサーバのマニュアルに従います。

ユーザー開発Javaクラス

作成したクラスファイルは以下のディレクトリに格納してください。

/etc/opt/FJSVcep/config/custom/エンジン名/classes

作成したjarファイルは以下のディレクトリに格納してください。

- 104 -

Page 114: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

/etc/opt/FJSVcep/config/custom/エンジン名

注意

- 格納したクラスファイルおよびjarファイルは、エンジン実行ユーザーが読み取れるように、アクセス権の設定が必要です。

- クラスファイルは、classesディレクトリの配下に、クラスのパッケージ名に相当するディレクトリを作成して格納します。作成した

ディレクトリも、エンジン実行ユーザーが読み取れるように、アクセス権の設定が必要です。

- CEPエンジンの起動中に格納したクラスファイルおよびjarファイルは、CEPエンジンが再起動するまで有効になりません。

クラスファイルの格納例

com.example.Exampleというクラスの場合、次のようにcom/exampleというディレクトリを作成して格納します。

# cd /etc/opt/FJSVcep/config/custom/エンジン名/classes <ENTER>

# mkdir -p com/example <ENTER>

# chmod 755 com <ENTER>

# chmod 755 com/example <ENTER>

# cp 格納するクラスファイルのパス com/example/ <ENTER>

# chmod 644 com/example/クラスファイル名 <ENTER>

イベントログ分析アプリケーション

Hadoopシステムに配備します。配備方法は、Interstage Big Data Parallel Processing Serverのマニュアルに従います。

Terracottaアプリケーション

Terracottaサーバに配備します。配備方法は、Interstage Terracotta BigMemory Maxのマニュアルに従います。

5.9 結合テスト

開発資産を配備したCEPエンジンに、テストデータを送信し動作確認を行います。

5.9.1 結合テストの流れ

結合テストはCEPエンジンを起動した状態で行います。以下にテストの流れを示します。

- 105 -

Page 115: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

図5.6 結合テストの流れ

5.9.2 エンジンログの確認方法

CEPエンジンのデバッグ情報や、起動時、および運用時のエラーメッセージは、エンジンログに出力されます。CEPエンジン起動時に

チェックされる、ルールのエラーもエンジンログに出力されます。

1つのCEPエンジンは、2つのエンジンログを出力します。1つは入力アダプターと高速フィルターの処理について、もう1つは複合イベ

ント処理と出力アダプターの処理について出力します。エンジンログに既定の書式はありません。

各エンジンログの出力先は以下の通りです。

高速フィルターのエンジンログ

/var/opt/FJSVcep/cep/flt/logs/EngineLog/CEPエンジン名/engine.log

複合イベント処理のエンジンログ

/var/opt/FJSVcep/cep/cep/logs/EngineLog/CEPエンジン名/engine.log

複合イベント処理ルールにDebugLogListenerを登録している場合は、複合イベント処理のエンジンログに処理結果が出力されます。

- 106 -

Page 116: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

注意

エンジンログの分割

エンジンログにDebugLogListenerのログを一度に約10万文字(100*1024文字)以上出力するとログは分割して出力されます。詳細は、

次の「DebugLogListenerのログが分割された時の確認方法」を参照してください。

DebugLogListenerのログが分割された時の確認方法

複合イベント処理文の条件にヒットした場合の出力結果が、約10万文字(100*1024文字)を超過した場合は、出力結果が100*1024文

字ごとに分割出力されます。

分割出力時は、先頭と末尾の識別子が分割出力されたログに付加されます。このとき、分割されたログの 初の出力結果には末尾の

識別子だけが出力され、 後の出力結果には先頭の識別子だけが出力されます。

先頭の識別子

以下の内容が出力されます。

YYYY-MM-DD hh:mm:ss,sss [DEBUG]

*****CUT_スレッドID_ナノ秒*****

末尾の識別子

以下の内容が出力されます。スレッドID および ナノ秒 は先頭識別子と同じ値になります。

*****CUT_スレッドID_ナノ秒*****

注意

ログ出力が前後する可能性

ログは分割した単位に同時に実行する他のイベントの処理結果が割り込む可能性があります。次の「ログが分割された場合の出力例」

にしたがってログを参照してください。

ログが分割された場合の出力例

2011-12-07 14:01:13,720 [DEBUG] 6e1619bd-a048-4c64-9efb-306e9f2b88d6:length=100000

6e1619bd-a048-4c64-9efb-306e9f2b88d6[0]

residence :12: String

value :ON: String

gatewayId :00000001: String

・・・・・省略

6e1619bd-a048-4c64-9efb-306e9f2b88d6[123]

residence:30: String

val

*****CUT_94_19131119552293***** ...1(分割出力されたログの最初の部分の末尾)

~~~ 他のイベントのログ ~~~

2011-12-07 14:01:13,720 [DEBUG] ...2(分割出力されたログの継続部分の先頭)

*****CUT_94_19131119552293*****

ue :ON: String

gatewayId :00000001: String

6e1619bd-a048-4c64-9efb-306e9f2b88d6[124]

residence :38: String

value :ON: String

gatewayId :00000001: String

- 107 -

Page 117: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

・・・・・省略

6e1619bd-a048-4c64-9efb-306e9f2b88d6[247]

residence :30: String

val

*****CUT_94_19131119552293***** ...3(分割出力されたログの継続部分の末尾)

~~~ 他のイベントのログ ~~~

2011-12-07 14:01:13,720 [DEBUG] ...4(分割出力されたログの最後の部分の先頭)

*****CUT_94_19131119552293*****

ue :ON: String

gatewayId :00000001: String

6e1619bd-a048-4c64-9efb-306e9f2b88d6[248]

residence :38: String

value :ON: String

gatewayId :00000001: String ...5(分割出力されたログの最後の部分の末尾)

~~~ 他のイベントのログ ~~~

[出力例の説明]

1. 分割出力されたログの 初の部分の末尾です。識別子(*****CUT_94_19131119552293*****)を確認します。

2. 分割出力されたログの次の先頭です。同じ識別子(*****CUT_94_19131119552293*****)で開始しています。

3. 分割出力されたログの次の末尾です。同じ識別子で分割されています。

4. 同様に 後の部分まで同じ識別子で分割されています。

5. 分割出力されたログの 後の部分の末尾には、識別子がありません。

5.9.3 起動

配備したユーザー開発Webサービス、定義情報を配備したCEPエンジンを起動します。

CEPエンジンの起動と合わせて、構文エラーの確認も行います。

起動作業の手順は以下の通りです。

1. ユーザー開発Webサービスの状態を確認

2. CEPエンジンの起動

3. フィルタールールの構文エラーの確認

4. 複合イベント処理ルールの構文エラーの確認

5.9.3.1 ユーザー開発Webサービスの状態を確認

ユーザー開発Webサービスを配備したアプリケーションサーバが起動していなければ起動します。起動後、配備したユーザー開発Webサービスが、外部からのリクエストを受け付ける状態になっているか確認してください。

アプリケーションサーバの起動方法および、Webサービスの状態確認方法については、お使いのアプリケーションサーバのマニュアル

を参照してください。

5.9.3.2 CEPエンジンの起動

開発資産の配備後、cepstartengコマンドを使い、CEPエンジンを起動します。

開発資産の配備については「5.8 開発資産の配備」を参照してください。

cepstartengコマンドの詳細については、「8.9 cepstarteng」を参照してください。

- 108 -

Page 118: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

注意

RDB連携、Terracotta連携を行う場合は、CEPエンジンの起動の前に各連携先のサーバが起動していることを確認してください。

cepstartengコマンドの実行例

$ cepstarteng -e CepEngine<ENTER>

Command cepstarteng executed successfully.

5.9.3.3 フィルタールールの構文エラーの確認

ルール定義中のフィルタールールに構文の誤りがある場合、CEPエンジンの起動に失敗します。このとき、高速フィルターのエンジン

ログに、エラーとなった原因が通知されます。通知内容を参考に、構文の誤りを修正してください。

修正したルール定義はCEPエンジンに再配備します。再配備については「6.1.3.3 配備済み定義情報の更新」を参照してください。ルー

ルの再配備後、「5.9.3.2 CEPエンジンの起動」から再度操作してください。

5.9.3.4 複合イベント処理ルールの構文エラーの確認

ルール定義中の複合イベント処理文に構文の誤りがある場合、CEPエンジンの起動がcep20201eのエラーで失敗します。

この時、複合イベント処理のエンジンログにエラーとなった原因が、cep20201eのERRORINFOパラメーター中のエラーメッセージで通

知されます。

以下にERRORINFOパラメーター中のエラーメッセージ例を示します。この内容を参考に、構文の誤りを修正してください。

Incorrect syntax near ○○○○○○○○ at line ▲ column ■

○○○○○○○○: 異常が発生した近辺にあるキーワード

▲: エラーが発生した複合イベント処理文の先頭からの行数

■: エラーが発生した複合イベント処理文の行の先頭からの文字数

修正したルール定義はCEPエンジンに再配備します。再配備については「6.1.3.3 配備済み定義情報の更新」を参照してください。ルー

ルの再配備後、「5.9.3.2 CEPエンジンの起動」から再度操作してください。

注意

エラーメッセージの内容によっては、エラー発生箇所(行数や文字数)が表示されない場合もあります。

複合イベント処理文の構文エラーのログ出力例

対象となる複合イベント処理文

@Name('EPL3')

@DebugLogListener

select * from FilteredCouponEvent (storeID='STR0001') wherer cast(targetAge,int)>20;

ログ出力(見やすさのため、以下の例では途中で改行を入れています(1~5行目)。実際には一行で出力されます。)

2012-07-15 13:51:18,843 [ERROR] CSPF_CEP: ERROR: cep20201e: EPL module file access failure. EngineId=Ce

pEngine, FILE=/etc/opt/FJSVcep/resources/CepEngine/rules/SampleRule.epl, ERRORINFO=com.espertech.esper.

client.deploy.DeploymentActionException: Compilation failed in module url '/etc/opt/FJSVcep/resources/C

epEngine/rules/SampleRule.epl' in expression '@Name('EPL3')@DebugLogListenerselect * from Filt...(115 c

hars)' : Incorrect syntax near 'cast' (a reserved keyword) at line 3 column 61, please check the from c

- 109 -

Page 119: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

lause [@Name('EPL3')

@DebugLogListener

select * from FilteredCouponEvent (storeID='STR0001') wherer cast(targetAge,int)>20]

[ログ出力の説明]

・ ERRORINFO=...

このERRORINFOパラメーター以降にエラー情報が出力されます。

・ Compilation failed...

エラーの大分類です。Compilation failed または、Deployment failedが出力されます。

・ SampleRule

エラーが発生したルール定義の開発資産IDです。

・ Incorrect syntax...

エラーメッセージです。エラーが発生した複合イベント処理文の先頭から3行目、61文字目の cast の近くに構文エラーがあることを

示しています。

・ @Name('EPL3')...

エラーが発生した複合イベント処理文です。この例の場合、cast の前の wherer は、本来 where であり、“r”が1つ余計についてい

るため構文エラーとなります。

5.9.4 結合テスト

結合テスト作業の流れは以下の通りです。

1. テスト用イベントデータの送信

2. フィルタールールの動作確認

3. 複合イベント処理ルールの動作確認

4. ユーザー開発Webサービスの動作確認

5. ユーザー開発Javaクラスの動作確認

6. イベントログの確認

7. イベントログ分析アプリケーションの動作確認

5.9.4.1 テスト用イベントデータの送信

CEPエンジンに対して、テスト用イベントデータを送信します。

配備済みのイベント送信アプリケーション、もしくはサンプルに付属のイベント送信サンプルプログラムを実行します。

イベント送信後、エンジンログを確認して、期待通りに動作しているか確認します。

イベント送信サンプルプログラムの詳細な利用方法については、「5.11.6 イベント送信サンプルプログラム」を参照してください。

テスト用イベントデータの送信

イベントタイプEVENT01のイベントデータとして、CSV形式のテスト用データ /application/test.csv を、CEPエンジン CepEngine に送信

する例です。

$ /opt/FJSVcep/sample/sample1/bin/sendevent.sh EVENT01 /application/test.csv<ENTER>

- 110 -

Page 120: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

5.9.4.2 フィルタールールの動作確認

高速フィルターのエンジンログに、エラーが通知されていないか確認します。エラーが通知されていた場合は、通知内容を参考に、問

題を修正してください。

エラー以外では、ロギング種別を"file"にしたロギング機能を利用している場合、入力イベント(イベントタイプ定義でロギングを有効に

したもの)の内容がエンジンログに記録されることを確認します。

5.9.4.3 複合イベント処理ルールの動作確認

複合イベント処理のエンジンログに、エラーが出力されていないか確認します。エラーが通知されていた場合は、通知内容を参考に、

問題を修正してください。

エラー以外では、複合イベント処理ルールの動作確認を、複合イベント処理文に記述したDebugLogListenerアノテーションによって出

力されるエンジンログの内容を確認することで行います。

DebugLogListenerアノテーションが記述された複合イベント処理ルールの条件にヒットした場合に、出力イベントのプロパティ値がログ

に出力されます。

また、ロギング種別を"file"にしたロギング機能を利用している場合、LoggingListenerアノテーションによって出力される内容がエンジン

ログに記録されることを確認します。

注意

複合イベント処理ルールの動作結果に関する留意点です。

・ ルールの動作結果確認が終了したら、運用環境に配備する前にルール定義を編集して、DebugLogListenerアノテーションをルー

ル定義から削除してください。

・ テスト中にルール定義を修正して置き換える場合は、CEPエンジンを停止させ、ルール定義を再配備してから、再度CEPエンジン

の起動を行ってください。

・ CEPエンジンを停止させると、停止前のルールで生成されたウィンドウのデータは消えてしまいます。

DebugLogListenerのログ出力例

DebugLogListenerアノテーションによるエンジンログ出力の例を示します。以下の複合イベント処理文での実行結果になります。

使用する複合イベント処理文

@Name('EPL3')

@DebugLogListener

@LoggingListener(table='/EPL3', properties='areaID, couponID')

@SoapListener('LISTEN01')

select areaID, targetAge, storeID, couponID

from FilteredCouponEvent (storeID='STR0001') where cast(targetAge,int)>20;

DebugLogListenerのログ出力例

2012-07-15 14:21:11,854 [DEBUG] EPL3:length=1 ...1

EPL3[0] ...2

areaID :2222: String ...3

targetAge :30: String

storeID :STR0001: String

couponID :CPN0001: String

[出力例の説明]

1. select文の条件にヒットしたレコード数を表示します。下線部は、@Nameアノテーションで指定した値が表示されます。

2. レコードのインデックスを表示します。下線部は、@Nameアノテーションで指定した値が表示されます。

- 111 -

Page 121: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

3. この行以降、出力イベントのプロパティと、プロパティの値、およびプロパティの型を表示します。

参考

その他の出力アダプターによるエンジンログ出力例

その他の出力アダプターが出力するエンジンログからもリスナ呼び出しの成功がわかるため、これもデバッグ用情報として利用可能で

す。

SOAPリスナのエンジンログ出力例

SoapListenerアノテーションに関連付けられた複合イベント処理文の条件にヒットした場合に、リスナ呼出し成功がログに出力されます。

(以下の例では見やすさのため途中で改行を入れていますが、実際には一行で出力されます。)

2012-07-15 14:44:42,556 [DEBUG] id=LISTEN01 destination=http://xxx.xxx.xx.xxx/WebServWAR/MyApp1Service

methodName=root<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"><SOAP-ENV:

Header/><SOAP-ENV:Body><ns:root xmlns:ns="http://webservice/"><ns:areaID>2222</ns:areaID><ns:targetAge>

30</ns:targetAge><ns:storeID>STR0001</ns:storeID><ns:couponID>CPN0001</ns:couponID></ns:root></SOAP-ENV

:Body></SOAP-ENV:Envelope>

[出力例の説明]

・ LISTEN01

使用したSOAPリスナ定義の開発資産IDです。

・ http://xxx.xxx.xx.xxx/WebServWAR/MyApp1Service

接続URLです。SOAPリスナ定義の<url>タグに指定した値になります。

・ root

ルート要素名です。SOAPリスナ定義の<method>タグに指定した値になります。

・ root以降

送信したSOAPメッセージです。

ロギングリスナのエンジンログ出力例

LoggingListenerアノテーションに関連付けられた複合イベント処理文の条件にヒットした場合に、ロギング成功がエンジンログに出力さ

れます。

2012-07-26 00:05:18,692 [DEBUG] Write Log message"2222","CPN0001"

ロギング先をエンジンログにした場合(エンジン構成ファイルの<type>にfileを指定した場合)は、複合イベント処理ルールの処理結果

も出力されます。

2012-07-26 00:05:18,692 [DEBUG] TableName:/EPL3; eventdata:"2222","CPN0001"

2012-07-26 00:05:18,692 [DEBUG] Write Log message"2222","CPN0001"

5.9.4.4 ユーザー開発Webサービスの動作確認

ユーザー開発Webサービスの設計、開発を行った場合のみ実施します。

ユーザー開発Webサービスが出力するログなどを元に、動作確認を行います。

5.9.4.5 ユーザー開発Javaクラスの動作確認

ユーザー開発Javaクラスの設計、開発を行った場合のみ実施します。ユーザー開発Javaクラスが出力するカスタムログなどを元に、動

作確認を行います。カスタムログの出力先は次の通りです。

- 112 -

Page 122: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

/var/opt/FJSVcep/cep/cep/logs/EngineLog/CEPエンジン名/custom.log

5.9.4.6 イベントログの確認

Hadoop連携でロギングを行う設定にした場合は、Hadoopシステム内にイベントログが記録されているか確認します。

5.9.4.7 イベントログ分析アプリケーションの動作確認

イベントログ分析アプリケーションの設計、開発を行った場合のみ実施します。

記録されたイベントログを使用して、イベントログ分析アプリケーションの動作確認を行います。

5.9.5 停止

配備したイベント送信アプリケーションと定義情報を配備したCEPエンジンを停止します。

5.9.5.1 イベント送信アプリケーションの停止

イベント送信アプリケーションがイベントの送信を続けている場合、イベント送信アプリケーションを停止させます。

5.9.5.2 CEPエンジンの停止

CEPエンジンの停止を行います。CEPエンジンを停止するには、cepstopengコマンドを使用します。

cepstopengコマンドの詳細については「8.11 cepstopeng」を参照してください。

コマンド実行例

CEPエンジン(CepEngine)を停止する場合のコマンド実行例です。

$ cepstopeng -e CepEngine<ENTER>

Command cepstopeng executed successfully.

5.9.6 開発資産の修正

確認した動作結果に問題がある場合、開発資産の修正を行います。

修正後は開発資産の配備解除、再配備を行い、結合テストを再実施します。

ポイント

定義情報の上書き更新

定義情報の内容の一部修正だけ行う場合は、cepdeployrscコマンドの「-o」オプションを使用することで、定義情報を上書きで更新(再

配備)できます。

5.10 開発資産の配備解除

不要になった開発資産を配備解除します。

5.10.1 定義情報の配備解除

不要になった定義情報の配備解除では、cepundeployrscコマンドを実行します。

cepundeployrscコマンドの詳細については「8.13 cepundeployrsc」を参照してください。

以下に、配備解除の例を示します。

- 113 -

Page 123: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

注意

cepundeployrsc実行時の注意

CEPエンジンの動作中に定義情報の配備解除はできません。

定義情報の配備解除の例

CEPエンジン CepEngine に配備された、以下の定義情報を配備解除する場合のコマンド実行例です。

定義情報の種類 開発資産ID

イベントタイプ定義 EVENT01

ルール定義 RULE01

マスタ定義 MASTER01

RDB参照定義 RDBREF01

SOAPリスナ定義 LISTENER01

コマンド実行例は以下の通りです。

$ cepundeployrsc eventtype -e CepEngine -n EVENT01<ENTER>

Are you sure you want to undeploy the event type definition?(default: y) [y,n,q]:<ENTER>

Command cepundeployrsc executed successfully.

$ cepundeployrsc rule -e CepEngine -n RULE01<ENTER>

(省略)

$ cepundeployrsc master -e CepEngine -n MASTER01<ENTER>

(省略)

$ cepundeployrsc rdb_ref -e CepEngine -n RDBREF01<ENTER>

(省略)

$ cepundeployrsc listener -e CepEngine -n LISTENER01<ENTER>

(省略)

5.10.2 連携アプリケーションの配備解除

不要になった連携アプリケーションの配備解除を行います。

イベント送信アプリケーション

配備解除の方法は、送信元システムでのアプリケーションの配備解除の方法に従います。

イベント送信アプリケーションとして、イベント送信サンプルプログラムを使用している場合は、作業不要です。

ユーザー開発Javaクラス

配備先であるディレクトリから、ユーザー開発Javaクラスのclassファイル、jarファイルを手動で削除します。

ユーザー開発Webサービス

アプリケーションサーバから配備解除します。配備解除の方法は、使用するアプリケーションサーバのマニュアルに従います。

イベントログ分析アプリケーション

Hadoopシステムから配備解除します。配備解除の方法は、Interstage Big Data Parallel Processing Serverのマニュアルに従います。

Terracottaアプリケーション

Terracottaサーバから削除します。削除方法は、Interstage Terracotta BigMemory Maxのマニュアルに従います。

- 114 -

Page 124: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

5.10.3 データの削除

不要になったデータの削除を行います。

イベントデータ(テスト用)

テスト用のイベントデータを、イベント送信元システムから削除します。

イベント送信アプリケーションとして、イベント送信サンプルプログラムを利用する場合は、CEPサーバに格納したテスト用のイベン

トデータを削除します。

ロギング格納先

ロギング格納先となるディレクトリを削除します。

ディレクトリ配下のデータが必要な場合は、データを別の場所に保管してから削除を行います。

マスタデータ

マスタ定義で指定したパスに格納された、マスタデータを削除します。

Terracottaのキャッシュ

Terracottaのキャッシュの削除方法については、Terracottaのマニュアルを参照してください。

RDB

RDBのデータベースの削除方法については、連携先RDBのマニュアルを参照してください。

5.11 サンプルアプリケーション

製品付属のサンプルアプリケーションについて説明します。

5.11.1 サンプルアプリケーションの概要

本サンプルは「位置情報をもとにした限定クーポン配信サービス」を想定したアプリケーションです。

このサービスにおける、CEPエンジンが処理する部分の定義情報と、ルールから使用するマスタデータで構成されます。さらにアプリ

ケーションの動作確認用に、サンプルイベントデータと、イベント送信サンプルプログラムが付属しています。

サンプルが想定するクーポン配信サービスの概要は以下の通りです。

登場人物

サービスの登場人物は以下の通りです。

・ クーポン配信サービス

・ サービスの登録会員

・ サービスの登録店舗

クーポン配信サービスの概要

想定するサービスの一連の処理の流れは以下のようになります。

・ 登録会員のスマートフォンから、定期的に会員の位置情報がサービスに送られます。

・ 登録店舗からは、時間限定のクーポン発行依頼がサービスに送られます。

・ サービスはクーポン発行依頼を受け取ると、店舗の近隣で歩行中の会員に対して、時間限定のクーポンを発行します。

サンプルでは、実際の登録会員、登録店舗からイベントを送信する代わりに、イベント送信サンプルプログラムを利用して、サンプルの

イベントデータを送信し、CEPエンジンのエンジンログで動作を確認します。

データの種類

サービスで扱うデータです。

- 115 -

Page 125: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

・ イベントデータ

- 位置情報(位置情報イベント)

会員ID、会員が現在いるエリアのID、会員の状態(歩行中、電車で移動中など)の情報が含まれます。

- クーポン発行依頼(クーポン発行イベント)

店舗のID、クーポンのID、配信対象とする年代の情報が含まれます。

・ マスタデータ

- 会員情報(会員マスタデータ)

会員のID、会員の年代といった情報が含まれます。

- 店舗情報(店舗マスタデータ)

店舗のID、店舗の存在するエリアのIDといった情報が含まれます。

5.11.2 サンプルの構成

本サンプルの開発資産(提供物)の構成は次のようになります。

開発資産種別 開発資産 提供物

定義ファイル イベントタイプ定義 位置情報イベント定義

クーポンイベント定義

ルール定義 サンプルルール定義

イベントタイプ定義(フィルター済み

イベント)

フィルター処理後の位置情報イベント定義

フィルター処理後のクーポンイベント定義

マスタ定義 会員マスタ定義

店舗マスタ定義

データ マスタデータ(CSVファイル) 会員マスタデータ

店舗マスタデータ

イベントデータ 位置情報イベントのサンプルデータ

クーポンイベントのサンプルデータ

連携アプリケーション イベント送信アプリケーション イベント送信サンプルプログラム

(バイナリおよびソースコード)

サンプルの動作イメージは以下のようになります。

- 116 -

Page 126: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

図5.7 サンプルの動作イメージ

5.11.3 イベント

5.11.3.1 位置情報イベント

登録会員から送信される想定のイベントです。以下はイベントタイプ定義の内容です。

識別子

(開発資産ID)形式 カラム情報

カラム名 内容

LocationEvent CSV memberID 会員IDです。サンプルデータでは、“MEM”+数字4桁の形式で

す。

areaID 会員が現在いる地域の地域コードです。サンプルデータでは数

字4桁の形式です。

status 会員の現在の状態です。(歩行中:”1”、電車で移動中:”2”)

5.11.3.2 クーポンイベント

登録店舗から送信される想定のイベントです。以下はイベントタイプ定義の内容です。

識別子

(開発資産ID)形式 カラム情報

カラム名 内容

CouponEvent CSV storeID 店舗IDです。サンプルデータでは“STR”+数字4桁の形式です。

couponID クーポンのIDです。サンプルデータでは“CPN”+数字4桁の形式

です。

targetAge 配信対象とする年代です。

(10代:”10”、20代:”20”、30代:”30”、40代:”40”、50代:”50”、

60代以上:”60”)

- 117 -

Page 127: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

5.11.3.3 フィルター処理後の位置情報イベント

位置情報イベントに対するフィルタールールは、以下の処理を行います。

・ status情報により歩行中のイベントだけを抽出します。

・ areaID情報と店舗マスタの情報から、登録店舗が存在するエリアのイベントだけを抽出します。

・ クーポンイベントとの複合イベント処理のため、会員の年代情報を会員情報マスタから結合します。

・ status情報はフィルター処理で使用された後は使わないため、出力しません。

この処理により、イベントタイプ定義は以下の内容になります。

識別子

(開発資産ID)形式 カラム情報

カラム名 内容

FilteredLocationEvent CSV memberID 会員IDです。

areaID 会員が現在いる地域の地域コードです。

age 会員の年代です。

(10代:”10”、20代:”20”、30代:”30”、40代:”40”、50代:”

50”、60代以上:”60”)

5.11.3.4 フィルター処理後のクーポンイベント

クーポンイベントに対するフィルタールールは、以下の処理を行います。

・ 位置情報イベントとの複合イベント処理のため、店舗のエリアコードを店舗情報マスタから結合します。

この処理により、イベントタイプ定義は以下の内容になります。

識別子

(開発資産ID)形式 カラム情報

カラム名 内容

FilteredCouponEvent CSV storeID 店舗IDです。

couponID クーポンのIDです。

targetAge 配信対象とする年代です。

(10代:”10”、20代:”20”、30代:”30”、40代:”40”、50代:”

50”、60代以上:”60”)

areaID 店舗所在地の地域コードです。

5.11.4 マスタ情報

本サンプルで使用するマスタデータについて説明します。

5.11.4.1 会員情報マスタ

登録会員のマスタデータです。会員IDおよび会員の年代のデータを格納します。

マスタ定義の内容は以下の通りです。

識別子

(開発資産ID)カラム情報

カラム名 内容

MemberInfo ID 会員IDです。

age 会員の年代です。

(10代:”10”、20代:”20”、30代:”30”、40代:”40”、50代:”50”、60代以

上:”60”)

- 118 -

Page 128: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

5.11.4.2 店舗情報マスタ

登録店舗のマスタデータです。店舗IDおよび店舗が存在する地域のエリアコードを格納します。

マスタ定義の内容は以下の通りです。

識別子

(開発資産ID)カラム情報

カラム名 内容

StoreInfo ID 店舗IDです。

areaID 店舗所在地の地域コードです。

5.11.5 ルール定義

2種類のイベントを処理するルール定義です。フィルタールールと複合イベント処理ルールから構成されます。

5.11.5.1 フィルタールール(IF-THEN型ルール)

2種類のイベントに対するフィルタールールです。

1

2

3

4

5

6

7

8

9

10

on LocationEvent {

if ($status == "1" AND lookup("StoreInfo", $areaID == $areaID) = true()) then

join("MemberInfo", $memberID==$ID)

output($memberID, $areaID, "MemberInfo".$age) as FilteredLocationEvent;

}

on CouponEvent {

join("StoreInfo", $storeID == $ID)

output($storeID, $couponID, $targetAge, "StoreInfo".$areaID) as FilteredCouponEvent;

}

以下は各行の説明です。

・ 1行目

位置情報イベント(LocationEvent)に対するフィルタールールです。

・ 2行目

検索式において、歩行中(statusが”1”)でエリアに登録された店舗が存在する(店舗マスタStoreInfoの中にareaIDが等しいものが

ある)イベントのみを抽出します。「$areaID == $areaID」の左辺は入力イベントのareaID、右辺はマスタデータのareaIDになります。

・ 3行目

入力イベントに会員マスタの情報を付与するため、会員マスタMemberInfoのデータで会員IDが等しいものを結合処理します。

・ 4行目

入力イベントに存在する会員ID、エリアIDに加え、会員マスタの年代情報をFilteredLocationEventとして出力します。

・ 7行目

クーポンイベント(CouponEvent)に対するフィルタールールです。

・ 8行目

店舗マスタStoreInfoのデータで店舗IDが等しいものを結合処理します。

・ 9行目

入力イベントに存在する店舗ID、クーポンID、対象年代に加え、店舗マスタのエリアIDをFilteredCouponEventとして出力します。

5.11.5.2 複合イベント処理ルール(SQL型ルール)

フィルタールールで処理された、2種類のイベントに対する複合イベント処理ルールです。

- 119 -

Page 129: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

create window outEventWin.std:firstunique(memberID,couponID).win:time(3 min)

as (memberID string, storeID string, couponID string);

@Name('EPL1')

insert into outEventWin

select loc.memberID as memberID,cpn.storeID as storeID,cpn.couponID as couponID

from FilteredLocationEvent as loc unidirectional

inner join FilteredCouponEvent.win:time(3 min) as cpn

on loc.areaID=cpn.areaID and loc.age=cpn.targetAge;

@Name('EPL2')

@DebugLogListener

select * from outEventWin;

@Name('filterOut1')

@DebugLogListener

select * from FilteredLocationEvent;

@Name('filterOut2')

@DebugLogListener

select * from FilteredCouponEvent;

以下は各行の説明です。

・ 1行目

出力イベントを一定期間保持しておき、同じ人に同じクーポンを送らないようにするための名前付きウィンドウを作成する複合イベ

ント処理文です。会員IDとクーポンIDのペアに対して1つずつ 初の出力イベントを保持します。一定時間(想定では30分です

が、サンプルでは3分)経過後にウィンドウから削除されます。

・ 2行目

名前付きウィンドウに保持するイベントの形式を定義しています。

・ 4行目

主処理を行う複合イベント処理文を定義します。その名前とEPL1としています。

・ 5行目

主処理の出力を名前付きウィンドウに挿入します。

・ 6行目

主処理の結果として、位置情報イベントの会員ID、クーポンイベントの店舗IDとクーポンIDを出力します。

・ 7行目

主処理の入力の1つはFilteredLocationEventに対するものです。unidirectionalの指定により、このイベントの受信を契機にこの処

理が動作します(FilteredCouponEventは契機とならない)。

・ 8行目

主処理のもう1つの入力はFilteredCouponEventです。このイベントは一定時間(想定では30分ですが、サンプルでは3分)だけメモ

リ中に保持され、FilteredLocationEventに結合されます。

・ 9行目

FilteredLocationEventとFilteredCouponEventの結合の条件はareaIDが等しく、age(targetAge)が等しいことです。

・ 11行目

EPL1(5行目~)の処理結果を出力するための複合イベント処理文です。名前をEPL2としています。

・ 12行目

デバッグログリスナを付与することによって、出力イベントがエンジンログに出力されます。

- 120 -

Page 130: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

・ 13行目

名前付きウィンドウに新たに登録されたイベントだけが出力されます。名前付きウィンドウに複数の同一イベントが挿入されても

(create windowでの)std:firstunique指定により実際に登録されるのは 初のイベントだけとなります。

・ 15~17行目

フィルター処理後の位置情報イベント(FilteredLocationEvent)をデバッグログ出力するための複合イベント処理文です。フィルター

処理の確認を行うためのものであり、削除しても構いません。

・ 19~21行目

フィルター処理後のクーポンイベント(FilteredCouponEvent)をデバッグログ出力するための複合イベント処理文です。フィルター

処理の確認を行うためのものであり、削除しても構いません。

5.11.6 イベント送信サンプルプログラム

CSV形式のテスト用イベントデータをHTTPアダプターに送信する、イベント送信アプリケーションです。

実行形式

プログラムの実行形式は以下の通りです。

/opt/FJSVcep/sample/sample1/bin/sendevent.sh イベントタイプ データファイルのパス [ 送信先URL ]

引数

イベントタイプ

データをどのイベントタイプとして送信するかを指定します。

対象となるイベントタイプの開発資産IDを指定します。

データファイル

イベントデータを含むCSV形式のファイルのパスを指定します。

送信先URL

HTTPアダプターのエンドポイントアドレスを指定します。

省略時は、http://localhost/CepEngineFrontServerService/HttpReceiverとなります。

参考

CEPエンジンのエンドポイントアドレス

CEPエンジンの送信先URLは以下の通りです。

http://CEPエンジンのアドレス/CEPエンジン名FrontServerService/HttpReceiver

CEPサーバ cephost.example.com の、CEPエンジンCepEngineの送信先URLは以下の通りです。

http://cephost.example.com/CepEngineFrontServerService/HttpReceiver

ソースコード

イベント送信サンプルプログラムのソースコードです。

/opt/FJSVcep/sample/sample1/src/HttpClient.java

1

2

3

4

5

6

package sample;

import java.io.BufferedOutputStream;

import java.io.BufferedReader;

import java.io.FileInputStream;

import java.io.InputStreamReader;

- 121 -

Page 131: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

import java.net.HttpURLConnection;

import java.net.URL;

public class HttpClient {

static String DEFAULT_URL = "http://localhost/CepEngineFrontServerService/HttpReceiver";

public static void main(String[] args) {

if (args.length != 2 && args.length != 3) {

System.err.println("Requires two or three arguments: event-type, file name, [URL]");

System.exit(1);

}

String eventType = args[0];

String fileName = args[1];

String url = DEFAULT_URL;

if (args.length == 3) {

url = args[2];

}

try {

BufferedReader br0 =

new BufferedReader(new InputStreamReader(new FileInputStream(fileName)));

String str;

while ((str = br0.readLine()) != null) {

URL TestURL = new URL(url);

HttpURLConnection con = (HttpURLConnection) TestURL.openConnection();

con.setRequestMethod("POST");

con.setRequestProperty("TYPE", "CSV");

con.setRequestProperty("EVENT-TYPE-ID", eventType);

con.setRequestProperty("Content-Type", "text/plain; charset=utf-8");

con.setDoOutput(true);

BufferedOutputStream bos = new BufferedOutputStream(con.getOutputStream());

bos.write(str.getBytes("utf-8"));

bos.flush();

bos.close();

BufferedReader br1 = new BufferedReader(new InputStreamReader(con.getInputStream()));

String line;

while ((line = br1.readLine()) != null) {

System.out.println(line);

}

br1.close();

con.disconnect();

}

br0.close();

} catch (Exception e) {

e.printStackTrace();

}

}

}

5.11.7 ディレクトリ構成

本サンプルは、/opt/FJSVcep/sampleに以下の構成で格納されています。

sample1

+-- client.jar イベント送信サンプルプログラムが使用するjarファイル

+-- bin シェルスクリプト用ディレクトリ

- 122 -

Page 132: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

| +-- deployall.sh サンプルの開発資産を全て配備するシェルスクリプト

| +-- undeployall.sh サンプルの開発資産を全て配備解除するシェルスクリプト

| +-- sendevent.sh イベント送信サンプルプログラム

+-- src ソースコード用ディレクトリ

| +-- sample

| +-- HttpClient.java イベント送信サンプルプログラムが使用するjarのソースコード

+-- master マスタデータ用ディレクトリ

| +-- MemberData.csv 会員マスタのサンプルデータ

| +-- MemberDataSchema.csv 会員マスタのスキーマ情報ファイル

| +-- StoreData.csv 店舗マスタのサンプルデータ

| +-- StoreDataSchema.csv 店舗マスタのスキーマ情報ファイル

+-- event イベントデータ用ディレクトリ

| +-- CouponEvent.csv クーポンイベントのサンプルデータ

| +-- LocationEvent.csv 位置情報イベントのサンプルデータ

+-- resources 定義ファイル用ディレクトリ

+-- CouponEvent.xml クーポンイベントのイベントタイプ定義

+-- FilteredCouponEvent.xml フィルター処理後のクーポンイベントのイベントタイプ定義

+-- LocationEvent.xml 位置情報イベントのイベントタイプ定義

+-- FilteredLocationEvent.xml フィルター処理後の位置情報イベントのイベントタイプ定義

+-- MemberInfo.xml 会員マスタのマスタ定義

+-- StoreInfo.xml 店舗マスタのマスタ定義

+-- SampleRule.xml ルール定義

5.11.8 実行方法

サンプルアプリケーションの実行方法について説明します。

以下の作業において、コマンド実行は一般ユーザー権限で行います。

作業は以下の順番で行います。

1. 開発資産の配備

2. CEPエンジンの起動

3. イベントの送信と結果の確認

4. CEPエンジンの停止

5. 開発資産の配備解除

5.11.8.1 開発資産の配備

CEPエンジンが一つだけ配備された状態(例:BDCEPの初期セットアップ完了直後)で、開発資産を配備します。

/opt/FJSVcep/sample/sample1/bin/deployall.shを実行します。

途中、何度か問い合わせが行われますが、全て<ENTER>と入力します。

$ cd /opt/FJSVcep/sample/sample1/bin <ENTER>

$ ./deployall.sh <ENTER>

Are you sure you want to deploy the event type definition?(default: y) [y,n,q]:<ENTER>

Command cepdeployrsc executed successfully.

Are you sure you want to deploy the event type definition?(default: y) [y,n,q]:<ENTER>

Command cepdeployrsc executed successfully.

Are you sure you want to deploy the event type definition?(default: y) [y,n,q]:<ENTER>

Command cepdeployrsc executed successfully.

Are you sure you want to deploy the event type definition?(default: y) [y,n,q]:<ENTER>

Command cepdeployrsc executed successfully.

Are you sure you want to deploy the rule definition?(default: y) [y,n,q]:<ENTER>

Command cepdeployrsc executed successfully.

Are you sure you want to deploy the master data definition?(default: y) [y,n,q]:<ENTER>

Command cepdeployrsc executed successfully.

Are you sure you want to deploy the master data definition?(default: y) [y,n,q]:<ENTER>

Command cepdeployrsc executed successfully.

- 123 -

Page 133: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

このシェルスクリプト内部では以下のコマンドを実行しています。

・ イベントタイプ定義の配備

cepdeployrsc eventtype -f /opt/FJSVcep/sample/sample1/resources/LocationEvent.xml

cepdeployrsc eventtype -f /opt/FJSVcep/sample/sample1/resources/CouponEvent.xml

cepdeployrsc eventtype -f /opt/FJSVcep/sample/sample1/resources/FilteredLocationEvent.xml

cepdeployrsc eventtype -f /opt/FJSVcep/sample/sample1/resources/FilteredCouponEvent.xml

・ マスタ定義の配備

cepdeployrsc master -f /opt/FJSVcep/sample/sample1/resources/MemberInfo.xml

cepdeployrsc master -f /opt/FJSVcep/sample/sample1/resources/StoreInfo.xml

・ ルール定義の配備

cepdeployrsc rule -f /opt/FJSVcep/sample/sample1/resources/SampleRule.xml

5.11.8.2 CEPエンジンの起動

以下のコマンドを実行し、CEPエンジンを起動します。

$ cepstarteng<ENTER>

5.11.8.3 イベントの送信と結果の確認

イベント送信サンプルプログラム(/opt/FJSVcep/sample/sample1/bin/sendevent.sh)を使用してサンプルデータを送信し、エンジンログで

ルールの動作を確認します。

1. 位置情報イベントの送信と結果の確認

$ ./sendevent.sh LocationEvent /opt/FJSVcep/sample/sample1/event/LocationEvent.csv<ENTER>

エンジンログに filterOut1 のイベントが出力されていることを確認します。

出力例

2012-07-09 11:11:57,409 [DEBUG] filterOut1:length=1

filterOut1[0]

areaID :2222: String

age :30: String

memberID :MEM0008: String

2012-07-09 11:11:57,413 [DEBUG] filterOut1:length=1

filterOut1[0]

areaID :2222: String

age :20: String

memberID :MEM0003: String

2. クーポンイベントの送信と結果の確認

$ ./sendevent.sh CouponEvent /opt/FJSVcep/sample/sample1/event/CouponEvent.csv<ENTER>

エンジンログに filterOut2 のイベントが出力されていることを確認します。

出力例

2012-07-09 11:15:38,054 [DEBUG] filterOut2:length=1

filterOut2[0]

areaID :2222: String

targetAge :30: String

storeID :STR0001: String

couponID :CPN0001: String

- 124 -

Page 134: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

3. 位置情報イベントの送信と結果の確認

クーポンイベント送信後3分以内に位置情報イベントを送信します。

$ ./sendevent.sh LocationEvent /opt/FJSVcep/sample/sample1/event/LocationEvent.csv<ENTER>

エンジンログにクーポン発行を示すイベントが出力されていることを確認します。

出力例

2012-07-09 11:17:25,314 [DEBUG] filterOut1:length=1

filterOut1[0]

areaID :2222: String

age :20: String

memberID :MEM0003: String

2012-07-09 11:17:25,321 [DEBUG] filterOut1:length=1

filterOut1[0]

areaID :2222: String

age :30: String

memberID :MEM0008: String

2012-07-09 11:17:25,323 [DEBUG] EPL2:length=1

EPL2[0]

storeID :STR0001: String

memberID :MEM0008: String

couponID :CPN0001: String

4. 位置情報イベントの送信と結果の確認

クーポンイベント送信後3分以内にもう一度位置情報イベントを送信します。

$ ./sendevent.sh LocationEvent /opt/FJSVcep/sample/sample1/event/LocationEvent.csv<ENTER>

エンジンログにクーポン発行を示すイベントが二重に出力されていないことを確認します。

出力例

2012-07-09 11:18:00,691 [DEBUG] filterOut1:length=1

filterOut1[0]

areaID :2222: String

age :20: String

memberID :MEM0003: String

2012-07-09 11:18:00,691 [DEBUG] filterOut1:length=1

filterOut1[0]

areaID :2222: String

age :30: String

memberID :MEM0008: String

5.11.8.4 CEPエンジンの停止

以下のコマンドを実行し、CEPエンジンを停止します。

$ cepstopeng<ENTER>

5.11.8.5 開発資産の配備解除

/opt/FJSVcep/sample/sample1/bin/undeployall.sh を実行して、一括で配備解除を行います。

途中、何度か問い合わせが行われますが、全て<ENTER>と入力します。

$ ./undeployall.sh<ENTER>

Are you sure you want to undeploy the event type definition?(default: y) [y,n,q]:<ENTER>

Command cepundeployrsc executed successfully.

- 125 -

Page 135: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

Are you sure you want to undeploy the event type definition?(default: y) [y,n,q]:<ENTER>

Command cepundeployrsc executed successfully.

Are you sure you want to undeploy the event type definition?(default: y) [y,n,q]:<ENTER>

Command cepundeployrsc executed successfully.

Are you sure you want to undeploy the event type definition?(default: y) [y,n,q]:<ENTER>

Command cepundeployrsc executed successfully.

Are you sure you want to undeploy the rule definition?(default: y) [y,n,q]:<ENTER>

Command cepundeployrsc executed successfully.

Are you sure you want to undeploy the master data definition?(default: y) [y,n,q]:<ENTER>

Command cepundeployrsc executed successfully.

Are you sure you want to undeploy the master data definition?(default: y) [y,n,q]:<ENTER>

Command cepundeployrsc executed successfully.

- 126 -

Page 136: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

第6章 運用保守

本章では、CEPサーバの運用について説明します。

Interstage Big Data Complex Event Processing Server (以降、BDCEP)を高信頼な構成で運用する場合は、「7.2.4 クラスタサービスの

運用」も合わせて参照してください。

6.1 CEPサーバの運用

CEPサーバを運用するために必要な手順を説明します。

6.1.1 連携システムの起動

Terracotta連携、RDB連携、Hadoop連携を行う場合は、それぞれ連携するシステムを先に起動します。

各システムの起動方法については、対象製品のマニュアルを参照してください。

6.1.2 CEPサービスの起動

cepstartservコマンドを使い、CEPサービスを起動します。

cepstartservコマンドの詳細については、「8.10 cepstartserv」を参照してください。

- 127 -

Page 137: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

本コマンドはスーパーユーザーで実行してください。

参考

・ CEPサービスは、以下の複数のサービスから構成されています。cepstartservコマンドはこれらのサービスを一括で起動します。

- Interstage Java EE DAS サービス

- Interstage Java EE Node Agent サービス

- Interstage 管理コンソール

- Interstage HTTP Server

- PostgreSQL

- Apache Tomcat

注意

CEPサービス、CEPエンジンの自動起動について

・ OS起動時に、CEPサービスは自動起動します。前回OSシャットダウン時に起動していたCEPエンジンも自動起動します。

・ cepstopengコマンドまたはcepstopservコマンドを使用してCEPエンジンを停止させた状態でOSを再起動した場合、OS起動時にCEPエンジンの自動起動は行われません。CEPエンジンを起動するには、再度cepstartengコマンドを実行してください。

サービスの起動例

cepstartservコマンドによるCEPサービス起動の出力例です。

# cepstartserv <ENTER>

(途中省略)

Interstage Java EE DAS started

(途中省略)

Interstage Java EE Node Agent started

(途中省略)

UX:ismngconsolestart: INFO: is40041: The service has been activated normally.

(途中省略)

UX:IHS: INFO: ihs01000: The command terminated normally.

(途中省略)

LOG: database system is ready to accept connections

(途中省略)

Starting Tomcat: [ OK ]

Command cepstartserv executed successfully.

6.1.3 定義情報の配備および解除

CEPサーバ内にあらかじめ格納された定義情報の配備や、不要な定義情報の解除について説明します。

6.1.3.1 定義情報の配備

CEPサーバにあらかじめ格納した定義情報を配備します。配備は、cepdeployrscコマンドで行います。

cepdeployrscコマンドの詳細については、「8.3 cepdeployrsc」を参照してください。

本コマンドは一般ユーザー権限で実行できます。定義情報の配備は、CEPエンジンが停止している状態で行います。

- 128 -

Page 138: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

CEPエンジンの停止が必要な場合は、「6.1.6 CEPエンジンの停止」を参照してください。

定義情報の配備の例

CEPエンジン CepEngine に、以下の定義情報(定義ファイル)を配備する場合のコマンド実行例です。

/application

+-- EVENT01.xml ... イベントタイプ定義 (開発資産ID: EVENT01)

+-- RULE01.xml ... ルール定義 (開発資産ID: RULE01)

+-- MASTER01.xml ... マスタ定義 (開発資産ID: MASTER01)

+-- RDBREF01.xml ... RDB参照定義 (開発資産ID: RDBREF01)

+-- LISTENER01.xml ... SOAPリスナ定義 (開発資産ID: LISTENER01)

コマンド実行例は以下の通りです。

$ cepdeployrsc eventtype -e CepEngine -f /application/EVENT01.xml <ENTER>

Are you sure you want to deploy the event type definition?(default: y) [y,n,q]: <ENTER>

Command cepdeployrsc executed successfully.

$ cepdeployrsc rule -e CepEngine -f /application/RULE01.xml <ENTER>

(省略)

$ cepdeployrsc master -e CepEngine -f /application/MASTER01.xml <ENTER>

(省略)

$ cepdeployrsc rdb_ref -e CepEngine -f /application/RDBREF01.xml <ENTER>

(省略)

$ cepdeployrsc listener -e CepEngine -f /application/LISTENER01.xml <ENTER>

(省略)

6.1.3.2 配備済み定義情報の確認

配備済みの定義情報の確認は、cepdispengコマンドと、cepgetrscコマンドの組み合わせで行います。

cepdispengコマンドに「-i」オプションをつけて実行することで、CEPエンジンに配備済みの定義情報の一覧を確認できます。また、

cepgetrscコマンドで配備済み定義情報の詳細な内容を確認できます。

cepdispengコマンド、cepgetrscコマンドの詳細については、それぞれ「8.4 cepdispeng」「8.7 cepgetrsc」を参照してください。

本コマンドは一般ユーザー権限で実行できます。定義情報の確認は、CEPエンジンの停止、起動にかかわらず行うことができます。

配備済み定義情報の一覧を確認する例

CEPエンジン CepEngine に配備された定義情報の一覧を確認する場合のコマンド実行例です。

$ cepdispeng -i -e CepEngine <ENTER>

engineId :CepEngine

eventtype :EVENT01

rule :RULE01

master :MASTER01

rdb_ref :RDBREF01

listener :LISTENER01

Command cepdispeng executed successfully.

配備済み定義情報の内容を確認する例

CEPエンジン CepEngine に配備された、イベントタイプ定義 EVENT01 の内容を確認する場合のコマンド実行例です。

$ cepgetrsc eventtype -e CepEngine -n EVENT01 <ENTER>

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<eventType xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="EVENT01">

<comment>イベントタイプ定義</comment>

- 129 -

Page 139: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

<type>CSV</type>

<xmlSchema></xmlSchema>

<csvColumn>

<column name="memberID" type="string"/>

<column name="areaID" type="string"/>

<column name="status" type="string"/>

</csvColumn>

<root></root>

<useLogging>false</useLogging>

<loggingTableName></loggingTableName>

<useCep>true</useCep>

</eventType>

Command cepgetrsc executed successfully.

注意

・ 詳細表示の結果(XML形式)を流用する場合は、各項目を適宜修正してください。

・ cepgetrscコマンドの結果には、XML形式のデータ以外の出力メッセージが含まれます。コマンド結果をファイルにリダイレクトして

流用する場合は、不要なメッセージを削除して利用してください。

6.1.3.3 配備済み定義情報の更新

配備済みの定義情報は、cepdeployrscコマンドの「-o」オプションを利用することで更新が可能です。

cepdeployrscコマンドの詳細については、「8.3 cepdeployrsc」を参照してください。

本コマンドは一般ユーザー権限で実行できます。定義情報の更新は、CEPエンジンが停止している状態で行います。

CEPエンジンの停止が必要な場合は、「6.1.6 CEPエンジンの停止」を参照してください。

CEPエンジンが起動している状態でルール定義、マスタデータの更新が必要な場合は、「6.1.5.5 ルール定義、マスタデータの動的変

更」を参照してください。

配備済み定義情報の更新例

CEPエンジン CepEngine のイベントタイプ定義 EVENT01を、新しい内容で更新する場合の実行例です。

新しい内容のイベントタイプ定義(開発資産ID: EVENT01)のパスは以下の通りです。

/application/EVENT01_new.xml

コマンド実行例は以下の通りです。

$ cepdeployrsc eventtype -o -e CepEngine -f /application/EVENT01_new.xml <ENTER>

Are you sure you want to deploy the event type definition?(default: y) [y,n,q]: <ENTER>

Command cepdeployrsc executed successfully.

6.1.3.4 定義情報の配備解除

不要になった定義情報の配備解除は、cepundeployrscコマンドで行います。

cepundeployrscコマンドの詳細については、「8.13 cepundeployrsc」を参照してください。

本コマンドは一般ユーザー権限で実行できます。定義情報の解除は、CEPエンジンが停止している状態で行います。

CEPエンジンの停止が必要な場合は、「6.1.6 CEPエンジンの停止」を参照してください。

- 130 -

Page 140: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

定義情報の配備解除の例

CEPエンジン CepEngine に配備された、以下の定義情報を配備解除する場合のコマンド実行例です。

定義情報の種類 開発資産ID

イベントタイプ定義 EVENT01

ルール定義 RULE01

マスタ定義 MASTER01

RDB参照定義 RDBREF01

SOAPリスナ定義 LISTENER01

コマンド実行例は以下の通りです。

$ cepundeployrsc eventtype -e CepEngine -n EVENT01 <ENTER>

Are you sure you want to undeploy the event type definition?(default: y) [y,n,q]: <ENTER>

Command cepundeployrsc eventtype executed successfully.

$ cepundeployrsc rule -e CepEngine -n RULE01 <ENTER>

(省略)

$ cepundeployrsc master -e CepEngine -n MASTER01 <ENTER>

(省略)

$ cepundeployrsc rdb_ref -e CepEngine -n RDBREF01 <ENTER>

(省略)

$ cepundeployrsc listener -e CepEngine -n LISTENER01 <ENTER>

(省略)

6.1.4 CEPエンジンの起動

cepstartengコマンドを使い、CEPエンジンを起動します。起動はCEPエンジン単位で行います。利用する全てのエンジンを起動してくだ

さい。

cepstartengコマンドの詳細については、「8.9 cepstarteng」を参照してください。

本コマンドは一般ユーザー権限で実行できます。

コマンドを実行した場合の出力例です。

$ cepstarteng -e CepEngine <ENTER>

Command cepstarteng executed successfully.

注意

次の場合、CEPエンジンの起動に失敗します。

・ イベントタイプ定義が1つ以上配備されていない。

・ イベントタイプ定義で指定したXMLスキーマに誤りがある。

・ ルール定義に指定したフィルタールールや複合イベント処理ルールの構文に誤りがある。

- 131 -

Page 141: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

参考

CEPエンジン名の確認方法

セットアップ済みのCEPエンジンの一覧は、cepdispengコマンドで確認できます。

cepdispengコマンドの詳細については、「8.4 cepdispeng」を参照してください。

6.1.5 通常の運用作業

CEPエンジンが起動した後の、以下の運用作業について説明します。

・ CEPサービスの運用状態の表示

・ CEPエンジンの運用状態の表示

・ ログによる異常監視

・ CEPエンジンのリソース利用状況の確認

・ ルール定義、マスタデータの動的変更

6.1.5.1 CEPサービスの運用状態の表示

cepdispservコマンドを使い、CEPサービスの状態を表示します。

運用開始直後や業務のピーク時間帯など、任意のタイミングでCEPサービスが正常に動作しているか確認するために行います。動作

していないサービスがある場合は、cepstartservコマンドを使用してサービスを起動します。

cepdispservコマンドの詳細については、「8.5 cepdispserv」を参照してください。

cepstartservコマンドの詳細については、「8.10 cepstartserv」を参照してください。

本コマンドはスーパーユーザーで実行してください。

cepdispservコマンドによるCEPサービスの運用状態の確認例

cepdispservコマンドを実行して、以下の内容が出力されるか確認します。

nnnnとなっている箇所には、動作しているプロセス番号が表示されます。

CepEngineとなっている箇所には、作成済みのCEPエンジン名が表示されます。

# cepdispserv <ENTER>

(途中省略)

Interstage Java EE DAS started

(途中省略)

Interstage Java EE Node Agent started

(途中省略)

CEPAgentIJServerCluster running

CepEngine_flt not running

CepEngine_cep not running

(途中省略)

Status : Running

(途中省略)

jsvc (pid nnnn nnnn) を実行中...

(途中省略)

pg_ctl: server is running (PID: nnnn)

(途中省略)

Command cepdispserv executed successfully.

- 132 -

Page 142: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

参考

CEPサービスの実体

CEPサービスは複数のプロセスから構成されるサービスです。詳細は「8.5 cepdispserv」を参照してください。

6.1.5.2 CEPエンジンの運用状態の表示

cepdispengコマンドを実行し、CEPエンジンの状態を表示します。

運用開始直後や業務のピーク時間帯など、任意のタイミングでCEPエンジンが正常に動作しているか確認するために行います。異常

状態(ABNORMAL)や、動作中のはずなのに停止状態(STOP)といった場合は、「トラブルシューティング集」の「第5章 運用時の異常」

を参照してください。

cepdispengコマンドの詳細については、「8.4 cepdispeng」を参照してください。

本コマンドは一般ユーザー権限で実行できます。

cepdispengコマンドによるCEPエンジンの運用状態の確認例

CEPエンジン CepEngine の運用状態を確認する例です。動作状態の他、イベントの入出力数なども表示されます。

$ cepdispeng -e CepEngine <ENTER>

engineId :CepEngine

(途中省略)

status_filter :RUN

status_cep :RUN

inEvent_filter :100

inEvent_cep :100

outEvent_filter :100

outEvent_cep :100

(途中省略)

Command cepdispeng executed successfully.

6.1.5.3 ログによる異常監視

CEPサービスおよびCEPエンジンで異常が発生すると、システムログおよびエンジンログに異常を知らせるメッセージが通知されます。

エンジンログには異常を知らせるメッセージだけではなく、SOAPリスナによる送信記録や、デバッグ情報などCEPエンジンのより詳細

な動作についての情報も出力されます。そのため、通常の異常監視はシステムログだけ監視を行い、異常発生時にエンジンログを参

照し異常の原因を解析するといった使い分けを行います。

異常発生時は、各ログに出力されるメッセージの内容にもとづき、対処を行います。具体的な対処方法については、「メッセージ集」を

参照してください。

以降ではログ出力の詳細について説明します。

・ システムログ、エンジンログの出力先

・ 出力するメッセージの形式

システムログ、エンジンログの出力先

システムログおよびエンジンログの出力先について以下に示します。

1つのCEPエンジンは、2つのエンジンログを出力します。1つは入力アダプターと高速フィルターの処理について、もう1つは複合イベ

ント処理と出力アダプターの処理について出力します。エンジンログに既定の書式はありません。

システムログ

/var/log/messages

- 133 -

Page 143: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

高速フィルターのエンジンログ

/var/opt/FJSVcep/cep/flt/logs/EngineLog/CEPエンジン名/engine.log

複合イベント処理のエンジンログ

/var/opt/FJSVcep/cep/cep/logs/EngineLog/CEPエンジン名/engine.log

高速フィルターおよび複合イベント処理のエンジンログは、以下のとおりローテーションします。

・ ファイルサイズ:10MB

・ ローテーション世代:9世代

注意

9世代より古いエンジンログは自動的に削除されます。古いエンジンログが必要な場合は、定期的に別の場所に保管してください。

出力するメッセージの形式

BDCEPが出力するメッセージの形式は以下の通りです。

詳細は、「メッセージ集」の「1.1 メッセージの出力形式」を参照してください。

CSPF_CEP:_エラー種別:_メッセージ番号:_メッセージ本文

・ アンダースコア(_)は半角スペースを表します。

・ 各要素は、コロン(:)で区切られます。

メッセージの表示例

以下に、メッセージの例を示します。

CSPF_CEP: ERROR: cep10108e: Event type is not found. EngineId=CepEngine, eventType=EVENT01

6.1.5.4 CEPエンジンのリソース利用状況の確認

CEPエンジンでの資源の利用状況(Java VMのヒープメモリ使用量など)は、リソースログに記録されます。ログはCSV形式で出力され、

Excelなどのツールで分析することで、CEPエンジンでの資源の過不足の把握できます。

以降では、リソースログの詳細について説明します。

・ リソースログの出力先

・ 高速フィルターのリソースログの出力形式

・ 複合イベント処理のリソースログの出力形式

・ リソース利用状況の取得間隔

リソースログの出力先

1つのCEPエンジンあたり、2つのリソースログを出力します。1つは入力アダプターと高速フィルターの処理について、もう1つは複合イ

ベント処理と出力アダプターの処理について出力します。

各リソースログの出力先は以下の通りです。

高速フィルターのリソースログ

/var/opt/FJSVcep/cep/flt/logs/ResourceLog/CEPエンジン名/resource.log

- 134 -

Page 144: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

複合イベント処理のリソースログ

/var/opt/FJSVcep/cep/cep/logs/ResourceLog/CEPエンジン名/resource.log

高速フィルターおよび複合イベント処理のリソースログは、以下の通りローテーションします。

・ ローテーション契機:1日分 (具体的なローテーション契機は cronで設定されます)

・ ローテーション世代:13世代

注意

13世代より古いリソースログは自動的に削除されます。古いリソースログが必要な場合は、定期的に別の場所に保管してください。

高速フィルターのリソースログの出力形式

高速フィルターのリソースログの出力形式について説明します。

出力フォーマットは以下の通りです。見やすさのため途中に改行を入れていますが、実際には改行は入りません。

Time,Resource ID,jheap new used,jheap new free,jheap new total,jheap old used,jheap old free,jheap old total,

jheap new + old total,jheap perm used,jheap perm free,jheap perm total,VSZ,Event Input Number,

Event Output Number,Logging Number,Apply Rule Number,Socket Number

各項目の説明は以下の通りです。

項目名 内容

Time リソースログ出力日時です。形式は以下の通りです。

yyyy-MM-dd HH:mm:ss

・ yyyy: 西暦

・ MM: 月

・ dd: 日

・ HH: 時

・ mm: 分

・ ss: 秒

Resource ID リソースIDです。形式は以下の通りです。

CSPF_CEP_ホスト名_エンジンID_flt

jheap new used 高速フィルターのJava VMのヒープメモリ使用量(new世代領域)です。(単位:byte) (*1)

jheap new free 高速フィルターのJava VMのヒープメモリ空き容量(new世代領域)です。(単位:byte)(*1)

jheap new total 高速フィルターのJava VMのヒープメモリ領域長(new世代領域)です。(単位:byte) (*1)

jheap old used 高速フィルターのJava VMのヒープメモリ使用量(old世代領域)です。(単位:byte) (*1)

jheap old free 高速フィルターのJava VMのヒープメモリ空き容量(old世代領域)です。(単位:byte)(*1)

jheap old total 高速フィルターのJava VMのヒープメモリ領域長(old世代領域)です。(単位:byte) (*1)

jheap new + old total 高速フィルターのJava VMのヒープメモリ領域長(new世代領域+old世代領域)です。

(単位:byte) (*1)

jheap perm used 高速フィルターのJava VMのヒープメモリ使用量(permanent世代領域)です。(単位:byte)(*1)

- 135 -

Page 145: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

項目名 内容

jheap perm free 高速フィルターのJava VMのヒープメモリ空き容量(permanent世代領域)です。(単位:byte) (*1)

jheap perm total 高速フィルターのJava VMのヒープメモリ領域長(permanent世代領域)です。(単位:byte)(*1)

VSZ 高速フィルターのプロセスのメモリ使用量です。(単位:KB)(*1)

Event Input Number イベント発生デバイスから入力されたイベント数です。(*1)

Event Output Number 複合イベント処理側エンジンに送信したイベント数です。(*1)

Logging Number 入力アダプターにおけるロギング数です。(*1)

Apply Rule Number 高速フィルターに配備されたルール数(高速フィルター文の数)です。(*1)

Socket Number Socketの同時接続数です。(*1)

(*1) CEPエンジンの状態がRUN(正常稼動)以外の場合は""(空文字)が出力されます。

リソースログ(高速フィルター)の出力例

2012-08-01 14:00:04,CSPF_CEP_cepsv_CepEngine_flt,30130928,9125136,39256064,39224768,475888192,

515112960,554369024,68207736,17292168,85499904,3670240,0,0,0,2,0

(注) 見やすさのため途中に改行を入れていますが、実際には改行は入りません。

複合イベント処理のリソースログの出力形式

複合イベント処理のリソースログの出力形式について説明します。

出力フォーマットは以下の通りです。見やすさのため途中に改行を入れていますが、実際には改行は入りません。

Time,Resource ID,jheap new used,jheap new free,jheap new total,jheap old used,jheap old free,

jheap old total,jheap new + old total,jheap perm used,jheap perm free,jheap perm total,VSZ,reserve1,

reserve2,reserve3,reserve4,reserve5,reserve6,Event Input Number,Event Output Number,Logging Number,

Apply Rule Number,Apply Listner Number

各項目の説明は以下の通りです。

項目名 内容

Time リソースログの出力日時です。形式は以下の通りです。

yyyy-MM-dd HH:mm:ss

・ yyyy: 西暦

・ MM: 月

・ dd: 日

・ HH: 時

・ mm: 分

・ ss: 秒

Resource ID リソースIDです。形式は以下の通りです。

CSPF_CEP_ホスト名_エンジンID_cep

- 136 -

Page 146: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

項目名 内容

jheap new used 複合イベント処理のJava VMのヒープメモリ使用量(new世代領域)です。(単位:byte)(*1)

jheap new free 複合イベント処理のJava VMのヒープメモリ空き容量(new世代領域)です。(単位:byte)(*1)

jheap new total 複合イベント処理のJava VMのヒープメモリ領域長(new世代領域)です。(単位:byte)(*1)

jheap old used 複合イベント処理のJava VMのヒープメモリ使用量(old世代領域)です。(単位:byte)(*1)

jheap old free 複合イベント処理のJava VMのヒープメモリ空き容量(old世代領域)です。(単位:byte)(*1)

jheap old total 複合イベント処理のJava VMのヒープメモリ領域長(old世代領域)です。(単位:byte)(*1)

jheap new + old total 複合イベント処理のJava VMのヒープメモリ領域長(new世代領域+old世代領域)です。(単位:byte) (*1)

jheap perm used 複合イベント処理のJava VMのヒープメモリ使用量(permanent世代領域)です。(単位:byte) (*1)

jheap perm free 複合イベント処理のJava VMのヒープメモリ空き容量(permanent世代領域)です。(単位:byte) (*1)

jheap perm total 複合イベント処理のJava VMのヒープメモリ領域長(permanent世代領域)です。(単位:byte) (*1)

VSZ 複合イベント処理のプロセスのメモリ使用量です。(単位:KB) (*1)

reserve1 予約領域です。全て""(空文字)が出力されます。

reserve2

reserve3

reserve4

reserve5

reserve6

Event Input Number 高速フィルター処理から入力されたイベント数です。(*1)

Event Output Number ユーザー開発Webサービスに送信したイベント数です。(*1)

Logging Number 複合イベント処理でのロギング数です。(*1)

Apply Rule Number 複合イベント処理に適用されているルール数(複合イベント処理文の数)です。(*1)

Apply Listner Number 配備されているSOAPリスナ定義数です。(*1)

(*1) CEPエンジンの状態がRUN(正常稼動)以外の場合は""(空文字)が出力されます。

リソースログ(複合イベント処理)の出力例

2012-08-01 14:00:04,CSPF_CEP_cepsv_CepEngine_cep,14042608,25213456,39256064,41802024,473310936,

515112960,554369024,76981880,8481160,85463040,3385020,,,,,,,0,0,0,6,0

(注) 見やすさのため途中に改行を入れていますが、実際には改行は入りません。

リソース利用状況の取得間隔

リソースの利用状況は、10分間隔で取得され、リソースログに出力されます。

- 137 -

Page 147: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

この処理はcronによって定期的に取得処理を呼び出すことで実現しています。

cronの設定は次のファイルで設定されています。エンジン実行ユーザーはインストール時に指定したユーザー名です。

/var/spool/cron/エンジン実行ユーザー

注意

上記のcron設定ファイルの内容を変更しないでください。

6.1.5.5 ルール定義、マスタデータの動的変更

動作中のCEPエンジンのルール定義、マスタデータを、CEPエンジンを停止しないで変更できます(動的変更)。CEPエンジンの再起

動が不要になるため、ルール定義やマスタデータの保守時の作業を簡略化できます。

ルール定義、マスタデータの動的変更は、cepdeployrscコマンドの「-h」オプションを利用します。

cepdeployrscコマンドの詳細については、「8.3 cepdeployrsc」を参照してください。

本コマンドは一般ユーザー権限で実行できます。ルール定義、マスタデータの動的変更は、CEPエンジンが起動している状態で行い

ます。

注意

ルール定義の動的変更で複合イベント処理ルールに変更がある場合、複合イベント処理ルールでウィンドウ内に保持されている情報

は破棄されます。その他の動的変更に関する注意点については、「8.3 cepdeployrsc」を参照してください。

ルール定義の動的変更例

CEPエンジン CepEngine のルール定義 RULE01を、新しい内容で動的変更する場合の実行例です。

新しい内容のルール定義(開発資産ID: RULE01)のパスは以下の通りです。

/tmp/RULE01_new.xml

コマンド実行例は以下の通りです。

$ cepdeployrsc rule -h -e CepEngine -f /tmp/RULE01_new.xml<ENTER>

Are you sure you want to hotdeploy the rule definition?(default: y) [y,n,q]:<ENTER>

Command cepdeployrsc executed successfully.

マスタデータの動的変更例

CEPエンジン CepEngine に配備されているマスタ定義で指定されているデータファイルを変更している場合に、その内容を動的に変

更する場合の実行例です。

$ cepdeployrsc master -h -e CepEngine<ENTER>

Are you sure you want to hotdeploy the master data?(default: y) [y,n,q]:<ENTER>

Command cepdeployrsc executed successfully.

6.1.5.6 カスタムログの保管

ユーザー作成Javaクラスを使用している場合、ユーザー作成Javaクラスがカスタムログへログ出力を行う場合があります。カスタムログ

の出力先は次の通りです。

/var/opt/FJSVcep/cep/cep/logs/EnginLog/エンジン名/custom.log

- 138 -

Page 148: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

カスタムログは以下の通りローテーションします。古いカスタムログは自動的に削除されるため、古いカスタムログが必要な場合は、定

期的に別の場所に保管してください。

・ ファイルサイズ:10MB

・ ローテーション世代:9世代

6.1.6 CEPエンジンの停止

cepstopengコマンドを使い、CEPエンジンを停止します。

cepstopengコマンドの詳細については、「8.11 cepstopeng」を参照してください。

本コマンドは一般ユーザー権限で実行できます。

CEPエンジン CepEngine を停止した場合の実行例です。

$ cepstopeng -e CepEngine<ENTER>

Command cepstopeng executed successfully.

ポイント

cepstopservコマンドでCEPサービスの停止を行うと、起動中の全てのCEPエンジンも停止します。

6.1.7 CEPサービスの停止

cepstopservコマンドを使い、CEPサービスを停止します。

cepstopservコマンドは、起動中の全てのCEPエンジンも停止します。

cepstopservコマンドの詳細については、「8.12 cepstopserv」を参照してください。

本コマンドはスーパーユーザーで実行してください。

コマンドを実行した場合の出力例です。

# cepstopserv<ENTER>

Stopping Engines.

(途中省略)

Command cepstopeng executed successfully.

(途中省略)

Shutting down Tomcat: [ OK ]

(途中省略)

server stopped

(途中省略)

UX:IHS: INFO: ihs01000: The command terminated normally.

(途中省略)

UX:ismngconsolestop: INFO: is40042: The service has been terminated normally.

(途中省略)

Interstage Java EE Node Agent stopped

(途中省略)

Interstage Java EE DAS stopped

(途中省略)

UX:isstop: 情報: is30160:INTERSTAGEを正常に停止しました

Command cepstopserv executed successfully.

- 139 -

Page 149: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

参考

OSのシャットダウン時に、CEPサービスは自動的に停止します。

6.1.8 連携システムの停止

Terracotta連携、RDB連携、Hadoop連携を行っている場合、CEPサーバを停止後に、それぞれ連携するシステムを停止します。

各システムの停止方法については、対象製品のマニュアルを参照してください。

6.2 セキュリティ

BDCEPを安全に運用して頂くために必要な事項について説明します。

6.2.1 運用モデル

BDCEPの代表的な運用モデルを以下に示します。

図6.1 BDCEPの代表的な運用モデル

6.2.2 セキュリティの設計を行うための前提知識

BDCEPを利用しセキュアなシステムを運用するために、以下の要素を考慮して設計します。

・ セキュリティロールの考え方

・ 保護対象資源

・ 保護対象資源に対する脅威の分類とその対策

・ 保護対象資源への脅威対策の概要

セキュリティロールの考え方

BDCEPを利用するシステムのユーザーの種類とユーザーごとのセキュリティロール、それぞれに対応するOS上のユーザーの関係を

以下に示します。

- 140 -

Page 150: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

ユーザーの種類 ユーザーごとのセキュリティロール OS上のユーザー

システム管理者 全ての操作が可能です。

CEPサーバの起動・停止、CEPエンジンの構成変更

など、CEPサーバの運用に関わる操作を行うユー

ザーです。

スーパーユーザー

エンジン実行ユーザー CEPエンジンのプロセスが動作する時のユーザー

です。

エンジン実行ユーザー

(インストール時に作成)

開発者 定義情報の動作確認の目的で、CEPエンジンに対

して定義情報の配備や配備解除を行うほか、CEPエンジンの起動、停止を行います。

CEPサーバにログイン可能な一

般ユーザー

保護対象資源

CEPサーバで保護対象となる資源の一覧を示します。

種類 保護対象資源 意味

ファイル エンジン構成ファイル CEPエンジンの構成変更に使用するファイル

配備済み定義情報 CEPエンジンに配備された定義情報

マスタデータ 高速フィルターが参照するCSVファイル

リソースログ リソース利用状況の調査用の出力ファイル

エンジンログ CEPエンジンの詳細な動作状況が出力されるファ

イル

カスタムログ ユーザー開発Javaクラスが出力するログファイル

調査用資料 障害調査のために採取したファイル

ネットワーク 入力アダプターに送信されたイベントデータ ネットワークを流れるパケット

出力アダプターから送信されたSOAPメッセージ

Terracotta連携により、キャッシュへリモートアク

セスを行う際の通信

Hadoop連携により、Hadoopシステムへリモート

アクセスを行う際の通信

RDB連携により、RDBにリモートアクセスを行う

際の通信

保護対象に対する脅威の分析とその対策

保護対象の資源に対して、以下のような脅威が考えられます。それぞれの脅威に対して対策します。

保護対象資源の種類 脅威 セキュリティ対策

ファイル 改ざん、破壊 パーミッション設定

CEPサーバに対する操作権の認証

ネットワーク ネットワーク盗聴 安全なセグメントへの配置

保護対象資源への脅威対策の概要

考えられるセキュリティ対策について概要を示します。

- 141 -

Page 151: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

セキュリティ対策 対策の概要

パーミッション設定 保護対象資源で挙げたファイルに対して、OSのパーミッションを設定します。セキュリ

ティロールにあわせて、適切なパーミッションを設定してください。

CEPサーバに対する操作権の

認証

OSの認証を使用します。適切な利用者のみOSにログイン可能にします。

BDCEPでは、CEPサーバへのログイン認証を受けているユーザーは信頼できるユー

ザーとして、CEPエンジンに対する操作やエンジンログの参照を可能としています。

また、CEPエンジンの構成変更や、CEPサービスの起動、停止などの一部の操作につ

いては、スーパーユーザーのみ操作可能としています。

安全なセグメントへの配置 データの盗聴や侵入を抑止するため、CEPサーバは安全なセグメントへ配置してくださ

い。

6.2.3 BDCEPにおけるセキュリティの設計

BDCEPを使用したシステムにおける、セキュリティの設計について説明します。

・ CEPサーバに対する認証

・ 適切なアクセス権限の設計

・ ネットワークに対する設計

CEPサーバに対する認証

BDCEPが適用されるサーバのOSのスーパーユーザーは、CEPサーバの運用操作を行うことができます。

また、外部からのCEPサーバへのイベント送信では、認証処理を行いません。CEPサーバへのイベント送信については、ファイアー

ウォールの構築や、イベント送信元の業務アプリケーションによる認証を行うようにシステムを構築してください。

適切なアクセス権限の設計

ファイルの改ざん防止や破壊対策として、以下のファイルに対して適切なアクセス権限を設定してください。

ファイル単位に設定するアクセス権限を以下に記述します。

ファイル 参照権限 書込み権限

エンジン構成ファイル スーパーユーザー スーパーユーザー

マスタデータ エンジン実行ユーザー なし

調査用資料 スーパーユーザー スーパーユーザー

イベントログやリソースログなど、CEPエンジンが生成するファイルのアクセス権は自動的に設定されます。

ネットワークに対する設計

BDCEPがサポートするシステム構成に従ってシステムを配置した場合には、第三者からネットワークに流れるデータが参照されること

はありません。

6.3 保守

BDCEPの保守時に必要な運用操作について説明します。

6.3.1 トラブル発生時の調査資料の採取

BDCEPは、トラブル発生時にコマンドを実行することにより、トラブルシューティング用のファイルを出力します。

トラブルシューティング用のファイルは、調査資料として使用します。

調査資料の採取方法は、「トラブルシューティング集」の「第1章 調査資料の採取」を参照してください。

- 142 -

Page 152: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

6.3.2 バックアップ、リストア

CEPサーバのシステム障害に備えて資源を定期的にバックアップしておく必要があります。

バックアップ対象となる資源を以下に示します。

資源名 内容 バックアップ契機

エンジン構成ファイル CEPエンジンの構成を定義したファイル 設定変更時

マスタデータ CEPエンジンに格納するマスタデータ CEPサーバへ格納時

CEPサーバ上で編集時

定義情報(定義ファイル) CEPエンジンに配備する定義情報 CEPサーバへ格納時

CEPサーバ上で編集時

ユーザー開発Javaクラス ユーザー開発Javaクラスのjarファイルまた

はクラスファイル

CEPサーバへ格納時

Terracotta連携の設定ファイル Terracotta連携に必要なファイル 設定変更時

RDB連携の設定ファイル RDB連携に必要なファイル 設定変更時

・ CEPサーバ内に格納されるイベントログは動作確認用のため、バックアップ、リストア対象としていません。

・ マスタデータは、データの提供元でバックアップされている場合、ここではバックアップ不要です。

・ 定義情報は、定義情報の開発元でバックアップされている場合、ここではバックアップ不要です。

・ ユーザー開発Javaクラスは、開発元でバックアップされている場合、ここではバックアップ不要です。

・ 連携システム上の資源のバックアップ、リストアについては、それぞれの連携製品のマニュアルを参照してください。

6.3.2.1 バックアップの手順

以下の手順でバックアップを行います。バックアップ作業はスーパーユーザーで行ってください。

1. エンジン構成ファイルのバックアップ

2. マスタデータのバックアップ

3. 定義情報(定義ファイル)のバックアップ

4. ユーザー開発Javaクラスのバックアップ

5. Terracotta連携の設定ファイルのバックアップ

6. RDB連携の設定ファイルのバックアップ

ここでは、バックアップ資源格納用のディレクトリを以下のディレクトリとして説明しています。

/backup

エンジン構成ファイルのバックアップ

cepconfigengコマンドの実行時に指定した、エンジン構成ファイルをバックアップします。

エンジン構成ファイルが "/etc/opt/FJSVcep/Engine.xml" の場合の実行例です。

# cp -p /etc/opt/FJSVcep/Engine.xml /backup/<ENTER>

マスタデータのバックアップ

CEPサーバ内に格納されたマスタデータをバックアップします。

- 143 -

Page 153: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

マスタデータが "/masterdata" に格納されている場合の実行例です。

# cp -rp /masterdata /backup/<ENTER>

定義情報(定義ファイル)のバックアップ

CEPサーバ内に格納された定義情報(定義ファイル)をバックアップします。

定義ファイルが "/application" に格納されている場合の実行例です。

# cp -rp /application /backup/<ENTER>

注意

RDB参照定義ファイルについて

RDB参照定義ファイルにはパスワードが記載されているため、セキュリティ上の理由から定義ファイル内のアクセスパスワードの記述を

削除する、定義ファイル全体を暗号化するなどパスワードを参照できないようにしてからバックアップしてください。

ユーザー開発Javaクラスのバックアップ

/etc/opt/FJSVcep/config/customをバックアップします。

ユーザー開発Javaクラスに対する、バックアップの実行例です。

# cp -rp /etc/opt/FJSVcep/config/custom /backup/ <ENTER>

Terracotta連携の設定ファイルのバックアップ

/etc/opt/FJSVcep/config/ehcache.xmlおよび/etc/opt/FJSVcep/config/terracotta_confをバックアップします。

Terracotta連携の設定ファイルに対する、バックアップの実行例です。

# cp -p /etc/opt/FJSVcep/config/ehcache.xml /backup/<ENTER>

# cp -p /etc/opt/FJSVcep/config/terracotta_conf /backup/<ENTER>

RDB連携の設定ファイルのバックアップ

/etc/opt/FJSVcep/config/rdb_confをバックアップします。

RDB連携の設定ファイルに対する、バックアップの実行例です。

- 144 -

Page 154: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

# cp -p /etc/opt/FJSVcep/config/rdb_conf /backup/<ENTER>

6.3.2.2 リストアの手順

以下の手順でリストアを行います。リストア作業はスーパーユーザーで行ってください。

1. エンジン構成ファイルのリストア

2. マスタデータのリストア

3. 定義情報のリストア

4. ユーザー開発Javaクラスのリストア

5. Terracotta連携の設定ファイルのリストア

6. RDB連携の設定ファイルのリストア

なお、以下の手順は、BDCEPのインストールおよびセットアップが完了していることを前提に記載しています。

インストールおよびセットアップについては、「第4章 インストールおよびセットアップ」を参照してください。

ここでは、以下のバックアップ資源格納用のディレクトリが存在することを前提に説明します。

/backup

エンジン構成ファイルのリストア

エンジン構成ファイルをリストアします。リストアしたエンジン構成ファイルを使ったCEPエンジンの再構成は、「第4章 インストールおよ

びセットアップ」を参照してください。

バックアップ元のエンジン構成ファイルが"/etc/opt/FJSVcep/Engine.xml"にあり、バックアップしたエンジン構成ファイルが "/backup/Engine.xml"の場合の実行例です。

# cp -p /backup/Engine.xml /etc/opt/FJSVcep/<ENTER>

マスタデータのリストア

マスタデータをリストアします。

バックアップ元のマスタデータが "/masterdata" にあり、バックアップしたマスタデータが "/backup/masterdata"の場合の実行例です。

# cp -rp /backup/masterdata /<ENTER>

定義情報(定義ファイル)のリストア

定義情報(定義ファイル)をリストアします。リストアした定義情報の再配備は、「6.1.3.1 定義情報の配備」を参照してください。

バックアップ元の定義情報(定義ファイル)が "/application" にあり、バックアップした定義情報が "/backup/application"の場合の実行例

です。

# cp -rp /backup/application /<ENTER>

- 145 -

Page 155: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

ユーザー開発Javaクラスのリストア

ユーザー開発Javaクラスをリストアします。

バックアップしたユーザー開発Javaクラスが"/backup/custom"以下に格納されている場合です。

# cp -rp /backup/custom /etc/opt/FJSVcep/config/ <ENTER>

Terracotta連携の設定ファイルのリストア

Terracotta連携の設定ファイルをリストアします。

バックアップした設定ファイルが "/backup/ehcache.xml"および"/backup/terracotta_conf"の場合の実行例です。

# cp -p /backup/ehcache.xml /etc/opt/FJSVcep/config/ <ENTER>

# cp -p /backup/terracotta_conf /etc/opt/FJSVcep/config/ <ENTER>

RDB連携の設定ファイルのリストア

RDB連携の設定ファイルをリストアします。

バックアップした設定ファイルが "/backup/rdb_conf"の場合の実行例です。

# cp -p /backup/rdb_conf /etc/opt/FJSVcep/config/ <ENTER>

6.3.3 修正の適用

BDCEPをはじめソフトウェア製品から提供される修正情報は、「ソフトウェア修正情報提供統合サイト」である"アップデートサイト"から入

手できます。

BDCEPでは、以下の製品から公開されている修正を適用してください。

製品名 世代

Interstage Big Data Complex Event Processing Server V1.1.0

Interstage Application Server Enterprise Edition(64bit) V11.1.0

BDCEPへの修正の適用手順は以下の通りです。以降の作業はスーパーユーザーで行ってください。

1. cronを停止します。

# service crond stop<ENTER>

2. cepstopservコマンドを実行します。

# cepstopserv<ENTER>

3. 修正を適用します。

修正の適用は、修正情報ファイルに従い行ってください。

- 146 -

Page 156: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

4. Terracotta連携をセットアップ済みで、かつInterstage Application Server Enterprise Edition (64bit)の修正を適用した場合、「4.4.3Terracotta連携のセットアップ」で退避した次のファイルが復活することがあります。その場合、復活したファイルの退避作業を再

度行ってください。

- /opt/FJSVisjee/lib/jersey-bundle-1.0.3.1.jar

- /opt/FJSVisjee/lib/jsr311-api-1.0.jar

- /opt/FJSVisjee/lib/jettison-1.0.1.jar

- /opt/FJSVisjee/lib/jackson-asl-0.9.4.jar

5. cepstartservコマンドを実行します。

# cepstartserv<ENTER>

6. cronを起動します。

# service crond start<ENTER>

注意

cron停止時の注意

BDCEPはリソース利用状況の取得処理に、cronを利用しています。BDCEPが行うcronの設定は、エンジン実行ユーザーのcrontabで

設定しています。

CEPサービス停止時に、cronサービスからリソース利用状況の取得処理が実行されると、cronサービスに設定されている実行サイクル

(リソース利用状況の取得の場合は10分間隔)でエラーが出力される場合があります。このエラーは、再びCEPサービスを再起動する

ことで解消されます。

cronを停止すると、リソース利用状況の取得処理だけでなく、エンジン実行ユーザー以外のcronの設定も停止するため、修正の適用

は、cronの停止による問題が無い時間帯を選んで行う必要があります。

修正に添付されている修正情報ファイルから、マニュアルも修正されている場合は、 新マニュアルを下記のサイトから入手してくださ

い。

http://software.fujitsu.com/jp/manual (2013年12月時点)

6.3.4 チューニング

BDCEPのチューニングについて説明します。

・ JVMオプションのチューニング

・ ファイルディスクリプタのチューニング

・ トレースログのチューニング

6.3.4.1 JVMオプションのチューニング

1つのCEPエンジンの内部では、2つのJava VM(以降JVM)が動作します。1つは入力アダプターと高速フィルターの処理を行い、もう1つは複合イベント処理と出力アダプターの処理を行います。

リソースログの分析によりJVMのヒープメモリ量の過不足が判明した場合、CEPエンジンのJVMオプションのチューニングを行います。

これにより、CEPエンジンにおけるガベージコレクション発生による処理性能低下などの問題を回避できます。

チューニング可能なJVMオプションは以下の通りです。

設定可能な項目 CEPエンジン作成時の初期値

メモリ割り当てプールの 大値 2048m (*1)

メモリ割り当てプールの初期値 512m (*1)

- 147 -

Page 157: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

設定可能な項目 CEPエンジン作成時の初期値

Permanent世代領域の 大値 192m (*1)

(*1) mはMBをあらわす。2048m = 2048MB

JVMオプションのチューニングの流れは以下のようになります。

1. 現在のJVMオプションの設定確認

2. リソースログによるヒープメモリ使用量の把握

3. 必要なヒープメモリサイズの計算(問題なければ終了)

4. JVMオプションの設定変更

5. CEPエンジンの(再)起動(変更後の設定を反映)

6. 1に戻る

現在のJVMオプションの設定確認

CEPエンジンのJVMオプションの設定内容を確認するには cepgetjvmopt コマンドを使用します。

cepgetjvmoptコマンドの詳細は「8.6 cepgetjvmopt」を参照してください。

このコマンドは一般ユーザーで実行できます。

cepgetjvmoptコマンドの実行例

CEPエンジン CepEngine の複合イベント処理のJVMオプションを確認する例

$ cepgetjvmopt cep -e CepEngine<ENTER>

xmxSize :5120m

xmsSize :256m

maxPermSize :96m

Command cepgetjvmopt executed successfully.

リソースログによるヒープメモリ使用量の把握

リソースログを分析して、CEPエンジンのJava VMのヒープメモリ使用量の 大値について確認します。

具体的には、new世代領域、old世代領域、permanent世代領域のそれぞれについて確認します。

リソースログが出力する項目の中で、JVMのヒープメモリに関する項目は以下の通りです。

高速フィルターのリソースログ、複合イベント処理のリソースログの両者とも共通です。

リソースログの出力形式については、「6.1.5.4 CEPエンジンのリソース利用状況の確認」を参照してください。

ヒープメモリに関する項目 説明

jheap new used 高速フィルターのJava VMのヒープメモリ使用量(new世代領域)です。

jheap new free 高速フィルターのJava VMのヒープメモリ空き容量(new世代領域)です。

jheap new total 高速フィルターのJava VMのヒープメモリ領域長(new世代領域)です。

jheap old used 高速フィルターのJava VMのヒープメモリ使用量(old世代領域)です。

jheap old free 高速フィルターのJava VMのヒープメモリ空き容量(old世代領域)です。

jheap old total 高速フィルターのJava VMのヒープメモリ領域長(old世代領域)です。

jheap new + old total 高速フィルターのJava VMのヒープメモリ領域長(new世代領域+old世代領域)です。

- 148 -

Page 158: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

ヒープメモリに関する項目 説明

jheap perm used 高速フィルターのJava VMのヒープメモリ使用量(permanent世代領域)です。

jheap perm free 高速フィルターのJava VMのヒープメモリ空き容量(permanent世代領域)です。

jheap perm total 高速フィルターのJava VMのヒープメモリ領域長(permanent世代領域)です。

必要なヒープメモリサイズの計算

リソースログを分析し、new世代領域、old世代領域、permanent世代領域のそれぞれの 大値を確認したら、必要なヒープメモリサイズ

を以下のように計算します。

必要なヒープメモリサイズが設定値以下ならチューニング作業は終了です。

メモリ割り当てプールの最大値の計算

(new世代領域の最大値 + old世代領域の最大値 + permanent世代領域の最大値) × 1.2

1.2は安全係数です。季節や時間帯によってヒープメモリ使用量が大きく変動するようなら、より大きな安全係数を設定してください。

Permanent世代領域の最大値の計算

permanent世代領域の最大値 × 1.2

1.2は安全係数です。季節や時間帯によってヒープメモリ使用量が大きく変動するようなら、より大きな安全係数を設定してください。

JVMオプションの設定変更

CEPエンジンのJVMオプションの設定を変更するには cepsetjvmopt コマンドを使用します。

cepsetjvmoptコマンドの詳細は「8.8 cepsetjvmopt」を参照してください。

このコマンドはスーパーユーザーで実行します。

cepsetjvmoptコマンドの実行例

CEPエンジン CepEngine の複合イベント処理に対し、JVMオプションのメモリ割り当てプールの 大値を512MBに変更する場合の例

です。メモリ割り当てプールの初期値とPermanent世代領域の 大値には、それぞれ対応するデフォルト値が設定されます。

# cepsetjvmopt cep -xmx 512m -e CepEngine <ENTER>

Command cepsetjvmopt executed successfully.

なお、“m”は“MB”を意味します。

注意

cepsetjvmoptのオプション(-xmx、-xms、-xxmp)を省略した場合、各オプションに対応するデフォルト値が設定されます。

CEPエンジンの(再)起動

設定後のJVMオプションの内容をCEPエンジンに反映させるため、対象のCEPエンジンを(再)起動します。

対象のCEPエンジンが起動中の場合は、一旦停止させる必要があります。CEPエンジンの停止については 「6.1.6 CEPエンジンの停

止」を参照してください。

CEPエンジンの起動については、「6.1.4 CEPエンジンの起動」を参照してください。

作業は一般ユーザーで実行できます。

- 149 -

Page 159: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

CEPエンジンの再起動

起動中のCEPエンジン CepEngine を再起動する例です

$ cepstopeng -e CepEngine <ENTER>

Command cepstopeng executed successfully.

$ cepstarteng -e CepEngine <ENTER>

Command cepstarteng executed successfully.

6.3.4.2 ファイルディスクリプタのチューニング

1つのCEPエンジンを運用するために必要なファイルディスクリプタ数は、Socket通信の同時接続数や、ルール定義のフィルタールー

ルに記述されている高速フィルター文の数に応じて変化します。

ファイルディスクリプタ不足で異常が発生した場合やリソースログの分析により、ファイルディスクリプタの過不足が判明した場合は、ファ

イルディスクリプタ数の上限値の設定が必要です。

必要なファイルディスクリプタ数は、各CEPエンジンごとに、以下の計算式で算出します。

必要となるファイルディスクリプタ数 = A + (8 × B) + 371

表6.1 ファイルディスクリプタ数の見積もり式の項目説明

項目 説明 必要数

A Socketの同時接続数です。 想定する同時接続数の 大値を使用してください。

現在の同時接続数、または過去の同時接続数の変化を確認する

には、CEPエンジンの動作状態、またはリソースログが出力する

Socket通信の同時接続数を参照してください。

参照方法については「8.4 cepdispeng」、または「6.1.5.4 CEPエンジ

ンのリソース利用状況の確認」を参照してください。

B フィルタールールに記述したIF-THEN文の合計数です。

現在のIF-THEN文の数を確認するには、CEPエンジンの動作状

態、またはリソースログが出力する高速フィルター文の数を参照し

てください。

参照方法については「8.4 cepdispeng」、または「6.1.5.4 CEPエンジ

ンのリソース利用状況の確認」を参照してください。

注意

ファイルディスクリプタが枯渇すると、運用継続が不可能になる可能性があります。Aの同時接続数は、余裕をもたせた値にしてくださ

い。

計算した値と、エンジン実行ユーザーが利用できるファイルディスクリプタ数の上限値を比較してください。

複数のCEPエンジンがある場合は、各CEPエンジンごとの計算結果から 大のものと比較してください。

エンジン実行ユーザーが利用できるファイルディスクリプタ数の上限値は、次のコマンドで確認できます。スーパーユーザーで実行し

てください。

# /bin/su -c 'ulimit -n' エンジン実行ユーザー名 <ENTER>

計算した値の方が大きい場合、/etc/security/limits.confファイルに計算した値を設定します。

変更後はOSを再起動してください。変更方法の詳細については、OSのドキュメントを参照してください。

- 150 -

Page 160: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

/etc/security/limits.confの設定例

エンジン実行ユーザー「isbdcep」が利用できるファイルディスクリプタ数の上限値を、デフォルト値の「1024」から「2048」に変更する例

です。

isbdcep soft nofile 2048

isbdcep hard nofile 2048

6.3.4.3 トレースログのチューニング

BDCEPではイベント送信アプリケーションとの入出力情報、およびイベント送信アプリケーションからのリクエストに対する受信処理状

態をトレースログとして出力しています。

トレースログを出力しないように設定することで、HTTPアダプター、SOAPアダプター使用時のイベント処理性能を向上できます。

注意

トレースログを出力しない設定にすることで、トラブル発生時の原因究明に時間がかかることがあります。性能に問題がない場合は、ト

レースログを出力することを推奨します。

トレースログの出力を抑止(または再開)する流れは以下のようになります。本作業はスーパーユーザーで実施してください。

(1) イベント送信アプリケーションとの入出力情報のログ出力抑止(再開)

(2) イベント送信アプリケーションからのリクエストに対する受信処理状態のログ出力抑止(再開)

(3) CEPサービスの再起動

(4) CEPエンジンの起動

(1) イベント送信アプリケーションとの入出力情報のログ出力抑止(再開)

/var/opt/FJSVihs/servers/FJapache/conf/httpd.confを編集し、IHSTraceLogの設定値を“off”にします。

/var/opt/FJSVihs/servers/FJapache/conf/httpd.confの設定例

変更前

IHSTraceLog "|/opt/FJSVihs/bin/ihsrlog -s logs/tracelog 2 5"

変更後

#IHSTraceLog "|/opt/FJSVihs/bin/ihsrlog -s logs/tracelog 2 5"

IHSTraceLog off

ログ出力を再開する場合は、同様にhttpd.confを編集し、変更前の内容に戻します。

(2) イベント送信アプリケーションからのリクエストに対する受信処理状態のログ出力抑止(再開)

イベント送信アプリケーションからのリクエストに対する内部の受信処理状態のログ出力を抑止するため、以下のコマンドを実行します。

見やすさのため、途中の「\」で改行しています。実際には途中の「\」は入力せず、次の行の内容を続けて一行で入力します。

# /opt/FJSVisjee/bin/asadmin set \

CEPエンジン名_flt-config.http-service.property.ISJEELogHttpTraceEnable=false <ENTER>

ログ出力を再開する場合は、以下の通り実行します。

- 151 -

Page 161: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

# /opt/FJSVisjee/bin/asadmin set \

CEPエンジン名_flt-config.http-service.property.ISJEELogHttpTraceEnable=true <ENTER>

コマンドの実行例

CEPエンジン名が「CepEngine」の場合にログ出力を抑止する場合の実行例です。

見やすさのため、途中の「\」で改行しています。実際には途中の「\」は入力せず、次の行の内容を続けて一行で入力します。

# /opt/FJSVisjee/bin/asadmin set \

CepEngine_flt-config.http-service.property.ISJEELogHttpTraceEnable=false <ENTER>

CepEngine_flt-config.http-service.property.ISJEELogHttpTraceEnable=false

(3) CEPサービスの再起動

CEPサービスを再起動し、ログ出力を抑止(再開)する設定を反映させます。

手順としては、cepstopservコマンド、cepstartservコマンドの順で実行します。

CEPサービス再起動の実行例

# cepstopserv <ENTER>

(省略)

# cepstartserv <ENTER>

(省略)

(4) CEPエンジンの起動

cepstartengコマンドを実行し、CEPエンジンを起動します。

cepstartengコマンドの実行例

# cepstarteng <ENTER>

Command cepstarteng executed successfull

- 152 -

Page 162: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

第7章 拡張システム運用

本章では、Interstage Big Data Complex Event Processing Server (以降、BDCEP)を複数のサーバで運用する方法について説明しま

す。

7.1 スケーラブルシステム運用

Terracotta連携機能を使って、BDCEPをスケーラブルに運用するための方法について説明します。

7.1.1 複合イベント処理のスケールアウト

個々の入力イベントを単純にフィルタリングして出力するような場合では、BDCEPを複数サーバにインストールし、前段のロードバラン

サにより入力イベントを振り分けて処理を行うことができます。

単純なフィルタリング処理ではなく、複合イベント処理ルールの中で、ビュー、名前付きウィンドウ、output句、パターン式、集合関数を

指定した処理を行う場合には、入力イベントの情報やそれを加工して生成された情報をメモリ中に保持しておき、その保持されている

情報を使って後の処理を行うことになります。このような場合にロードバランサで単純に複数サーバに振り分けして処理すると、後の処

理で使う情報が同一サーバのメモリに存在しない可能性があり、期待された出力とならないことがあります。

7.1.2 Terracotta連携を使ったスケールアウト

BDCEPが提供するTerracotta連携を使うと、入力イベントの情報やそれを加工して生成された情報を、外部のTerracottaサーバのキャッ

シュに格納して参照できます。このTerracottaサーバのキャッシュは、複数のCEPサーバからアクセスできます。

入力イベントの情報やそれを加工して生成された情報をVirtual Data Windowを使ってTerracottaサーバのキャッシュに格納しておき、

その格納された情報をVirtual Data Windowを使って参照するように複合イベント処理ルールを記述することによって、複数CEPサー

バの前段ではロードバランサで振り分け、同一のTerracottaサーバのキャッシュを参照する形のスケールアウト構成での運用が可能に

なります。

図7.1 Terracotta連携により別CEPサーバに振り分けられたイベントを参照する例

注意

・ Virtual Data Windowを使ってTerracottaのキャッシュを参照する際には、unidirectionalを指定した結合(join)、on select文、副問合

せを使用する必要があります。詳細は「5.4.4.3.3 Terracottaのキャッシュの利用方法」を参照してください。

・ Terracottaサーバのキャッシュのデータは、キーと値で構成するエントリーとして管理されます。キーとして指定しているプロパティ

の値に対して1つのエントリーだけしか保持されませんので、その点を考慮したルール設計が必要となります。

- 153 -

Page 163: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

・ Virtual Data Windowを参照して更新する処理はトランザクション処理とはならないため、あるサーバで参照して更新するまでの間

に別のサーバによる更新が行われる可能性があります。

7.2 PRIMECLUSTERを使った高信頼システム運用

高信頼基盤ソフトウェアPRIMECLUSTERを使って、BDCEPを高信頼な構成で運用するための方法について説明します。

7.2.1 高信頼システム運用の概要

CEPサーバのハードウェア故障による長時間の業務停止を防止するため、BDCEPのクラスタサービス機能により、PRIMECLUSTERを

利用した高信頼システムの構築が可能です。

本機能により、クラスタの切り替えが完了した後に発生したイベントを待機ノード側のCEPサーバで処理できます。

クラスタサービス機能を活用するためには、PRIMECLUSTERに対する知識が必要となります。詳細はPRIMECLUSTERのマニュアル

を参照してください。

クラスタサービス機能の適用範囲を以下に示します。

クラスタサービスの運用形態

1:1運用待機型

利用可能なクラスタ製品

- PRIMECLUSTER Enterprise Edition 4.3A10以上

- PRIMECLUSTER HA Server 4.3A10以上

クラスタシステム上で利用できる機能

BDCEPの全ての機能が利用可能

注意

・ クラスタの切り換え以前、および切り替え中の、運用ノード側の高速フィルタールールおよび複合イベント処理ルールの状態は、

待機ノード側のCEPサーバに引き継がれません。

・ 切り替え中に発生したイベントは受信されません。

7.2.2 クラスタサービスの構成

クラスタシステム上でBDCEPを運用する場合、運用ノードと待機ノードのそれぞれのサーバが同一の資源構成になるように、CEPエン

ジンの構成設定や、開発資産(定義情報やマスタデータなど)の配備を行います。

OSについても引き継ぎIPアドレスにより運用ノードと待機ノードで同一のIPアドレスで動作するようにPRIMECLUSTERの設定を行って

ください。

なお、BDCEPの各定義やエンジンログなどの資源を共有ディスクに配置する必要はありません。運用ノードと待機ノードのローカルディ

スクを利用してください。

7.2.3 クラスタサービスの環境構築

クラスタシステム上でBDCEPを動作させる場合は、以下の手順で環境設定を行ってください。

PRIMECLUSTERのインストールおよび運送操作についての詳細は、PRIMECLUSTERのマニュアルを参照してください。

1. PRIMECLUSTERのインストールおよびセットアップ

運用ノードと待機ノードのそれぞれについて、PRIMECLUSTERをインストールします。

- 154 -

Page 164: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

2. 引き継ぎIPアドレスの設定

運用ノードと待機ノードが、引き継ぎIPアドレスにより同一のIPアドレスで切り替えて動作できるようにPRIMECLUSTERの設定を

行います。

3. 運用ノードにBDCEPをインストールおよびセットアップ

運用ノードで引き継ぎIPアドレスをアクティブにし、BDCEPを通常と同様にインストールおよびセットアップ(CEPエンジンの作成

など)を行います。詳細は「第4章 インストールおよびセットアップ」を参照してください。

なお、Hadoop連携を行う場合は、運用ノードのサーバ情報をマスタサーバの接続許可リストに登録してください。詳細は、InterstageBig Data Parallel Processing Server V1.0.1 マニュアルの「ユーザーズガイド」の「6.4 開発実行環境サーバへのインストール」を

参照してください。

4. 運用ノードに開発資産を配備

運用ノードに、ルール定義など必要な開発資産を配備してください。詳細は「5.8 開発資産の配備」を参照してください。

イベントを処理できる状態になったら、運用ノードのCEPエンジンおよびCEPサービスを停止してください。

5. 運用ノードのRCプロシジャの退避

以下のディレクトリ配下に格納されている起動シェルスクリプト「S99startis」を、任意のバックアップ資源格納用ディレクトリに退避

してください。

- /etc/rc2.d

- /etc/rc3.d

- /etc/rc4.d

- /etc/rc5.d

以下のディレクトリ配下に格納されている停止シェルスクリプト「K00stopis」を、任意のバックアップ資源格納用ディレクトリに退避

してください。

- /etc/rc.d/rc0.d

- /etc/rc.d/rc1.d

- /etc/rc.d/rc6.d

以下の操作を行いInterstage Java EE DASサービスの自動起動を解除します。

# /sbin/chkconfig --del FJSVijdas <ENTER>

6. 待機ノードへの切り換え

PRIMECLUSTERのクラスタ切り換え操作により、待機ノードへの切り替えを行ってください。

7. 待機ノードにBDCEPをインストールおよびセットアップ

待機ノードで引き継ぎIPアドレスがアクティブになったところで、待機ノードにBDCEPをインストールおよびセットアップします。

CEPエンジンの設定は運用ノード側と同一にします。詳細は「第4章 インストールおよびセットアップ」を参照してください。

なお、Hadoop連携を行う場合は、待機ノードのサーバ情報をマスタサーバの接続許可リストに登録してください。詳細は、InterstageBig Data Parallel Processing Server V1.0.1 マニュアルの「ユーザーズガイド」の「6.4 開発実行環境サーバへのインストール」を

参照してください。

8. 待機ノードに開発資産を配備

待機ノードに、運用ノードと同一の開発資産を配備してください。詳細は「5.8 開発資産の配備」を参照してください。

4.の「運用ノードに開発資産を配備」と重複する、データの用意や連携アプリケーションの配備などの作業は不要です。ただし、

マスタデータをCEPサーバのローカルディスクに置く場合は、待機ノードでも運用ノードと同様に格納が必要です。

イベントを処理できる状態になったら、待機ノードのCEPエンジンおよびCEPサービスを停止してください。

9. 待機ノードのRCプロシジャの退避

運用ノードと同一の操作を待機ノードで実施してください。

- 155 -

Page 165: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

10. Cmdlineリソースの修正と登録

クラスタの切替時にCEPエンジンが自動的に起動するために、以下のCmdlineリソースのひな形ファイルを編集してクラスタシス

テムに登録します。

/opt/FJSVcep/HA/sample/SERVICE_BDCEP

ひな形ファイルは以下の要領で編集し、PRIMECLUSTERの運用操作でクラスタシステムに登録します。

- Cmdlineリソース中の下記「Engine-Name」部分は、運用ノードおよび待機ノードで作成したCEPエンジン名に修正してから登

録してください。

STARTCMDE='/opt/FJSVcep/bin/cepstarteng -e Engine-Name'

- 複数のCEPエンジンを利用する場合、cepstartengを起動するCEPエンジンの数分だけ記述してください。

複数のCEPエンジンを利用する場合の記述例

(省略)

STARTCMDE='/opt/FJSVcep/bin/cepstarteng -e CepEngine1'

STARTCMDE2='/opt/FJSVcep/bin/cepstarteng -e CepEngine2'

(省略)

start() {

${STARTCMD} > /dev/null 2>&1

sleep 5

${STARTCMDE} > /dev/null 2>&1

${STARTCMDE2} > /dev/null 2>&1

}

(省略)

7.2.4 クラスタサービスの運用

クラスタサービスの運用における留意点について説明します。

起動、停止

・ 運用ノードを起動するとCEPサービスおよびCEPエンジンが起動します。

・ CEPサービスに対するPRIMECLUSTERのプロセス監視が行われます。そのため、cepstopservコマンドは、クラスタを切り替える場

合以外では実行しないでください。

イベントの送信

・ イベントの送信は、引き継ぎIPアドレスに対して行います。

CEPエンジン、開発資産の変更

・ 運用ノードと待機ノードが同一の資源構成になるように、CEPエンジンの構成設定や、開発資産(定義情報やマスタデータなど)の

配備を行います。

運用ノード故障時のクラスタの動作と対処

・ 運用ノードでハードウェア故障が発生し、クラスタサービスが異常を検知すると運用ノードの停止処理が行われ、CEPエンジンおよ

びCEPサービスが停止します。

・ 待機ノードに切り替わった後、引き継ぎIPアドレスに対してイベントの送信が再開できます。

・ 異常が発生した運用ノードについては、クラスタの切り換え要因となったハード故障に対する処置を行い、待機ノードで異常が発

生した場合、切り戻しができるよう対処を行ってください。

- 156 -

Page 166: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

第8章 コマンドリファレンス

本章では、Interstage Big Data Complex Event Processing Server(以降、BDCEP)が提供するコマンドについて説明します。

コマンド名 機能 管理者権限

cepcollectinfo 調査資料の一括採取 ○

cepconfigeng CEPエンジンの構成 (*1) ○

cepdeployrsc 開発資産の配備、ルール定義とマスタデータの動

的変更 (*1)-

cepdispeng CEPエンジンの状態表示 -

cepdispserv CEPサービスの状態表示 ○

cepgetjvmopt JVMオプションの参照 -

cepgetrsc 開発資産の参照 -

cepsetjvmopt JVMオプションの設定 (*1) ○

cepstarteng CEPエンジンの起動 (*1) -

cepstartserv CEPサービスの起動 (*2) ○

cepstopeng CEPエンジンの停止 (*1) -

cepstopserv CEPサービスの停止 (*2) ○

cepundeployrsc 開発資産の配備解除 (*1) -

○:スーパーユーザーで実行する必要があります。

注意

・ *1のコマンドは、*1および*2のコマンドと同時に実行できません。無印のコマンドとは同時に実行可能です。

・ *2のコマンドは、全てのコマンドと同時に実行できません。

・ 同時に実行した場合(同コマンドを二重実行した場合を含む)、後に実行したコマンドが異常終了します。

8.1 cepcollectinfo名前

cepcollectinfo - 調査資料一括採取

形式

cepcollectinfo [path]

機能説明

Interstage Big Data Complex Event Processing Serverの調査資料を一括採取します。

コマンド実行時に指定したパスを含む以下の形で採取後、圧縮されたファイル(tar.gz形式)を出力します。

path/collect/yyyyMMddHHmmss

「yyyyMMddHHmmss」は、資料採取した日時を指します。

- 157 -

Page 167: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

引数

path

調査資料を格納するディレクトリを指定します。

本オプションを省略した場合、/tmp 配下に格納します。

指定したパスが存在しない場合、調査資料を採取せずにエラーを返します。

終了ステータス

以下のステータスが返されます。

0

正常終了

8

異常終了

cepcollectinfoの実行例

パスを指定して調査資料を採取する場合の実行例です。

# cepcollectinfo /var/tmp <ENTER>

Compressing collect data is started.

Compressing collect data is finished.

Collecting is finished. (/var/tmp/collect/BDCEP_20120413141134.tar.gz)

Command cepcollectinfo executed successfully.

パスを指定せずに調査資料を採取する場合の実行例(/tmp配下に調査資料を格納します)。

# cepcollectinfo <ENTER>

Compressing collect data is started.

Compressing collect data is finished.

Collecting is finished. (/tmp/collect/BDCEP_20120413141134.tar.gz)

Command cepcollectinfo executed successfully.

8.2 cepconfigeng名前

cepconfigeng - CEPエンジンの構成

形式

cepconfigeng -f xml_filePath

機能説明

CEPエンジンを構成します。

現在構成済みのCEPエンジンの内容と指定したエンジン構成ファイルの内容を比較し、差分に従って該当のCEPエンジンの作成、

設定変更、削除を行います。

次に構成内容を変更する場合に備えて、エンジン構成ファイルは常に保存しておくことを推奨します。

コマンド実行時は、構成変更の実施を確認する以下の問い合わせが行われます。yを入力して<ENTER>で変更が実行されます。

また、nもしくはqを入力して<ENTER>で実行をキャンセルできます。

Are you sure you want to change the CEP Engine configuration? [y,n,q]:

- 158 -

Page 168: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

CEPエンジンの作成

新規にCEPエンジンを作成します。

CEPエンジンを作成後、別途起動する必要があります。

CEPエンジンの設定変更

構成済みのCEPエンジンの設定内容(CEPエンジン名以外の項目)を変更します。

変更対象のCEPエンジンを事前に停止する必要があります。本コマンドの実行後に、該当のCEPエンジンを別途起動する必要

があります。

CEPエンジンの削除

構成済みのCEPエンジンを削除します。

削除対象のCEPエンジンを事前に停止する必要があります。

削除対象のCEPエンジンに開発資産が配備されている場合は、事前に開発資産を配備解除しなくてもCEPエンジンを削除で

きます。

参照

CEPエンジンの起動・停止については、「8.9 cepstarteng」および「8.11 cepstopeng」を参照してください。

引数

-f xml_filePath

CEPエンジンの定義内容が記述されたエンジン構成ファイルを指定します。指定ミス防止のため、絶対パスでの指定を推奨し

ます。

参照

エンジン構成ファイルの定義詳細については、「9.1.1 エンジン構成ファイル」を参照してください。

終了ステータス

以下のステータスが返されます。

0

正常終了

8

異常終了

注意

・ 作成可能なCEPエンジンの上限数は5個です。6個以上のCEPエンジンを定義した場合は、本コマンドが異常終了します。

・ CEPエンジンを定義する場合、他のCEPエンジンと重複しない名前を設定してください。エンジン構成ファイルに同名のCEPエンジ

ンを定義した場合、本コマンドが異常終了します。

・ CEPエンジンを新規に作成する際は、既に構成済みのCEPエンジンを保持するため、エンジン構成ファイルに必ず構成済みの内

容を含めてください。含めない場合、構成済みのCEPエンジンは削除されます。

同様に、CEPエンジンの設定を変更する際は、目的の設定項目のみを変更し、その他の項目はエンジン構成ファイルに必ず残す

ようにしてください。

・ CEPエンジンの設定を変更する際に、エラーが発生して本コマンドが異常終了した場合、CEPエンジン内部の構成に矛盾が発生

する可能性があります。CEPエンジンの設定変更を完了するためには、エラーの原因を取り除いた後、再度コマンドを実行してくだ

さい。

- 159 -

Page 169: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

・ CEPエンジンを削除する場合、配備済みの開発資産を自動的に配備解除します。

本コマンドを実行中にエラーが発生して異常終了した場合、エラーが発生する前に配備解除された開発資産は実行前の状態に

戻りますが、CEPエンジン内部の構成に矛盾が発生する可能性があります。

CEPエンジンの削除を完了させるためには、エラーの原因を取り除いた後、再度コマンドを実行してください。

・ イベント送信中に本コマンドを実行した場合、本コマンドが異常終了する場合があります。すべてのCEPサーバに対するイベント送

信を停止した後に、本コマンドを実行してください。

正常終了時の出力例

CEPエンジン(CepEngine1、CepEngine2)を新規作成する場合の出力例です。

/etc/opt/FJSVcep/Engine.xml:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<subSystemConfig xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1">

<engineConfig id="CepEngine1">

<logging>

<type>bdpp</type>

<directory>hadoop</directory>

<loggingMaxOpenFile>6</loggingMaxOpenFile>

<loggingRotationCycle>300</loggingRotationCycle>

</logging>

<socketAdapterPort>9600</socketAdapterPort>

</engineConfig>

<engineConfig id="CepEngine2">

<logging>

<type>file</type>

</logging>

<socketAdapterPort>9601</socketAdapterPort>

</engineConfig>

</subSystemConfig>

コマンド実行結果:

# cepconfigeng -f /etc/opt/FJSVcep/Engine.xml <ENTER>

Are you sure you want to change the CEP Engine configuration? [y,n,q]:y <ENTER>

Command cepconfigeng executed successfully.

構成済みのCEPエンジンからCepEngine1を削除する(CepEngine2を残す)場合の出力例です。

/etc/opt/FJSVcep/Engine.xml:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<subSystemConfig xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1">

<!--

<engineConfig id="CepEngine1">

<logging>

<type>bdpp</type>

<directory>hadoop</directory>

<loggingMaxOpenFile>6</loggingMaxOpenFile>

<loggingRotationCycle>300</loggingRotationCycle>

</logging>

<socketAdapterPort>9600</socketAdapterPort>

</engineConfig>

-->

<engineConfig id="CepEngine2">

<logging>

<type>file</type>

</logging>

<socketAdapterPort>9601</socketAdapterPort>

- 160 -

Page 170: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

</engineConfig>

</subSystemConfig>

コマンド実行結果:

# cepconfigeng -f /etc/opt/FJSVcep/Engine.xml <ENTER>

Are you sure you want to change the CEP Engine configuration? [y,n,q]:y <ENTER>

Command cepconfigeng executed successfully.

異常終了時の出力例

起動済みのCEPエンジンを削除しようとした場合の出力例です。

# cepconfigeng -f /etc/opt/FJSVcep/Engine.xml <ENTER>

Are you sure you want to change the CEP Engine configuration? [y,n,q]:y <ENTER>

The setup processing failed. EngineId=(CepEngine) Reason=(The job is already running.)

Command cepconfigeng execution failed.

8.3 cepdeployrsc名前

cepdeployrsc - 開発資産の配備、ルール定義とマスタデータの動的変更

形式

形式1)

cepdeployrsc resource [-o] [-e engine_name] -f xml_filePath

形式2)

cepdeployrsc rule -h [-e engine_name] -f xml_filePath

形式3)

cepdeployrsc master -h [-e engine_name]

機能説明

形式1は、CEPエンジンに対して開発資産を配備します。

配備する開発資産の種別(イベントタイプ定義/ルール定義/マスタ定義/RDB参照定義/SOAPリスナ定義)を指定します。

形式2は、CEPエンジンを停止せずに更新したルール定義を適用します。(ルール定義の動的変更)

形式3は、CEPエンジンを停止せずに更新したマスタデータを適用します。(マスタデータの動的変更)

コマンド実行時は、配備や動的変更の実施を確認する問い合わせが行われます。yを入力して<ENTER>で配備や動的変更が実

行されます。また、nもしくはqを入力して<ENTER>で実行をキャンセルできます。

問い合わせの例(SOAPリスナ定義の配備の場合)

Are you sure you want to deploy the SOAP listener definition?(default: y) [y,n,q]:

問い合わせの例(ルール定義の動的変更の場合)

Are you sure you want to hotdeploy the rule definition?(default: y) [y,n,q]:

問い合わせの例(マスタデータの動的変更の場合)

Are you sure you want to hotdeploy the master data?(default: y) [y,n,q]:

- 161 -

Page 171: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

引数

resource

開発資産の種別を指定します。動的変更時にはruleまたはmasterだけが指定できます。

eventtype

イベントタイプ定義

rule

ルール定義

master

マスタ定義

rdb_ref

RDB参照定義

listener

SOAPリスナ定義

-o

開発資産の配備時に定義内容を上書きします。動的変更時には指定できません。

開発資産の配備時に本オプションを省略した場合、定義ファイルで指定した開発資産IDと同じ開発資産が既に配備済みであ

れば、エラーメッセージが出力されて配備に失敗します。

-e engine_name

開発資産の配備、または、動的変更を実施するCEPエンジン名を指定します。

構成しているCEPエンジンが1つだけの場合は、本オプションを省略できます。

本オプションを省略した場合、構成済みのCEPエンジンが2個以上存在していると、エラーメッセージが出力されて配備、動的

変更に失敗します。

-f xml_filePath

開発資産の配備時、または、ルール定義の動的変更時に、開発資産の定義内容が記述された定義ファイルを指定します。指

定ミス防止のため、絶対パスでの指定を推奨します。マスタデータの動的変更時には指定できません。

-h

ルール定義、または、マスタデータの動的変更を実施します。

参照

定義ファイルの定義詳細については、「9.2 開発資産の定義」を参照してください。

終了ステータス

以下のステータスが返されます。

0

正常終了

- 162 -

Page 172: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

8

異常終了

注意

・ 定義ファイルには、cepgetrscコマンドが出力する詳細表示結果(XML形式)を保存したファイルも指定可能です。詳しくは、「8.7cepgetrsc」を参照してください。

・ 形式1の場合、配備対象のCEPエンジンの起動中は、開発資産を配備できません。

・ 形式2および3の動的変更を行う場合は、さらに次の点に注意してください。

- 対象のCEPエンジンが停止中の場合は、動的変更できません。

- 動的変更できる開発資産はルール定義だけです。そのため、未配備のイベントタイプ定義、マスタ定義、RDB参照定義、SOAPリスナ定義を参照するようなルール定義への動的変更はできません。

- ルール定義の動的変更の場合、新しいルール定義と開発資産IDが同じルール定義が配備済みである必要があります。

- ルール定義の動的変更で高速フィルタールールに変更がある場合、対象のCEPエンジンで使用しているマスタデータは全て

再読込みされます。

- ルール定義の動的変更で複合イベント処理ルールに変更がある場合、複合イベント処理ルールでウィンドウ内に保持されて

いる情報は破棄されます。

- 次の場合、動的変更処理はキャンセルされ、cepdeployrscコマンドは画面にメッセージを出力して正常終了します。

- 変更箇所のないルール定義ファイルを指定した場合、ルール定義の動的変更処理はキャンセルされます。

- ルール定義が未配備の場合、あるいは配備中のルール定義に高速フィルタールールが含まれない場合、マスタデータの

動的変更処理はキャンセルされます。

- マスタ定義が未配備の場合、マスタデータの動的変更処理はキャンセルされます。

- 動的変更実行中は、処理対象のイベントは内部キューに蓄積され、動的変更成功後処理を再開します。

- ルールの構文エラー等で動的変更に失敗した場合、CEPエンジンは停止します。運用時に動的変更する場合には、事前に

別のCEPエンジンで動作確認してから動的変更を実行するようにしてください。

正常終了時の出力例

SOAPリスナ定義ファイル(listenerdeploy.xml)をCEPエンジン(CepEngine1)に配備する場合の出力例です。

$ cepdeployrsc listener -o -e CepEngine1 -f /tmp/listenerdeploy.xml <ENTER>

Are you sure you want to deploy the SOAP listener definition?(default: y) [y,n,q]:y <ENTER>

Command cepdeployrsc executed successfully.

ルール定義ファイル(rule.xml)をCEPエンジン(CepEngine1)に動的変更する場合の出力例です。

$ cepdeployrsc rule -h -e CepEngine1 -f /tmp/rule.xml <ENTER>

Are you sure you want to hotdeploy the rule definition?(default: y) [y,n,q]:y <ENTER>

Command cepdeployrsc executed successfully.

マスタデータをCEPエンジン(CepEngine1)に動的変更する場合の出力例です。

$ cepdeployrsc master -h -e CepEngine1 <ENTER>

Are you sure you want to hotdeploy the master data?(default: y) [y,n,q]:y <ENTER>

Command cepdeployrsc executed successfully.

- 163 -

Page 173: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

異常終了時の出力例

他のコマンド(同時実行が不可であるコマンド)の実行中に、SOAPリスナ定義を配備しようとした場合の出力例です。

$ cepdeployrsc listener -o -e CepEngine1 -f /tmp/listenerdeploy.xml <ENTER>

Are you sure you want to deploy the SOAP listener definition?(default: y) [y,n,q]:<ENTER>

Processing cannot be performed because another command is executing.

Command cepdeployrsc execution failed.

動的変更するルールに構文エラーがあった場合の出力例です。

$ cepdeployrsc rule -h -e CepEngine1 -f /tmp/rule.xml <ENTER>

Are you sure you want to hotdeploy the rule definition?(default: y) [y,n,q]:<ENTER>

The definition file contents are incorrect. Filename=(/tmp/rule.xml)

Command cepdeployrsc execution failed.

配備済みでない開発資産IDをもつルール定義を動的変更しようとした場合の出力例です。

$ cepdeployrsc rule -h -e CepEngine1 -f /tmp/rule.xml <ENTER>

Are you sure you want to hotdeploy the rule definition?(default: y) [y,n,q]:<ENTER>

The rule definition has not been deployed. Id=(RULE01)

Command cepdeployrsc execution failed.

CEPエンジン停止中に、マスタデータを動的変更しようとした場合の出力例です。

$ cepdeployrsc master -h -e CepEngine1 <ENTER>

Are you sure you want to hotdeploy the master data?(default: y) [y,n,q]:<ENTER>

CEP Engine is not started. EngineId=(CepEngine1)

Command cepdeployrsc execution failed.

8.4 cepdispeng名前

cepdispeng - CEPエンジンの情報表示

形式

cepdispeng [-i] [-a | -e engine_name]

機能説明

CEPエンジンの基本情報または動作状態を表示します。

引数

-i

CEPエンジンの基本情報を表示します。

本オプションを指定しない場合、CEPエンジンの動作状態を表示します。

表示される項目について、以下に説明します。

基本情報

項目名 意味 表示有無

engineId CEPエンジン名 ○

eventtype 配備されているイベントタイプ定義の開発資産ID △

- 164 -

Page 174: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

項目名 意味 表示有無

rule 配備されているルール定義の開発資産ID △

master 配備されているマスタ定義の開発資産ID △

rdb_ref 配備されているRDB参照定義の開発資産ID △

listener 配備されているSOAPリスナ定義の開発資産ID △

○:必ず表示されます。

△:該当の開発資産が配備されている場合に表示されます。

ポイント

同一定義の開発資産が2つ以上配備されている場合は、複数行で表示されます。

動作状態

項目名 意味 表示有無

engineId CEPエンジン名 ○

port Socket通信用のポート番号(Socketアダプターポート) △(*1)

socket Socket通信の同時接続数 △(*1)

status_filter CEPエンジン(高速フィルター)の状態

RUN:正常稼働

STARTING:起動中

STOP:停止

STOPPING:停止中

ABNORMAL:異常

status_cep CEPエンジン(複合イベント処理)の状態

RUN:正常稼働

STARTING:起動中

STOP:停止

STOPPING:停止中

ABNORMAL:異常

inEvent_filter CEPエンジン(高速フィルター)の入力イベント数

高速フィルターへ入力されたイベント数を指します。CEPエ

ンジンが起動された時点からの累積値を表示します。

△(*2)

inEvent_cep CEPエンジン(複合イベント処理)の入力イベント数

複合イベント処理へ入力されたイベント数を指します。CEPエンジンが起動された時点からの累積値を表示します。

△(*3)

outEvent_filter CEPエンジン(高速フィルター)の出力イベント数

複合イベント処理に送信したイベント数を指します。CEPエン

ジンが起動された時点からの累積値を表示します。

△(*2)

outEvent_cep CEPエンジン(複合イベント処理)の出力イベント数 △(*3)

- 165 -

Page 175: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

項目名 意味 表示有無

ユーザー開発Webサービスに送信したイベント数を指しま

す。CEPエンジンが起動された時点からの累積値を表示しま

す。

logging_filter CEPエンジン(高速フィルター)のロギング数 △(*2)

logging_cep CEPエンジン(複合イベント処理)のロギング数 △(*3)

heap_filter CEPエンジン(高速フィルター)のJavaヒープの使用量と領域

以下の形式で表示します。

Javaヒープ使用量(バイト)/領域量(バイト)

△(*2)

heap_cep CEPエンジン(複合イベント処理)のJavaヒープの使用量と領

域量

以下の形式で表示します。

Javaヒープ使用量(バイト)/領域量(バイト)

△(*3)

useMemory_filter CEPエンジン(高速フィルター)プロセスのメモリ使用量(キロ

バイト)△(*2)

useMemory_cep CEPエンジン(複合イベント処理)プロセスのメモリ使用量(キロバイト)

△(*3)

countRule_filter CEPエンジン(高速フィルター)に適用されているルール数 △(*2)

countRule_cep CEPエンジン(複合イベント処理)に適用されているルール数 △(*3)

countListener 適用リスナ数

CEPエンジン(複合イベント処理)に適用されているSOAPリ

スナ定義数を指します。

△(*3)

○:必ず表示されます。

△:以下の場合に表示されます。

*1) Socket通信を利用している場合(CEPエンジンでSocketアダプターを使用している場合)

*2) CEPエンジン(高速フィルター)が正常稼働している場合(status_filterが“RUN”の場合)

*3) CEPエンジン(複合イベント処理)が正常稼働している場合(status_cepが“RUN”の場合)

-a

構成済みのすべてのCEPエンジンの情報を表示します。

-e engine_name

情報を表示するCEPエンジン名を指定します。

構成しているCEPエンジンが1つだけの場合は、本オプションを省略できます。

本オプションを省略した場合、構成済みのCEPエンジンが2個以上存在していると、エラーメッセージが出力されて表示に失敗

します。

終了ステータス

以下のステータスが返されます。

0

正常終了

- 166 -

Page 176: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

8

異常終了

正常終了時の出力例

構成済みのすべてのCEPエンジンの動作状態を表示する場合の出力例です。

$ cepdispeng -a <ENTER>

engineId :CepEngine1

port :9600

socket :1

status_filter :RUN

status_cep :RUN

inEvent_filter :100

inEvent_cep :100

outEvent_filter :100

outEvent_cep :100

logging_filter :100

logging_cep :100

heap_filter :98,725,088 / 532,545,536

heap_cep :98,725,088 / 532,545,536

useMemory_filter :823,493,339

useMemory_cep :823,493,339

countRule_filter :1

countRule_cep :1

countListener :1

engineId :CepEngine2

port :9601

status_filter :STOP

status_cep :STOP

Command cepdispeng executed successfully.

CEPエンジン(CepEngine1)の基本情報を表示する場合の出力例です。

$ cepdispeng -i -e CepEngine1 <ENTER>

engineId :CepEngine1

eventtype :EVENT_01

rule :RULE_01

master :MASTER_01

rdb_ref :RDBREF_01

listener :LISTEN_01

listener :LISTEN_02

Command cepdispeng executed successfully.

8.5 cepdispserv名前

cepdispserv - CEPサービスの状態表示

形式

cepdispserv

- 167 -

Page 177: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

機能説明

CEPサービスの状態を表示します。CEPサービスの実体を構成する複数のサービスについて、各サービスの状態を表示します。

CEPサービスを構成するサービスは以下のとおりです。

- Interstage Java EE DASサービス

- Interstage Java EE Node Agentサービス

- IJServerクラスタ

- Interstage HTTP Server

- Apache Tomcat

- PostgreSQL

各サービスの状態の意味について説明します。

Interstage Java EE DASサービス 表示内容 意味

started 起動状態

stopped 停止状態

starting 起動処理中

stopping 停止処理中

unknown 未知状態

注意

unknown(未知状態)は、サービスの状態を確認できなかったことを示しています。

サービスがハングアップしているなど、なんらかの異常が発生しているため、しばらく待ってから再度本コマンドを実行して状態

を確認してください。

Interstage Java EE Node Agentサービス

Interstage Java EE DASサービスの表示内容と同様です。

IJServerクラスタ

表示内容 意味

starting 起動処理中

running 起動状態

stopping 停止処理中

not running 停止状態

partially running 縮退運用状態

- 168 -

Page 178: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

注意

cepstopservコマンド実行後に本コマンドを実行した場合に以下のメッセージが出力されますが、IJServerクラスタが停止状態で

あることを示しており、対処は不要です。

asadmin: ERROR: ISJEE_OM2997: Unable to connect to admin-server at given host: [localhost] and

port: [12001]. Please check if this server is up and running and that the host and port provide

d are correct.

asadmin: ERROR: ISJEE_CLI137: Command list-clusters failed.

見やすさのため、上の例では長い行(1、2行目)の途中に改行を入れています。実際には改行は入りません。

Interstage HTTP Server

項目名 意味

Web Server Name Webサーバ名

Status Webサーバの状態

Running:動作中

Stopped:停止

Configuration File 環境定義ファイル

Server Version Interstage HTTP Serverのサーババージョン

Current Time 現在の日時

Start Time 起動日時

Daemon Process ID デーモンプロセスのプロセスID

Listening Port 接続要求を受け取るWebサーバのIPアドレスとポート番号

SSLプロトコルによる通信の場合、ポート番号には“HTTPS”と表

示されます。

IPv6アドレスの場合は、括弧“[”および“]”で囲んで表示されま

す。

requests currently being processed 処理中のリクエスト数

idle servers 待機中の通信プロセス(スレッド)数

注意

Statusが“Stopped:停止”の場合、Configuration File以降は表示されません。

また、cepstopservコマンド実行後に本コマンドを実行した場合に以下のエラーが出力されますが、Interstage HTTP Serverが停

止状態であることを示しており、対処は不要です。

UX:IHS: ERROR: ihs81517: The Web Server (Interstage HTTP Server) did not start. [FJapache]

Apache Tomcat

表示内容 意味

jsvc(pid nnnn nnnn) を実行中... 実行中

nnnnには動作しているプロセスIDが表示されます。

jsvcは停止しています 停止中

- 169 -

Page 179: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

PostgreSQL

表示内容 意味

pg_ctl: server is running (PID: nnnn)

/..../bin/postgres -D /..../data

実行中

nnnnには動作しているプロセスIDが表示されます。

pg_ctl: no server running 停止中

引数

なし

終了ステータス

以下のステータスが返されます。

0

正常終了

8

異常終了

正常終了時の出力例

すべてのサービスが正常起動している場合の出力例です。

# cepdispserv <ENTER>

Interstage Java EE DAS service status.

ijdasstat

Name Status

-----------------------------------------

Interstage Java EE DAS started

Interstage Java EE Node Agent service status.

ijnastat

Name Status

-----------------------------------------

Interstage Java EE Node Agent started

IJServer Cluster status.

CEPAgentIJServerCluster running

CepEngine_flt not running

CepEngine_cep not running

Command list-clusters executed successfully.

Interstage HTTP Server status.

ihsdisp

Web Server Name : FJapache

Status : Running

Configuration File: /opt/FJSVihs/servers/FJapache/conf/httpd.conf

Server Version : FJapache/10.0

Current Time : Monday, 09-Jul-2012 01:25:17

Start Time : Sunday, 08-Jul-2012 15:20:31

Daemon Process ID : 2267

Child Process ID : 2272 2273 2274 2275 2276

- 170 -

Page 180: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

Listening Port : [::]:80

0 requests currently being processed, 5 idle servers

Apache Tomcat status.

/sbin/service FJSVcep-rest status

jsvc (pid 2099 2096) を実行中...

PostgreSQL status.

su - bdcep_postgres -c "/opt/FJSVcep/postgres/packages/FJSVpgs83/bin/pg_ctl -D /var/opt/FJSVcep/postgres/data status"

pg_ctl: server is running (PID: 2088)

/opt/FJSVcep/postgres/packages/FJSVpgs83/bin/postgres "-D" "/var/opt/FJSVcep/postgres/data"

Command cepdispserv executed successfully.

8.6 cepgetjvmopt名前

cepgetjvmopt - JVMオプションの参照

形式

cepgetjvmopt function -e engine_name

機能説明

CEPエンジンのJVMオプションを参照します。

表示されるJVMオプションは、以下のとおりです。

項目 意味

xmxSize メモリ割り当てプールの 大値

xmsSize メモリ割り当てプールの初期値

maxPermSize Permanent世代領域の 大値

引数

function

JVMオプションを参照する機能を指定します。

filter

高速フィルター

cep

複合イベント処理

-e engine_name

JVMオプションを参照するCEPエンジン名を指定します。

- 171 -

Page 181: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

終了ステータス

以下のステータスが返されます。

0

正常終了

8

異常終了

正常終了時の出力例

CEPエンジン(CepEngine1)の高速フィルターのJVMオプションを参照した場合の出力例です。

$ cepgetjvmopt filter -e CepEngine1 <ENTER>

xmxSize :5120m

xmsSize :256m

maxPermSize :96m

Command cepgetjvmopt executed successfully.

8.7 cepgetrsc名前

cepgetrsc - 開発資産の参照

形式

cepgetrsc resource [-e engine_name] [-n resource_id]

機能説明

配備されている開発資産を一覧表示または詳細表示します。

引数

resource

開発資産の種別を指定します。

eventtype

イベントタイプ定義

rule

ルール定義

master

マスタ定義

rdb_ref

RDB参照定義

listener

SOAPリスナ定義

- 172 -

Page 182: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

-e engine_name

開発資産を参照するCEPエンジン名を指定します。

構成しているCEPエンジンが1つだけの場合は、本オプションを省略できます。

本オプションを省略した場合、構成済みのCEPエンジンが2個以上存在していると、エラーメッセージが出力されて参照に失敗

します。

-n resource_id

詳細表示する開発資産IDを指定します。

本オプションを指定することで、該当する開発資産の定義内容をXML形式で表示します。

参照

表示結果のXML形式の詳細については、「9.2 開発資産の定義」を参照してください。

終了ステータス

以下のステータスが返されます。

0

正常終了

8

異常終了

注意

・ 詳細表示の結果(XML形式)を流用する場合は、各項目を適宜修正してください。

・ 本コマンドの結果には、XML形式のデータ以外の出力メッセージが含まれます。

コマンド結果をファイルにリダイレクトして流用する場合は、不要なメッセージを削除して利用してください。

正常終了時の出力例

CEPエンジン(CepEngine1)に配備されているSOAPリスナ定義を一覧表示する場合の出力例です。

$ cepgetrsc listener -e CepEngine1 <ENTER>

LISTEN_01

LISTEN_02

Command cepgetrsc executed successfully.

CEPエンジン(CepEngine1)に配備されているイベントタイプ定義を詳細表示する場合の出力例です。

$ cepgetrsc eventtype -e CepEngine1 -n EVENT01 <ENTER>

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<eventType xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="EVENT01">

<comment>イベントタイプ定義</comment>

<type>CSV</type>

<xmlSchema></xmlSchema>

- 173 -

Page 183: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

<csvColumn>

<column name="memberID" type="string"/>

<column name="areaID" type="string"/>

<column name="status" type="string"/>

</csvColumn>

<root></root>

<useLogging>false</useLogging>

<loggingTableName></loggingTableName>

<useCep>true</useCep>

</eventType>

Command cepgetrsc executed successfully.

異常終了時の出力例

CEPエンジン(CepEngine2)に配備されていないイベントタイプ定義を参照しようとした場合の出力例です。

$ cepgetrsc eventtype -e CepEngine2 -n EVENT02 <ENTER>

The event type definition does not exist. Id=(EVENT02)

Command cepgetrsc execution failed.

本例のエラーメッセージには、以下の情報が付加されています。

Id

指定された開発資産ID

8.8 cepsetjvmopt名前

cepsetjvmopt - JVMオプションの設定

形式

cepsetjvmopt function [-xmx xmxSize] [-xms xmsSize] [-xxmp permSize] -e engine_name

機能説明

CEPエンジンのJVMオプションを設定します。

引数

function

JVMオプションを設定する機能を指定します。

filter

高速フィルター

cep

複合イベント処理

-xmx xmxSize

メモリ割り当てプールの 大値を設定します。

本オプションを省略した場合は、デフォルト値(2048m)に設定されます。

- 174 -

Page 184: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

指定値が-xms オプションの指定値よりも小さい場合は、CEPエンジンの起動時にエラーメッセージが出力されて起動に失敗し

ます。

単位として次の文字を指定できます。

KB(キロバイト)を指定する場合:“k”または“K”

MB(メガバイト)を指定する場合:“m”または“M”

単位を省略した場合はバイト単位での指定となります。1MBより大きい1024の倍数を指定します。

-xms xmsSize

メモリ割り当てプールの初期値を設定します。

本オプションを省略した場合は、デフォルト値(512m)に設定されます。

指定値が2624KB未満の場合は、CEPエンジンの起動時にエラーメッセージが出力されて起動に失敗します。

単位として次の文字を指定できます。

KB(キロバイト)を指定する場合:“k”または“K”

MB(メガバイト)を指定する場合:“m”または“M”

単位を省略した場合はバイト単位での指定となります。1MBより大きい1024の倍数を指定します。

-xxmp permSize

Permanent世代領域の 大値を設定します。

本オプションを省略した場合は、デフォルト値(192m)に設定されます。

指定値が20.75MB未満の場合は、20.75MBに設定されます。

単位として次の文字を指定できます。

KB(キロバイト)を指定する場合:“k”または“K”

MB(メガバイト)を指定する場合:“m”または“M”

単位を省略した場合はバイト単位での指定となります。1MBより大きい1024の倍数を指定します。

-e engine_name

JVMオプションを設定するCEPエンジン名を指定します。

終了ステータス

以下のステータスが返されます。

0

正常終了

8

異常終了

- 175 -

Page 185: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

注意

動作中のCEPエンジンに対しても本コマンドを実行可能ですが、設定を反映させるには、対象CEPエンジンの再起動が必要です。

正常終了時の出力例

CEPエンジン(CepEngine1)の高速フィルターのJVMオプションを設定する場合の出力例です。

# cepsetjvmopt filter -xmx 5120m -xms 256m -xxmp 96m -e CepEngine1 <ENTER>

Command cepsetjvmopt executed successfully.

8.9 cepstarteng名前

cepstarteng - CEPエンジンの起動

形式

cepstarteng [-e engine_name]

機能説明

CEPエンジンを起動します。

引数

-e engine_name

起動するCEPエンジン名を指定します。

構成しているCEPエンジンが1つだけの場合は、本オプションを省略できます。

本オプションを省略した場合、構成済みのCEPエンジンが2個以上存在していると、エラーメッセージが出力されて起動に失敗

します。

終了ステータス

以下のステータスが返されます。

0

正常終了

8

異常終了

注意

・ 本コマンドを実行する前に、cepdeployrscコマンドを使用してイベントタイプ定義を1個以上配備しておく必要があります。イベントタ

イプ定義が配備されていない場合は、CEPエンジンの起動時にエラーメッセージが出力されて起動に失敗します。

・ RDB連携やTerracotta連携を行っている場合、本コマンドの実行前に、連携先のサーバが起動している必要があります。連携先の

サーバが停止している場合は、CEPエンジンの起動時にエラーメッセージが出力されて起動に失敗します。

- 176 -

Page 186: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

・ 本コマンドはCEPエンジンの起動が完了するまで監視し、起動完了を確認できた場合に正常終了します。

・ 本コマンド実行から180秒以内に起動が完了しない場合は、CEPエンジンを強制停止します。そこから180秒以内に強制停止が完

了した場合は、起動処理がタイムアウトした旨のメッセージを出力して本コマンドは異常終了します。逆に、180秒以内に強制停止

が完了しない場合は、強制停止に失敗したメッセージを出力して本コマンドは異常終了します。

正常終了時の出力例

CEPエンジン(CepEngine1)を起動する場合の出力例です。

$ cepstarteng -e CepEngine1 <ENTER>

Command cepstarteng executed successfully.

異常終了時の出力例

存在しないCEPエンジンを起動しようとした場合の出力例です。

$ cepstarteng -e CepEngine2 <ENTER>

An incorrect value was entered. Reason=(The engine does not exist.)

Command cepstarteng execution failed.

本例のエラーメッセージには、以下の情報が付加されます。

Reason

エラー原因(CEPエンジンの起動に失敗した理由)

8.10 cepstartserv名前

cepstartserv - CEPサービスの起動

形式

cepstartserv

機能説明

CEPサービスを起動します。CEPサービスの実体を構成する、複数のサービスを一括起動します。

既に起動済みサービスがある場合、その起動処理をスキップします。

本コマンドで起動するサービスは以下のとおりです。

- Interstage Java EE DASサービス

- Interstage Java EE Node Agentサービス

- Interstage管理コンソール

- Interstage HTTP Server

- PostgreSQL

- Apache Tomcat

- 177 -

Page 187: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

引数

なし

終了ステータス

以下のステータスが返されます。

0

正常終了

8

異常終了

注意

・ CEPサービスを構成するサービスが一つでも失敗した場合、エラーメッセージが出力されてCEPサービスの起動に失敗します。CEPサービスの起動を完了させるためには、エラーの原因を取り除いた後、再度コマンドを実行してください。

・ 本コマンドの一括起動には、CEPエンジンは含まれません。

・ BDCEPはCEPエンジンのリソース利用状況の取得処理に、cronを利用しています。本コマンドではcronの起動は行いません。通

常、cronはOS起動時に自動的に起動します。手動でのcronの起動については、「6.3.3 修正の適用」を参照してください。

正常終了時の出力例

すべてのサービスの起動が成功した場合の出力例です。

# cepstartserv <ENTER>

Starting Interstage Java EE DAS service.

ijdasstart: INFO: ijdas10000: Interstage Java EE DAS service has started.

Name Status

-----------------------------------------

Interstage Java EE DAS started

Starting Interstage Java EE Node Agent service.

ijnastart: INFO: ijna10000: Interstage Java EE Node Agent service has started.

Name Status

-----------------------------------------

Interstage Java EE Node Agent started

Starting Interstage Management Console.

UX:ismngconsolestart: INFO: is40041: The service has been activated normally.

Starting Interstage HTTP Server.

UX:IHS: INFO: ihs01000: The command terminated normally.

Starting PostgreSQL.

su - bdcep_postgres -c "/opt/FJSVcep/postgres/packages/FJSVpgs83/bin/pg_ctl -D /var/opt/FJSVcep/postgres/data -w start"

waiting for server

to start...LOG: database system was shut down at 2011-11-21 15:03:21 JST

LOG: database system is ready to accept connections

LOG: autovacuum launcher started

done

server started

Starting Apache Tomcat.

/etc/init.d/FJSVcep-rest start

- 178 -

Page 188: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

Starting Tomcat: [ OK ]

Command cepstartserv executed successfully.

異常終了時の出力例

Interstage Java EE DASサービスを開始できない場合の出力例です。

# cepstartserv <ENTER>

Starting Interstage Java EE DAS service.

ERROR: ijdas10002: Interstage Java EE DAS service cannot be started.

Command cepstartserv execution failed.

8.11 cepstopeng名前

cepstopeng - CEPエンジンの停止

形式

cepstopeng [-e engine_name]

機能説明

CEPエンジンを停止します。

引数

-e engine_name

停止するCEPエンジン名を指定します。

構成しているCEPエンジンが1つだけの場合は、本オプションを省略できます。

本オプションを省略した場合、構成済みのCEPエンジンが2個以上存在していると、エラーメッセージが出力されて停止に失敗

します。

終了ステータス

以下のステータスが返されます。

0

正常終了

8

異常終了

注意

本コマンドはCEPエンジンの停止が完了するまで監視し、停止完了を確認できた場合に正常終了します。

所定時間内(180秒以内)に停止が完了しない場合は、エラーメッセージが出力されてタイムアウトで失敗します。

正常終了時の出力例

- 179 -

Page 189: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

CEPエンジン(CepEngine1)を停止する場合の出力例です。

$ cepstopeng -e CepEngine1 <ENTER>

Command cepstopeng executed successfully.

異常終了時の出力例

所定時間内に停止処理が完了しなかった場合(タイムアウトが発生した場合)の出力例です。

$ cepstopeng -e CepEngine2 <ENTER>

ERROR: cep30203e: Failed to stop Collection Engine. EngineId=(CepEngine2) JobId=(CepEngine2-cepjobnet-

20120710130118-CepEngine2) Reason=(A timeout occurred. (localhost_FRT))

Command cepstopeng execution failed.

見やすさのため、上の例では長い行(2行目)の途中に改行を入れています。実際には改行は入りません。

本例のエラーメッセージには、以下の情報が付加されています。

EngineId

対象のCEPエンジン名です。

JobId

ジョブIDです。以下形式の文字列になります。

CEPエンジン名-cepjobnet-CEPエンジン起動日時(yyyyMMddHHmmss)-CEPエンジン名

Reason

エラー詳細を示す文字列(CEPエンジンの停止に失敗した理由)です。

8.12 cepstopserv名前

cepstopserv - CEPサービスの停止

形式

cepstopserv

機能説明

CEPサービスを停止します。CEPサービスの実体を構成する、複数のサービスを一括で停止します。

既に停止済みサービスがある場合、そのサービスの停止処理をスキップします。

また、起動済みのCEPエンジンについても停止します。

本コマンドで停止するサービスは以下のとおりです。

- CEPエンジン

- Apache Tomcat

- PostgreSQL

- Interstage HTTP Server

- Interstage管理コンソール

- Interstage Java EE Node Agentサービス

- 180 -

Page 190: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

- Interstage Java EE DASサービス

- Interstage

引数

なし

終了ステータス

以下のステータスが返されます。

0

正常終了

8

異常終了

ポイント

本コマンドを実行することで、起動中のすべてのCEPエンジンが停止します。

注意

・ 一つ以上のサービスの停止に失敗した場合は、エラーメッセージが出力されてCEPサービスの停止に失敗します。CEPサービス

の停止を完了させるためには、エラーの原因を取り除いた後、再度コマンドを実行してください。

・ BDCEPはCEPエンジンのリソース利用状況の取得処理に、cronを利用しています。本コマンドではcronの停止は行いません。cronの停止については、「6.3.3 修正の適用」を参照してください。

・ 本コマンド実行後に再度本コマンドを実行した場合に、以下のメッセージが出力されますが、CEPエンジンおよびApache Tomcatが停止状態であることを示しており、対処は不要です。

Stopping Engines.

asadmin: ERROR: ISJEE_OM2997: Unable to connect to admin-server at given host: [localhost] and port:

[12001]. Please check if this server is up and running and that the host and port provided are corr

ect.

asadmin: ERROR: ISJEE_CLI137: Command list-clusters failed.

Stopping Apache Tomcat.

/etc/init.d/FJSVcep-rest stop

Shutting down Tomcat: [失敗]

見やすさのため、上の例では長い行(2、3行目)の途中に改行を入れています。実際には改行は入りません。

正常終了時の出力例

すべてのサービスの停止が成功する場合の出力例です。

# cepstopserv <ENTER>

Stopping Engines.

CEP Engine is not started. EngineId=(CepEngine)

Command cepstopeng executed successfully.

Stopping Apache Tomcat.

- 181 -

Page 191: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

/etc/init.d/FJSVcep-rest stop

Shutting down Tomcat: [ OK ]

Stopping PostgreSQL.

su - bdcep_postgres -c "/opt/FJSVcep/postgres/packages/FJSVpgs83/bin/pg_ctl -D /var/opt/FJSVcep/postgres/data stop"

waiting for server to shut down.... done

server stopped

Stopping Interstage HTTP Server.

UX:IHS: INFO: ihs01000: The command terminated normally.

Stopping Interstage Management Console.

UX:ismngconsolestop: INFO: is40042: The service has been terminated normally.

Stopping Interstage Java EE Node Agent service.

ijnastop: INFO: ijna10001: Interstage Java EE Node Agent service has stopped.

Name Status

-----------------------------------------

Interstage Java EE Node Agent stopped

Stopping Interstage Java EE DAS service.

ijdasstop: INFO: ijdas10001: Interstage Java EE DAS service has stopped.

Name Status

-----------------------------------------

Interstage Java EE DAS stopped

Stopping Interstage.

UX:isstop: 情報: is30160:INTERSTAGEを正常に停止しました

Command cepstopserv executed successfully.

異常終了時の出力例

Interstage Java EE DASサービスを停止できない場合の出力例です。

# cepstopserv <ENTER>

(途中省略)

Stopping Interstage Java EE DAS service.

ERROR: ijdas10003: Interstage Java EE DAS service cannot be stopped.

Command cepstopserv execution failed.

8.13 cepundeployrsc名前

cepundeployrsc - 開発資産の配備解除

形式

cepundeployrsc resource [-e engine_name] -n resource_id

機能説明

配備済みの開発資産を配備解除します。

配備解除する開発資産の種別(イベントタイプ定義/ルール定義/マスタ定義/RDB参照定義/SOAPリスナ定義)を指定しま

す。

コマンド実行時は、配備解除の実施を確認する問い合わせが行われます。yを入力して<ENTER>、または単に<ENTER>で配備

解除が実行されます。また、nもしくはqを入力して<ENTER>で実行をキャンセルできます。

- 182 -

Page 192: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

問い合わせの例(イベントタイプ定義の場合)

Are you sure you want to undeploy the event type definition?(default: y) [y,n,q]:

引数

resource

開発資産の種別を指定します。

eventtype

イベントタイプ定義

rule

ルール定義

master

マスタ定義

rdb_ref

RDB参照定義

listener

SOAPリスナ定義

-e engine_name

配備解除する開発資産が配備されているCEPエンジン名を指定します。

構成しているCEPエンジンが1つだけの場合は、本オプションを省略できます。

本オプションを省略した場合、構成済みのCEPエンジンが2個以上存在していると、エラーメッセージが出力されて配備解除に

失敗します。

-n resource_id

配備解除する開発資産の開発資産IDを指定します。

終了ステータス

以下のステータスが返されます。

0

正常終了

8

異常終了

注意

配備解除対象のCEPエンジンが起動中の場合は、配備解除はできません。

- 183 -

Page 193: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

正常終了時の出力例

CEPエンジン(CepEngine1)に配備されているイベントタイプ定義を配備解除する場合の出力例です。

$ cepundeployrsc eventtype -e CepEngine1 -n EVENT_01 <ENTER>

Are you sure you want to undeploy the event type definition?(default: y) [y,n,q]:y <ENTER>

Command cepundeployrsc executed successfully.

異常終了時の出力例

実行中のCEPエンジン(CepEngine2)に配備されているイベントタイプ定義を配備解除しようとした場合の出力例です。

$ cepundeployrsc eventtype -e CepEngine2 -n EVENT_02 <ENTER>

Are you sure you want to undeploy the event type definition?(default: y) [y,n,q]:y <ENTER>

Because the definition is used, it cannot be deleted. Definition=(instream) Id=(EVENT_02-CepEngine2)

Command cepundeployrsc execution failed.

本例のエラーメッセージには、以下の情報が付加されます。

Id

配備解除対象の開発資産ID、および対象のCEPエンジン名

- 184 -

Page 194: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

第9章 定義ファイルリファレンス

本章では、Interstage Big Data Complex Event Processing Server (以降、BDCEP)で使用する定義ファイルについて説明します。

9.1 CEPエンジンの定義

CEPエンジンを構成するための定義ファイル(エンジン構成ファイル)について説明します。

エンジン構成ファイルは、初期CEPエンジン用としてインストール時に自動的に作成されます(/etc/opt/FJSVcep/cep/sample_eng.xml)。

構成内容を変更する場合は、このファイルを複製して編集してください。

エンジン構成ファイルを指定してcepconfigengコマンドを実行することで、CEPエンジンの作成・削除・設定変更を行います。

ポイント

・ エンジン構成ファイルは、XML形式のテキストファイルです。

・ 設定項目はXMLの要素や属性の値として指定します。

・ エンジン構成ファイルの文字エンコーディングはUTF-8です。

注意

初期CEPエンジンのエンジン構成ファイルを編集してCEPエンジンの作成・設定変更を行うことも可能ですが、編集ミスによる構成内容

の消失を防ぐために、初期CEPエンジンのエンジン構成ファイルを編集しないことを推奨します。

9.1.1 エンジン構成ファイル

エンジン構成ファイルの設定内容について説明します。

subSystemConfigをルート要素とするXMLファイルであり、1つのCEPエンジンの構成情報をengineConfig要素内に記述します。複数

のCEPエンジンを作成する場合は、1つのエンジン構成ファイルにすべてのCEPエンジンの構成を記述する必要があります(engineConfig要素を連続して記述します)。

また、入力アダプターでロギング機能を使用する場合には、engineConfig要素の中に子要素loggingを記述します。

エンジン構成ファイルに設定する項目は以下のとおりです。

要素または属性 項目名 説明 設定可能文字

/範囲

必須

/任意

id

※engineConfig要素の属

CEPエンジン

CEPエンジンを一意に識別するための

IDを指定します。

半角英数字、ア

ンダースコア(_)

20文字以内

注:先頭のみ半角

英字です。

必須

type(*1)

ロギング種別 ロギング機能におけるログ出力先を指

定します。

bdpp:Hadoopシステムに出力

file:エンジンログに出力

(左記参照) (*2)

directory

(*1)

ディレクトリ名 ログ出力先のHadoopシステムの、ディ

レクトリ名を指定します。

以下のどちらかを指定します。

半角英数字、ス

ラッシュ(/)

1023文字以内

(*3)

- 185 -

Page 195: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

要素または属性 項目名 説明 設定可能文字

/範囲

必須

/任意

・ パスでは無く、名前のみを指定しま

す。

・ 「/」のみを指定します。

注:名前を指定す

る場合は半角英

数字のみ

loggingMaxOpenFile

(*1)

ロギングファイ

ルオープン数

Hadoopシステムに対して同時にオープ

ンするファイル数を指定します。

省略時は6になります。

1~122 (*4)

loggingRotationCycle

(*1)

ロギングサイク

ル時間

イベントログのファイルがオープンされ

てから、そのファイルが分析可能なファ

イル(拡張子が.done)にリネームされる

までの時間を指定します。

省略時は300(秒)になります。

1~2592000

(単位は秒)

(*4)

socketAdapterPort Socketアダプ

ターポート

Socketアダプターで使用する受信ポー

ト番号を指定します。

1~65535 (*5)

(*1) logging要素の子要素です。

(*2) ロギング機能を使用する場合に必須です。

(*3) ロギング機能を使用し、かつ、ロギング種別が“bdpp”の場合に必須です。

(*4) ロギング機能を使用し、かつ、ロギング種別が“bdpp”の場合に任意で指定します。

(*5) 入力アダプターでSocket通信を使用する場合に指定します。

ポイント

・ Hadoopシステム上のログ出力先(パス)については、イベントタイプ定義で指定します。そのため、ロギング種別に“bdpp”を指定し

た場合に、ログ出力先(パス)を指定する必要はありません。

・ ログ出力先に“bdpp”を指定する場合は、事前にInterstage Big Data Parallel Processing Server(以降、BDPP)のセットアップが必要

です。セットアップの詳細については、「4.4.2 Hadoop連携のセットアップ」を参照してください。

注意

・ エンジン構成ファイルに記述できるCEPエンジン(engineConfig要素)数の上限は5個です。

・ CEPエンジン名には、エンジン構成ファイル中の他のCEPエンジン名と重複しない名前を指定してください。エンジン構成ファイル

中の大文字・小文字が異なるCEPエンジン名は、重複する名前とみなされます。次は重複する名前を指定する例です。

<engineConfig id="CEPEngine">

:

</engineConfig>

<engineConfig id="CepEngine">

:

</engineConfig>

- 186 -

Page 196: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

・ 既存のCEPエンジン名と、大文字・小文字が異なる名前を指定しないでください。

次は、既存のCEPエンジン名が「CEPEngine」の状態で、大文字・小文字が異なる名前「CepEngine」を指定する例です。

・ Socketアダプターポートには、システムで利用していないポート番号を指定してください。

・ 複数のCEPエンジンのSocketアダプターポートに同一のポート番号を指定することはできますが、それらのCEPエンジンを同時に

起動することはできません。

2つのCEPエンジン(CEPEngine1, CEPEngine2)を構成する場合

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<subSystemConfig xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1">

<engineConfig id="CEPEngine1">

<logging>

<type>bdpp</type>

<directory>hadoop</directory>

<loggingMaxOpenFile>6</loggingMaxOpenFile>

<loggingRotationCycle>300</loggingRotationCycle>

</logging>

<socketAdapterPort>9600</socketAdapterPort>

</engineConfig>

<engineConfig id="CEPEngine2">

<logging>

<type>file</type>

</logging>

<socketAdapterPort>9601</socketAdapterPort>

</engineConfig>

</subSystemConfig>

本例では、以下の設定内容でCEPエンジンを構成します。

CEPEngine1

ロギング機能を使用し、Hadoopシステム(ディレクトリ名:hadoop)にイベントを記録します。ロギングファイルオープン数は6、ロギン

グサイクル時間は300秒を指定しています。

9600ポートで待ち受けるSocketアダプターを使用します。

CEPEngine2

ロギング機能を使用し、エンジンログにイベントを記録します。

9601ポートで待ち受けるSocketアダプターを使用します。

9.2 開発資産の定義

CEPサービスが提供する各種機能を利用するための定義ファイル(開発資産)について説明します。

- 187 -

Page 197: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

開発資産には以下に示す5種類があり、それぞれ開発資産IDという識別子を持ちます。定義種別ごとに、開発資産IDは一意である必

要があります。

定義ファイルを指定してcepdeployrscコマンドを実行することで、CEPエンジンに開発資産を配備します。また、cepundeployrscコマンド

を実行することで、開発資産の配備を解除します。

定義種別 定義概要 各機能における使用有無 必須

/任意入力アダプ

ター

高速フィル

ター

複合イベント

処理

出力アダプ

ター

イベントタイプ定義 入力イベントのデータ構造

を定義します。

また、入力アダプターにお

けるロギング機能を設定し

ます。

使用 使用 使用 (*1)

ルール定義 高速フィルタールールおよ

び複合イベント処理ルール

を記述します。

使用 使用 使用 (*2)

マスタ定義 高速フィルター機能で使用

するマスタデータを設定し

ます。

使用 (*3)

RDB参照定義 RDB連携機能で参照する

データベースの接続先情

報を設定します。

使用 (*4)

SOAPリスナ定義 SOAP通信を使用してユー

ザー開発Webサービスへイ

ベントを通知する際の送信

先情報を設定します。

使用 (*5)

(*1) 1つ以上の開発資産を配備する必要があります。

(*2) 高速フィルター機能または複合イベント処理を使用する場合に配備します。

(*3) 高速フィルター機能において、マスタデータを参照する場合に配備します。

(*4) 複合イベント処理機能において、RDB連携を行う場合に配備します。

(*5) 出力アダプターにおいて、SOAPリスナを使用する場合に配備します。

ポイント

・ 各定義ファイルは、すべてXML形式のテキストファイルです(マスタデータを除く)。

・ 設定項目はXMLの要素や属性の値として指定します。

・ 各定義ファイルの文字エンコーディングはUTF-8です。

9.2.1 イベントタイプ定義ファイル

イベントタイプ定義を記述するための設定ファイル(イベントタイプ定義ファイル)について説明します。

eventTypeをルート要素とするXMLファイルであり、イベントタイプ毎にイベントタイプ定義ファイルを作成します。イベントデータの形式

(CSV形式またはXML形式)によって記述する項目が異なります。

イベントタイプ定義ファイルに設定する項目は以下のとおりです。

- 188 -

Page 198: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

要素または属性 項目名 説明 設定可能文字

/範囲

必須

/任意

id

※eventType要素の

属性

開発資産

ID配備先のCEPエンジンで一意となるIDを指

定します。

高速フィルタールールで指定するイベント

タイプ名、複合イベント処理ルールで指定

するイベントストリーム名として利用します。

半角英数字、アン

ダースコア(_)、ハイ

フン(-)

注:先頭のみ半角

英字です。

39文字以内

必須

comment コメント この定義の説明を記述します。 1000文字以内 任意

type 形式 イベントデータの形式を指定します。

XML:XML形式のイベント

CSV:CSV形式のイベント

(左記参照) 必須

xmlSchema XMLス

キーマ

イベントデータの構造を表すスキーマ

(XMLスキーマ)を指定します。

XMLスキーマ言語で記述します。そのた

め、マークアップの指定として解釈されな

いようにエスケープする必要があります。な

お、記述を容易にするため、エスケープす

る代わりにCDATAセクションを用いて記述

することを推奨します。

1048576文字以内 (*1)

root ルート要素 イベントのルート要素の名前を指定します。

ルート要素はXMLスキーマで定義された

要素の1つです。

すべてのイベントタイプ定義で一意となる

ルート要素名を指定します。

512文字以内 (*1)

csvColumn CSVカラム

情報

イベントデータの構造を表すカラム情報を

指定します。

1つ以上のcolumn要素を記述します(後

述)。

column要素(後述)に従います。

column要素の数に

特に上限はありま

せん。

(*2)

useLogging ロギング使

用有無

入力アダプターから受け取った高速フィル

ター処理前のイベントに対するロギング機

能を利用するかどうかを指定します。

true:使用する

false:使用しない

(左記参照) 必須

loggingTableName ログ格納領

イベントを格納するログ格納領域を絶対パ

スで指定します。

入力アダプターで受け取ったイベントが格

納されます。

エンジンログにイベントを記録する場合(エ

ンジン構成ファイルのtype要素にfileを指

定した場合)であっても、イベントを識別す

るための、スラッシュ(/)から始まる仮想的な

パス名(例:“/イベントタイプID”)を指定し

てください。

255文字以内 (*3)

useCep 複合イベン

ト処理の使

用有無

複合イベント処理を使用するかどうかを制

御します。

true:使用する

(左記参照) 必須

- 189 -

Page 199: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

要素または属性 項目名 説明 設定可能文字

/範囲

必須

/任意

false:使用しない

(*1) 形式に“XML”を指定した場合は必須です。

(*2) 形式に“CSV”を指定した場合は必須です。

(*3) ロギング機能を使用する場合は必須です。

形式に“CSV”を指定した場合、以下に示すCSVカラム情報をcsvColumn要素内に記述します。

要素または属性 項目名 説明 設定可能文字

/範囲

必須

/任意

column 列 イベント(CSV形式)の列数に応じて複数記

述します。

各column要素の定義順は、イベントデータ

の各項目の並び順と同じにします。

(空要素) 必須

name

※column要素の属

項目名 CSVの列の項目名を指定します。

高速フィルタールールで指定する項目名、

複合イベント処理ルールで指定するプロパ

ティ名として利用します。

「9.6 項目名、タグ

名、属性名に指定

可能な文字」を参

照してください。

必須

type

※column要素の属

項目の型 CSVの列のデータ型を指定します。

string:文字列

boolean:ブール値 (true/false)

byte:8ビット符号付き整数

int:32ビット符号付き整数

long:64ビット符号付き整数

float:32ビット浮動小数

double:64ビット倍精度浮動小数

(左記参照) 必須

CSVの列のデータタイプは、複合イベント処理ルールでは次のように変換されます。

CSVの列のデータタイプ 複合イベント処理ルールのデータタイプ

string string

boolean bool/boolean

byte byte

int int/integer

long long

float float

double double

- 190 -

Page 200: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

ポイント

高速フィルター機能を使用する場合、抽出処理(フィルタリング)のみを使用する場合を除き、複合イベント処理に渡されるイベントと入

力イベントのイベントタイプは異なります。この場合、複合イベント処理用にイベントタイプ定義を別途配備する必要があります。

注意

・ 1つのCEPエンジンに配備できるイベントタイプ定義数の上限は32です。

・ XMLスキーマにはXML宣言を含めることも含めないこともできますが、XML宣言を含める場合にはxmlSchema開始タグとXML宣

言の間に改行や空白文字を入れないでください。

・ XMLスキーマではsequence要素によって要素の順序を定義できますが、入力イベントのXMLの要素がsequence要素で指定され

ている順序にしたがっていなくてもエラーとはなりません。

・ イベントタイプ定義を配備するCEPエンジンにかかわらず、すべてのイベントタイプ定義で一意となるルート要素名を指定してくだ

さい。

・ 複合イベント処理の使用有無(useCep)について

入力アダプターによるロギング機能のみを使用する場合にfalseを設定します。運用を開始する前に、入力イベントデータの内容を

確認する用途を想定しています。

・ 各column要素の定義順は、イベントデータの各項目の並び順と同じにします。

・ cepgetrscコマンドを使用して開発資産の詳細表示を行う場合、XMLスキーマはCDATAセクションを使用した形式で表示されま

す。

XML形式を選択した記述例

対象のイベントデータ(XML)

<?xml version="1.0" encoding="UTF-8"?><messagedata xmlns="http://dataaccesscontrol.sspf.fujitsu.com/na

mespace/xmlmessage"><memberID>MEM0001</memberID><areaID>1010</areaID><status>1</status></messagedata>

(注) 見やすさのため途中に改行を入れていますが、実際には改行は入りません。

イベントタイプ定義

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<eventType xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="EVENTTYPE_01">

<comment>イベントタイプ定義_01</comment>

<type>XML</type>

<xmlSchema>

<![CDATA[

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"

xmlns="http://dataaccesscontrol.sspf.fujitsu.com/namespace/xmlmessage"

targetNamespace="http://dataaccesscontrol.sspf.fujitsu.com/namespace/xmlmessage">

<xs:element name="messagedata">

<xs:complexType>

<xs:sequence>

<xs:element name="memberID" type="xs:string" />

<xs:element name="areaID" type="xs:string" />

<xs:element name="status" type="xs:string" />

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:schema>

]]>

- 191 -

Page 201: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

</xmlSchema>

<root>messagedata</root>

<useLogging>true</useLogging>

<loggingTableName>/echonet</loggingTableName>

<useCep>true</useCep>

</eventType>

CSV形式を選択した記述例

対象のイベントデータ(CSV)

"MEM0001","1010","1"

イベントタイプ定義

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<eventType xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="EVENTTYPE_02">

<comment>イベントタイプ定義_02</comment>

<type>CSV</type>

<xmlSchema></xmlSchema>

<csvColumn>

<column name="memberID" type="string" />

<column name="areaID" type="string" />

<column name="status" type="string" />

</csvColumn>

<useLogging>false</useLogging>

<useCep>true</useCep>

</eventType>

本例では、以下のイベントタイプを定義します。

EVENTTYPE_01

入力アダプターにより、イベントデータが/echonet配下へログ出力されます。

このイベントデータは、複合イベント処理に渡されます(高速フィルター機能でフィルタリングされない場合に限る)。

EVENTTYPE_02

入力アダプターでは、イベントデータはログ出力されません。

このイベントデータは、複合イベント処理に渡されます(高速フィルター機能でフィルタリングされない場合に限る)。

9.2.2 ルール定義ファイル

ルール定義を記述するための設定ファイル(ルール定義ファイル)について説明します。

ruleをルート要素とするXMLファイルであり、高速フィルター機能と複合イベント処理機能のルールを記述します。

ルール定義ファイルに設定する項目は以下のとおりです。

要素または属性 項目名 説明 設定可能文字

/範囲

必須

/任意

id

※rule要素の属性

開発資産ID 配備先のCEPエンジンで一意となるIDを

指定します。

半角英数字、アンダー

スコア(_)、ハイフン(-)

※先頭のみ半角英字

です。

39文字以内

必須

comment コメント この定義の説明を指定します。 1000文字以内 任意

- 192 -

Page 202: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

要素または属性 項目名 説明 設定可能文字

/範囲

必須

/任意

filter フィルタールー

高速フィルタールールを記述します。

マークアップの指定として解釈されるよう

な記述がある場合は、CDATAセクション

等を用いて記述します。

1048576文字以内 (*1)

statements 複合イベント処

理ルール

複合イベント処理ルールを記述します。

マークアップの指定として解釈されるよう

な記述がある場合は、CDATAセクション

等を用いて記述します。

1048576文字以内 (*2)

(*1) 高速フィルタールールを記述する場合に指定します。

(*2) 複合イベント処理ルールを記述する場合に指定します。

ポイント

・ SkipChar(検索対象外として取り扱う文字列)などのフィルタールールのオプションを設定する場合は、フィルタールールの先頭に

記述する必要があります。

フィルタールールのオプションの詳細については、「開発リファレンス」の「第2章 フィルタールール言語リファレンス」を参照してく

ださい。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<rule xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="RULE_02">

<comment>ルール定義_02</comment>

<filter>

<![CDATA[

@SkipChar("\n")

@SeparateChar("\t")

@ANKmix(true)

@KNJmix(true)

on EVENTTYPE_02 {

(中略)

}

]]>

</filter>

</rule>

・ 文字数の許容範囲内であれば、1つのルール定義に膨大なルールを記述できますが、ルールが複雑になることで保守性・参照性

が悪くなる場合があります。高速フィルター用と複合イベント処理用のルール定義をそれぞれ作成する、意味のあるまとまりでルー

ル定義を小分けにする、などを考慮して作成してください。

注意

・ 1つのCEPエンジンに配備できるルール定義数の上限は32です。

・ 1つのCEPエンジンに複数のルール定義を配備可能ですが、依存関係のある複合イベント処理ルール(例えば、insert into句でイ

ベントストリームを指定しているselect文と、そのイベントストリームを指定したfrom句をもつselect文)は1つのルール定義に記述して

ください。

・ cepgetrscコマンドを使用して開発資産の詳細表示を行う場合、フィルタールールおよび複合イベント処理ルールはCDATAセクショ

ンを使用した形式で表示されます。

- 193 -

Page 203: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

参照

・ フィルタールールの記述方法など詳細については、開発リファレンス「第2章 フィルタールール言語リファレンス」を参照してくださ

い。

・ 複合イベント処理ルール記述方法など詳細については、開発リファレンス「第1章 複合イベント処理言語リファレンス」を参照してく

ださい。

記述例

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<rule xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="RULE_01">

<comment>ルール定義_01</comment>

<filter>

<![CDATA[

on EVENTTYPE_01 {

if ($status == 'Walking') then output() as EVENTTYPE_01;

}

]]>

</filter>

<statements>

<![CDATA[

@SoapListener('LISTEN_01')

@DebugLogListener

select * from EVENTTYPE_01 where areaID = '1010';

]]>

</statements>

</rule>

本例では、以下のルールを記述しています。

高速フィルタールール

イベントタイプEVENTTYPE_01の入力イベントからstatusの項目内容(文字列)がWalkingのイベントを抽出し、複合イベント処理に

渡します。

複合イベント処理ルール

イベントタイプEVENTTYPE_01のイベントデータをSOAPリスナに通知し、同時にデバッグ情報をエンジンログに出力します。

9.2.3 マスタ定義ファイル

マスタ定義を記述するための設定ファイル(マスタ定義ファイル)について説明します。

masterをルート要素とするXMLファイルであり、マスタデータ毎にマスタ定義ファイルを作成します。マスタデータは、スキーマ情報ファ

イルと1つ以上のデータファイルで構成され、マスタ定義ファイルに紐付けます。

マスタデータは、マスタ定義を配備したCEPエンジンが起動する際に読み込まれます。

マスタ定義ファイルに設定する項目は以下のとおりです。

要素または属性 項目名 説明 設定可能文字

/範囲

必須

/任意

id 開発資産ID 配備先のCEPエンジンで一意

となるIDを指定します。

半角英数字、アンダースコア

(_)、ハイフン(-)必須

- 194 -

Page 204: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

要素または属性 項目名 説明 設定可能文字

/範囲

必須

/任意

※master要素の属

注:先頭のみ半角英字です。

39文字以内

comment コメント この定義の説明を指定します。 1000文字以内 任意

schemaFile スキーマ情報

ファイル

スキーマ情報ファイルを絶対パ

スで指定します。

1023バイト以内 必須

dataFile データファイル データファイルを絶対パスで指

定します。複数のデータファイ

ルが存在する場合は、dataFile要素を複数指定してください。

または、データファイルが配置

されているディレクトリを絶対パ

スで指定します。この場合、ディ

レクトリ直下のすべてのファイル

をデータファイルとして読込み

ます。

1023バイト以内

注:ディレクトリを指定する場合

は、ディレクトリ名とその配下の

ファイル名を合わせた 大長

が1023バイト以内となるように

設定してください。

必須

skipHeader スキップ指定 データファイルの先頭行に項

目名が記述されている場合な

どで、先頭行を読み飛ばしたい

場合に指定します。

true:先頭行をデータとみなし

ません(無視します)

false:先頭行をデータとみなし

ます(デフォルト)

(左記参照) 任意

スキーマ情報ファイルとデータファイルはCSV形式のテキストファイルです。CSV形式については、「9.7 利用可能なCSVの形式」を参

照してください。ファイルの文字エンコーディングはUTF-8です。

スキーマ情報ファイル

1つ以上の項目名を1レコードで記述します。

項目名に指定可能な文字については、「9.6 項目名、タグ名、属性名に指定可能な文字」を参照してください。

データファイル

1行がマスタデータの1エントリーに相当します。

各行には、スキーマ情報ファイルの項目に対応した値(データ)を記述します。

スキーマ情報の項目数よりデータの項目数が多い場合は、不正なデータとみなされます。

注意

・ 1つのCEPエンジンに配備できるマスタ定義数の上限は32です。

・ 1つのマスタ定義に指定できるdataFile要素数の上限は100です。データファイルが100個よりも多い場合は、任意のディレクトリに

データファイルを配置して、ディレクトリのパスを指定してください。

・ スキーマ情報ファイルの項目数よりもデータファイルの項目数が少ない場合、不足している項目には空文字列("")が指定されたも

のとみなします。データファイルの項目数が多い場合は、CEPエンジンの起動に失敗します。

- 195 -

Page 205: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

・ データファイルをディレクトリのパスで指定する場合、ディレクトリ直下に配置されている通常ファイルおよびシンボリックリンク(リン

ク先が通常ファイル)をデータファイルとして読込みます。サブディレクトリを除き、通常ファイル・シンボリックリンク以外のファイル

(名前付きパイプや特殊ファイルなど)を配置しないでください。

・ マスタデータはCEPエンジンの起動時にメモリ上に展開されます。そのため、マスタデータサイズに比例してメモリを消費します。

・ マスタデータを更新した場合、更新を反映させるには、CEPエンジンの再起動(停止→起動)またはcepdeployrscコマンドによるマ

スタデータの動的変更が必要です。

・ スキーマ情報ファイルとデータファイルに、エンジン実行ユーザーに対する読取り権を付与する必要があります。

・ スキーマ情報ファイルの例

/var/tmp/SchemaFile01.csv

"Kbn","Number","Code","Name","Value","Total","Biko"

・ データファイルの例

/var/tmp/MasterFile01.csv

"01","1001","AAA","ブロックA","1,000","1,000","備考:稟議番号 第4023号"

"02","1001","BBB","ブロックB","","1,200","備考:稟議番号 第4023号"

"03","1002","CCC","ブロックC","800","800","備考:稟議番号 第4023号"

・ マスタ定義ファイルの例

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<master xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="MASTER_01">

<comment>マスタ定義_01</comment>

<schemaFile>/var/tmp/SchemaFile01.csv</schemaFile>

<dataFile>/var/tmp/MasterFile01.csv</dataFile>

<skipHeader>false</skipHeader>

</master>

9.2.4 RDB参照定義ファイル

RDB参照定義を記述するための設定ファイル(RDB参照定義ファイル)について説明します。

databaseをルート要素とするXMLファイルであり、RDBサーバ毎にRDB参照定義ファイルを作成します。

RDB参照定義ファイルは、参照するRDBによって必要な項目が異なります。

表9.1 Symfoware Server (Nativeインタフェース)の場合

要素または属性 項目名 説明 設定可能文字

/範囲

必須/任意

id

※database要素

の属性

開発資産ID RDB参照定義を一意に識別するためのIDを指

定します。

複合イベント処理ルールで指定するデータベー

ス名として利用します。

半角英数字、アン

ダースコア(_)、ハイ

フン(-)

注:先頭のみ半角英

字です。

39文字以内

必須

comment コメント この定義の説明を指定します。 1000文字以内 任意

dbName データベース

データベース名を指定します。 半角英数字

注:先頭のみ半角英

字です。

必須

- 196 -

Page 206: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

要素または属性 項目名 説明 設定可能文字

/範囲

必須/任意

36文字以内

schema スキーマ名 スキーマ名を指定します。 半角英数字

注:先頭のみ半角英

字です。

36文字以内

必須

url データベース

URL次の値を指定します。

ホスト名またはIPアドレス:ポート番号

接続するサーバのホスト名がFQDN(FullyQualified Domain Name)形式の場合は、ドメイ

ン名を含まない名前を指定してください。

半角英数字、ハイフ

ン(-)、ピリオド(.)、コ

ロン(:)

512文字以内

必須

user アクセスID RDBサーバに接続するユーザー名を指定しま

す。

半角英数字

注:先頭のみ半角英

字です。

36文字以内

必須

password アクセスパス

ワード

RDBサーバに接続するユーザーのパスワードを

指定します。

cepgetrscコマンドで定義情報を参照する際に

は、“*****”に置き換えられて表示されます。

半角英数字と次の記

/%_#

512文字以内

必須

maxAge キャッシュ保持

期間

RDB参照結果をキャッシュする期間を指定しま

す(単位:秒)。

キャッシュを行わない場合は、要素を省略、空

の値を指定、または0を指定します。

0~2147483647の

範囲の整数値

任意

purgeInterval キャッシュ破棄

間隔

RDB参照結果のキャッシュを破棄する間隔を指

定します(単位:秒)。

この間隔で、キャッシュ保持期間を過ぎている

キャッシュの破棄を実施します。

キャッシュを行わない場合は、要素を省略また

は空の値を指定します。

1~2147483647の

範囲の整数値

任意

表9.2 Symfoware Server (Openインタフェース)およびPostgreSQLの場合

要素または属性 項目名 説明 設定可能文字

/範囲

必須/任意

id

※database要素

の属性

開発資産ID RDB参照定義を一意に識別するためのIDを指

定します。

複合イベント処理ルールで指定するデータベー

ス名として利用します。

半角英数字、アン

ダースコア(_)、ハイ

フン(-)

注:先頭のみ半角英

字です。

39文字以内

必須

comment コメント この定義の説明を指定します。 1000文字以内 任意

jdbcClass JDBCドライバ

クラス

JDBCドライバのクラスを指定します。

具体的には次の値を指定します。

半角英数字および

半角記号

1023文字以内

必須

- 197 -

Page 207: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

要素または属性 項目名 説明 設定可能文字

/範囲

必須/任意

org.postgresql.Driver

url データベース

URL接続するデータベースのURLを指定します。 半角英数字および

以下の半角記号

%:/?#[]@!$&'()

*+,;-._~

512文字以内

必須

user アクセスID RDBサーバに接続するユーザー名を指定しま

す。

512文字以内 必須

password アクセスパス

ワード

RDBサーバに接続するユーザーのパスワードを

指定します。

cepgetrscコマンドで定義情報を参照する際に

は、“*****”に置き換えられて表示されます。

512文字以内 必須

maxAge キャッシュ保持

期間

RDB参照結果をキャッシュする期間を指定しま

す(単位:秒)。

キャッシュを行わない場合は、要素を省略、空

の値を指定、または0を指定します。

0~2147483647の

範囲の整数値

任意

purgeInterval キャッシュ破棄

間隔

RDB参照結果のキャッシュを破棄する間隔を指

定します(単位:秒)。

この間隔で、キャッシュ保持期間を過ぎている

キャッシュの破棄を実施します。

キャッシュを行わない場合は、要素を省略また

は空の値を指定します。

1~2147483647の

範囲の整数値

任意

注意

・ cepgetrscコマンドで定義情報を参照する際には、アクセスパスワードは“*****”に置き換えられて表示されますが、データベース

URLにアクセスパスワードを直接入力しているとパスワードが画面にそのまま表示されます。セキュリティ上の理由からデータベー

スURLにはアクセスパスワードを直接入力しないようにしてください。

・ RDB参照定義ファイルにはパスワードを記載するため、セキュリティ上の理由からCEPエンジンへの配備が完了した後に定義ファ

イル内のアクセスパスワードの記述を削除する、もしくは定義ファイル自体を削除してください。

・ RDB参照定義ファイルをバックアップする場合においても、定義ファイル内のアクセスパスワードの記述を削除する、定義ファイル

全体を暗号化するなどパスワードを参照できないようにしてください。

RDB参照定義の定義例

各RDBに接続する場合の定義例です。各例では、RDBサーバ「RERDB01」のデータベース「MyDB」を参照した結果を1時間(3600秒)キャッシュに保持します。キャッシュは10分(600秒)ごとに保持期間を過ぎていないか確認します。

Symfoware Server (Nativeインタフェース)の場合の記述例

スキーマ名「user01」、ポート番号「26551」、アクセスID「user01」、およびアクセスパスワード「bdcep」で接続する例です。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<database xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="RDBREF_01">

- 198 -

Page 208: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

<comment>RDB参照定義_01</comment>

<dbName>MyDB</dbName>

<schema>user01</schema>

<url>RERDB001:26551</url>

<user>user01</user>

<password>bdcep</password>

<maxAge>3600</maxAge>

<purgeInterval>600</purgeInterval>

</database>

Symfoware Server (Openインタフェース)の場合の記述例

ポート番号「26500」、アクセスID「user01」、およびアクセスパスワード「bdcep」で接続する例です。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<database xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="RDBREF_01">

<comment>RDB参照定義_01</comment>

<jdbcClass>org.postgresql.Driver</jdbcClass>

<url>jdbc:postgresql://RERDB01:26500/MyDB</url>

<user>user01</user>

<password>bdcep</password>

<maxAge>3600</maxAge>

<purgeInterval>600</purgeInterval>

</database>

PostgreSQLの場合の記述例

ポート番号「26500」、アクセスID「user01」、およびアクセスパスワード「bdcep」で接続する例です。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<database xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="RDBREF_01">

<comment>RDB参照定義_01</comment>

<jdbcClass>org.postgresql.Driver</jdbcClass>

<url>jdbc:postgresql://RERDB01:26500/MyDB</url>

<user>user01</user>

<password>bdcep</password>

<maxAge>3600</maxAge>

<purgeInterval>600</purgeInterval>

</database>

9.2.5 SOAPリスナ定義ファイル

SOAPリスナ定義を記述するための設定ファイル(SOAPリスナ定義ファイル)について説明します。

soapListenerをルート要素とするXMLファイルであり、ユーザー開発Webサービス毎にSOAPリスナ定義ファイルを作成します。

SOAPリスナ定義ファイルに設定する項目は以下のとおりです。

要素または属性 項目名 説明 設定可能文字

/範囲

必須

/任意

id

※soapListener要素の属性

開発資産ID 配備先のCEPエンジンで一意となるIDを指定します。

複合イベント処理ルールで指定する出

力アダプター(SOAPリスナ)に利用しま

す。

半角英数字、アンダー

スコア(_)、ハイフン(-)

注:先頭のみ半角英字

39文字以内

必須

comment コメント この定義の説明を指定します。 1000文字以内 任意

url 接続URL ユーザー開発Webサービスの接続URLを指定します。

512文字以内

半角英数字、半角記号

必須

- 199 -

Page 209: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

要素または属性 項目名 説明 設定可能文字

/範囲

必須

/任意

nameSpace 名前空間 ユーザー開発Webサービスへ送信す

るSOAPメッセージの本体(SOAPボ

ディ)の名前空間を指定します。

512文字以内 必須

prefix 名前空間の接

頭辞

SOAPメッセージの本体(SOAPボディ)

で使用する名前空間プレフィックスを指

定します。

省略時は“ns”が使用されます。

20文字以内 任意

method ルート要素 SOAPメッセージの本体(SOAPボディ)

のルート要素名を指定します。

512文字以内 必須

注意

1つのCEPエンジンに配備できるSOAPリスナ定義数の上限は32です。

記述例

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<soapListener xmlns="urn:xmlns-fujitsu-com:cspf:bdcep:v1" id="LISTEN_01">

<comment>SOAPリスナ定義_01</comment>

<url>http://192.168.11.249/WebServWAR/MyApp1Service</url>

<nameSpace>http://webservice/</nameSpace>

<prefix>ns</prefix>

<method>cep</method>

</soapListener>

本例では、接続先URLが“http://192.168.11.249/WebServWAR/MyApp1Service”であるユーザー開発Webサービスにルート要素が

cepであるSOAPボディを含むメッセージ(イベント)を通知することを定義します。

9.3 Terracotta連携の設定ファイル

Terracotta連携を利用する際に必要な設定ファイルについて説明します。Terracotta連携では次の2つの設定ファイルが必要です。

・ Terracottaのキャッシュの構成情報ファイル

・ Terracotta連携機能設定ファイル

9.3.1 Terracottaのキャッシュの構成情報ファイル

Terracottaのキャッシュ(Ehcacheと呼びます)をVirtual Data Window機能により利用するためには、Ehcacheの構成情報ファイル

(ehcache.xml)をCEPサーバに配置しておく必要があります。Ehcacheの構成情報ファイルは以下の場所に配置します。

/etc/opt/FJSVcep/config/ehcache.xml

Ehcacheの構成情報ファイルに関する詳細はTerracottaのマニュアルを参照してください。以下では、Terracotta連携機能で必須となる

設定項目について説明します。

- 200 -

Page 210: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

要素または属性 説明

ehcache 構成情報ファイルのルート要素です。

name キャッシュを作成するときに指定した、キャッシュマネージャーの名

前を指定します。

maxBytesLocalHeap 使用するデータプールのサイズです。

terracottaConfig Terracottaサーバを定義するための要素です。

url Terracottaサーバを「ホスト名またはIPアドレス:ポート番号」の形式

で、カンマ(,)区切りで列挙します。

cache キャッシュを定義するための要素です。

1つのehcache要素内に複数のcache要素を記述できます。

name キャッシュの名前です。vdw:ehcacheで指定するキャッシュ名になり

ます。

terracotta Terracottaサーバを使用するために定義します。

nonstop ノンストップキャッシュとして使用するために定義します。

immediateTimeout ネットワーク切断を検出した時点でタイムアウトの対応を行うかどうか

指定します。値にtrueを指定します。

timeoutMillis タイムアウトになるまでの待機時間を指定します。

timeoutBehavior タイムアウトが発生したときの動作を指定します。

type 値にexceptionを指定します。

searchable キャッシュに対して検索を実施するために定義します。

以下に、2台のTerracottaサーバ(192.168.1.1と192.168.1.2)上に構成されたキャッシュCache001をTerracotta連携で使用する場合の例

を示します。

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

<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd"

name="SearchConfig"

maxBytesLocalHeap="64M">

<terracottaConfig url="192.168.1.1:9510,192.168.1.2:9510"/>

<cache name="Cache001">

<terracotta>

<nonstop immediateTimeout="true" timeoutMillis="3000">

<timeoutBehavior type="exception"/>

</nonstop>

<searchable />

</cache>

</ehcache>

注意

CEPエンジン起動中にファイルを編集した場合、内容を有効にするにはCEPエンジンの再起動が必要です。

9.3.2 Terracotta連携機能設定ファイル

Terracotta連携で使用するクラスパスやライセンスキーなどの情報を設定します。

- 201 -

Page 211: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

作成後、cepstartengコマンドを実行すると、クラスパスなどが設定された状態でCEPエンジンが起動します。

Terracotta連携機能設定ファイルは/etc/opt/FJSVcep/config/terracotta_confに作成して下さい。

書式

以下は、Terracotta連携機能設定ファイルの定義例です。

Terracotta連携機能設定ファイルは以下の種類の行から構成されています。

パラメーター定義行

<パラメーター名>=<指定値>という形式の行です。左側に指定したパラメーターに対して、右側の指定値が設定されます。行頭や

行末の" "(空白文字)やタブ文字は無視されます。

注意

「=」の前後に空白文字やタブ文字を入れないでください。

空行

" "(空白文字)やタブ文字だけから構成される行です。Terracotta 連携機能からは行全体が無視されます。

設定可能なパラメーターの一覧

以下に、設定可能なパラメーターの一覧を示します。全てのパラメーターの指定が必要です。

パラメーター名 項目名 説明 設定可能文字

/範囲

必須

/任意

BDCEP_TERRACOTTA_CLASSPATH

Terracotta連

携機能クラス

パス

Terracotta連携で利用する

Terracottaのjarファイルのパス

を指定します。複数のjarファ

イルのパスを、:(コロン)で区

切って設定してください。

半角英数字と次

の記号

/:-_.

1023文字

必須

BDCEP_TERRACOTTA_LICENSEKEY

Terracottaライセンス

キー

Terracotta のライセンスキーの

パスを指定します。

半角英数字と次

の記号

/-_.

1023文字

必須

以下は、Terracottaを/opt/bigmemory-max-4.0.1にインストールしたときの定義例です。

Terracotta連携機能クラスパスに指定するjarファイルの詳細については、Terracottaのマニュアルを参照してください。

BDCEP_TERRACOTTA_CLASSPATH=/opt/bigmemory-max-4.0.1/apis/ehcache/lib/ehcache-ee-2.7.1.jar:/opt/bigmemory-max-4.0.1/apis/

ehcache/lib/slf4j-api-1.6.6.jar:/opt/bigmemory-max-4.0.1/apis/ehcache/lib/slf4j-jdk14-1.6.6.jar:/opt/bigmemory-

max-4.0.1/common/lib/bigmemory-4.0.1.jar:/opt/bigmemory-max-4.0.1/apis/toolkit/lib/terracotta-toolkit-runtime-

ee-4.0.1.jar

BDCEP_TERRACOTTA_LICENSEKEY=/var/bigmemory/terracotta-license.key

- 202 -

Page 212: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

注意

・ Terracotta連携機能を利用する場合、下記の5つのjarファイルは必ずTerracotta 連携機能クラスパスに設定してください。

Terracottaのバージョンや環境により下記のファイル名が変更される可能性があります。必ず利用するTerracottaにあるファイル名を

確認して設定してください。「x」には各jarファイルのバージョンが入ります。

- bigmemory-x.x.x.jar

- ehcache-eex.x.x.jar

- slf4j-api-x.x.x.jar

- slf4j-jdk14-x.x.x.jar

- terracotta-toolkit-runtime-ee-x.x.x.jar

・ CEPエンジン起動中にファイルを編集した場合、内容を有効にするにはCEPエンジンの再起動が必要です。

9.4 RDB連携の設定ファイル

RDB連携を利用する際に必要な設定ファイルについて説明します。

9.4.1 RDB連携機能設定ファイル

RDB連携で使用するJDBCドライバのクラスパスを設定します。

作成後、cepstartengコマンドを実行すると、クラスパスが設定された状態でCEPエンジンが起動します。

RDB連携機能設定ファイルは/etc/opt/FJSVcep/config/rdb_confに作成して下さい。

書式

RDB連携機能設定ファイルは以下の種類の行から構成されています。

パラメーター定義行

<パラメーター名>=<指定値>という形式の行です。左側に指定したパラメーターに対して、右側の指定値が設定されます。行頭や

行末の" "(空白文字)やタブ文字は無視されます。

注意

「=」の前後に空白文字やタブ文字を入れないでください。

空行

" "(空白文字)やタブ文字だけから構成される行です。RDB 連携機能からは行全体が無視されます。

設定可能なパラメーターの一覧

以下に、設定可能なパラメーターの一覧を示します。全てのパラメーターの指定が必要です。

パラメーター名 項目名 説明 設定可能文字

/範囲

必須

/任意

BDCEP_RDB_CLASSPATH RDB連携機能

クラスパス

RDB連携で利用するJDBCドラ

イバのjarファイルを設定しま

す。利用するjarファイルが複数

ある場合、:(コロン)で区切って

設定してください。

半角英数字と次

の記号

/:-_.

1023文字

必須

- 203 -

Page 213: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

以下は、参照先のRDBにSymfoware(Openインタフェース)を利用する場合の設定ファイルの定義例です。

BDCEP_RDB_CLASSPATH=/opt/symfoclient64/jdbc/lib/postgresql-jdbc4.jar

注意

・ 参照先のRDBにSymfoware Server(Nativeインタフェース)を利用する際は、クラスパスの設定は不要です。

・ Symfoware Server(Nativeインタフェース)以外のRDBを参照する場合は、JDBCドライバをクラスパスに設定してください。クラスパ

スに指定するjarファイルの詳細については、参照先RDBのマニュアルを参照してください。

・ 同じクラス名を持つ複数のjarファイルやクラスファイルを同時に設定した場合は、先に設定した方が優先になります。

・ CEPエンジン起動中にファイルを編集した場合、内容を有効にするにはCEPエンジンの再起動が必要です。

9.5 インストール用の設定

BDCEPのサイレントインストール時に使用する設定ファイル(インストール設定ファイル)について説明します。

9.5.1 インストール設定ファイル

インストール設定ファイルの書式および設定可能なパラメーターについて説明します。

書式

以下は、インストール設定ファイルの定義例です。

インストール設定ファイルは以下の種類の行から構成されています。

パラメーター定義行

<パラメーター名>=<指定値>という形式の行です。左側に指定したパラメーターに対して、右側の指定値が設定されます。行頭や

行末、「=」の前後の" "(空白文字)やタブ文字は無視されます。

空行

" "(空白文字)やタブ文字だけから構成される行です。インストーラからは行全体が無視されます。

以下は、インストール設定ファイルの定義例です。

BDCEP_USER_NAME=isbdcep

BDCEP_GROUP_NAME=isbdcep

BDCEP_INITIAL_ENGINE_NAME=CepEngine

設定可能なパラメーターの一覧

以下に、設定可能なパラメーターの一覧を示します。全てのパラメーターの指定が必要です。

パラメーター名 項目名 説明 設定可能文字

/範囲

必須

/任意

BDCEP_USER_NAME エンジン実行

ユーザー名

エンジン実行ユーザーのユー

ザー名を指定します。

登録済みユー

ザー名

8文字以内

必須

- 204 -

Page 214: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

パラメーター名 項目名 説明 設定可能文字

/範囲

必須

/任意

BDCEP_GROUP_NAME グループ名 エンジン実行ユーザーが所属

するグループのグループ名を

指定します。

登録済みグルー

プ名

8文字以内

必須

BDCEP_INITIAL_ENGINE_NAME

初期CEPエン

ジン名

初期セットアップ時に作成する

CEPエンジン名を指定します。

半角英数文字

20文字以内

必須

注意

サイレントインストールを実行する前に、インストール設定ファイルに指定したユーザーおよびグループのアカウントがシステムに登録

されていることを確認してください。

9.6 項目名、タグ名、属性名に指定可能な文字

項目名、タグ名、属性名に指定可能な文字について説明します。

9.6.1 高速フィルタールール、マスタ定義の場合

CSVの列の項目名、XMLのタグ名および属性名に指定可能な文字は、以下のシングルバイト文字、およびマルチバイト文字です。

! - . 0 1 2 3 4 5 6 7 8 9 :

@ A B C D E F G H I J K L M

N O P Q R S T U V W X Y Z _

` a b c d e f g h i j k l m

n o p q r s t u v w x y z

注意

・ 先頭に、ハイフン(-)およびピリオド(.)は指定できません。

・ 半角空白(' ')は指定できません(表の一番右下は空白文字を意味している訳ではありません)。

9.6.2 複合イベント処理ルールの場合

CSVの列の項目名、XMLのタグ名および属性名に指定可能な文字は、以下の制約があります。

・ 1文字目は、半角英字(a~z、A~Z)になります。

・ 2文字目以降は、半角英字(a~z、A~Z)、半角数字(0~9)、または、アンダースコア(_)になります。

・ 複合イベント処理ルールの予約語は、大文字小文字の区別なく、使用できません。

複合イベント処理ルールの予約語については、「開発リファレンス」の「第1章 複合イベント処理言語リファレンス」を参照してくださ

い。

なお、大文字・小文字を区別します。

- 205 -

Page 215: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

9.7 利用可能なCSVの形式

利用可能なCSVの形式について説明します。

CSVの記述例

"01","1001","AAA","ブロックA","1,000","1,000","備考:稟議番号 第4023号"

"02","1001","BBB","ブロックB","","1,200","備考:稟議番号 第4023号"

"03","1002","CCC","ブロックC","800","800","備考:稟議番号 第4023号"

・ 1レコード内の列の項目をコンマ(,)で区切ります。

・ レコードの 後には改行を記述します。

・ 各項目を二重引用符(")で囲うことができます。各項目の内容にコンマ(,)、改行を指定する場合は項目を必ず二重引用符で囲い

ます。

・ 項目の内容に二重引用符(")を指定する場合は、項目を二重引用符で囲い、項目の内容に含まれる二重引用符の前に二重引用

符を付けます(二重引用符を2つ続けて指定します)。

レコード内に「A,AA」「B<改行>BB」「C"CC」という3つの項目を含む場合の記述例

"A,AA","B

BB","C""CC"

・ 二重引用符で囲んだデータの場合、項目間はカンマ(,)以外の文字があるとエラーになります。区切り文字のカンマ(,)の前後の余

分な文字は、削除してください。

誤:項目間(カンマの前後)に不要な空白(下線)がある

"AAA", "ブロックA"

正:項目間の不要な空白を削除する

"AAA","ブロックA"

・ 1レコードの 大サイズは32MB(メガバイト)です。

・ 入力イベントではレコードの 後に改行を指定する必要はありません。1つの入力イベントで複数レコードを扱うことはできません。

- 206 -

Page 216: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

用語集 Apache Hadoop

Apache Software Foundation(ASF) が開発したオープンソースの Hadoop(ハドゥープ)ソフトウェアです。

CEP(Complex Event Processing)

参照:複合イベント処理

CEPエンジン

参照:高性能CEPエンジン

CEPサーバ

Interstage Big Data Complex Event Processing Server (以降、BDCEP)が動作するサーバです。

CEPサービス

CEPサーバ上で動作する、CEPエンジンの管理を行うサービスです。

Hadoop(ハドゥープ)

大量に蓄積されたデータの効率的な分散・並列処理を行う技術の名称です。大きく分けて、分散ファイルシステムである HDFS(HadoopDistributed File System) と、並列分散処理技術であるMapReduceから構成されます。

参考:Apache Hadoop

Hadoopシステム

Hadoop(ハドゥープ)が動作しているシステムです。

Hadoop連携

BDCEPのロギング機能において、CEPサーバからHadoopシステム内に直接イベントデータを記録するための機能です。

HDFS(Hadoop Distributed File System)

Hadoop(ハドゥープ)で使用する分散ファイルシステムです。ビッグデータを複数のDataNodeと呼ばれるノードにブロック単位で分

散・複製して配置し、それをNameNodeと呼ばれるノードが管理します。

HTTPアダプター

HTTP通信によりイベントデータの受信が可能な入力アダプターです。SOAPアダプターよりも軽量な通信が可能です。

RDB参照定義

RDB連携で使用するRDBの接続情報です。

RDB連携

BDCEPの複合イベント処理において、CEPサーバ外部のRDBに格納されたデータを参照するための機能です。

SOAP (Simple Object Access Protocol)

W3C(World Wide Web Consortium)によって標準化作業が進められている軽量プロトコルです。通信インフラとしてインターネット

標準のHTTP(Hyper Text Transfer Protocol)、XML(eXtensible Markup Language)を使用しています。

SOAPアダプター

SOAP (Simple Object Access Protocol)によりイベントデータの受信が可能な入力アダプターです。

- 207 -

Page 217: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

SOAPリスナ

複合イベント処理文の処理結果を、SOAP (Simple Object Access Protocol)により外部システムに送信する機能です。

SOAPリスナ定義

SOAPリスナによる通信を行う場合の定義情報です。通信先となる外部システムのURLなどを定義します。

Socketアダプター

BDCEP独自のフォーマットで通信を行う入力アダプターです。SOAPアダプターやHTTPアダプターよりも、大量のイベントデータの

受信に向いています。

Terracottaアプリケーション

Interstage Terracotta BigMemory Maxにおけるクライアントアプリケーションです。Terracottaサーバ上のキャッシュに対して初期デー

タを格納するなど、キャッシュ中のデータを更新するためのアプリケーションです。

Terracottaサーバ

Interstage Terracotta BigMemory MaxにおけるTerracottaサーバです。

Terracotta連携

BDCEPの複合イベント処理において、CEPサーバ外部のTerracottaサーバのキャッシュを参照するための機能です。頻繁に更新

されるデータを複合イベント処理ルールから参照する場合に利用します。

WSDL(Web Service Description Language)

Webサービスにおけるインターフェース記述言語です。Webサービスにおけるアクセスポイント(URL)、使用プロトコル(SOAP、HTTP、

MIME)、メッセージの形式(XML Schema)などの情報を記述できます。BDCEPとの連携アプリケーションである、ユーザー開発Webサービスの開発で利用します。

イベント送信アプリケーション

CEPエンジンにイベントデータを送信するアプリケーションです。

イベントタイプ定義

イベントデータの形式についての定義情報です。XML形式またはCSV形式のイベントデータが定義できます。

イベントログ分析アプリケーション

Hadoopシステム内に蓄積したイベントログを分析するアプリケーションです。

イベントデータ

センシングデータや人の位置情報などの、いつ何が起こったかを示す時系列データです。

イベントログ

ロギング機能によりイベントデータを記録したファイルです。

エンジン実行ユーザー

CEPエンジンが動作するときのOSのユーザーです。

エンジンログ

CEPエンジンのシステムメッセージや、ルール中に定義されたデバッグ用メッセージが出力されるログファイルです。

カスタムリスナ

複合イベント処理文の処理結果を、ユーザー開発Javaクラスにより処理する機能です。

- 208 -

Page 218: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

キャッシュ(RDB連携)

複合イベント処理において、RDB連携で参照したクエリとその結果を一時的にCEPエンジン内に蓄積し、一度参照した同じクエリ

の処理を高速に行う機能です。

高速フィルター

当社の独自技術により、イベントデータとマスタデータとの照合を行いつつ、大量のイベントデータに対して高速なフィルター処理

を可能にした機能です。

高速フィルター言語

高速フィルターにおけるフィルター処理のルールを記述するための言語です。IF-THEN型の書式で記述が可能です。

高速フィルター文

高速フィルター言語で記述されたルールの構成単位です。イベントタイプ定義毎に記述されます。

高速フィルタールール

高速フィルター言語によって記述されたルールです。1つ以上の高速フィルター文から構成されます。

高性能CEPエンジン

BDCEPにおける処理の単位です。従来の複合イベント処理に高速フィルターを組み合わせることで、大量イベントデータの高速な

処理を可能にしています。

出力アダプター

複合イベント処理の処理結果をCEPサーバ外部に送信する機能です。

初期CEPエンジン

インストール時に作成されるCEPエンジンです。

センシングデータ

各種センサーから送られてくるデータのことを指します。イベントデータの一種です。

ソーシャルメディア

インターネット上で、様々な人々が様々なコンテンツ(テキスト、音声、ビデオ、etc.)を交換・共有することで生まれるコミュニケーショ

ン社会を提供するサービスやアプリケーションを、旧来の情報媒体(新聞、テレビ、etc.)と対比してソーシャルメディアと呼んでいま

す。

デバッグリスナ

複合イベント処理文の実行時に、デバッグ用メッセージをエンジンログに出力する機能です。

入力アダプター

CEPサーバ外部からイベントデータを受信する機能です。

フィルター言語

参照:高速フィルター言語

フィルター文

参照:高速フィルター文

フィルタールール

参照:高速フィルタールール

- 209 -

Page 219: Complex Event Processing Server V1.1.0 Interstage Big Data ...software.fujitsu.com/jp/manual/manualfiles/m140001/... · Complex Event Processing Server V1.1.0 ... の運用及び保守について説明しています。

複合イベント処理

次々と送信される大量のイベントデータの内容と状況を素早く分析、判断し、リアルタイムに処理する技術です。BDCEPは、この技

術を搭載した複合イベント処理機能を提供しています。

複合イベント処理言語

複合イベント処理のルールを記述するための言語です。SQL形式の書式で記述が可能です。

複合イベント処理文

複合イベント処理言語で記述されたルールの構成単位です。select文やcreate window文などにより処理を記述します。

複合イベント処理ルール

複合イベント処理言語で記述されたルールです。1つ以上の複合イベント処理文から構成されます。

マスタ定義

高速フィルター処理の中で参照するマスタデータの定義情報です。

マスタデータ

BDCEPでは、高速フィルター処理でイベントデータとの照合に使用されるデータです。CSVファイル形式でCEPサーバ内に配備さ

れます。各カラムの項目名を定義したスキーマ情報ファイルと、データ行が格納されたデータファイルから構成されます。

ユーザー開発Webサービス

SOAPリスナから送信される複合イベント処理文の処理結果を受信して動作するアプリケーションです。SOAP (Simple Object AccessProtocol)により処理結果を受信します。

ユーザー開発Javaクラス

カスタムリスナからイベントデータを渡されて動作するJavaクラスです。

リソースログ

CEPエンジンのリソース利用状況を定期的に記録したログです。CSV形式で、Excelなどのツールで分析することにより、CEPエンジ

ンのリソース利用状況を確認できます。

ルール定義

高速フィルター、複合イベント処理のそれぞれの機能の処理内容を定義したものです。高速フィルタールール、複合イベント処理

ルールの2種類のルールから構成されます。

ロギング

イベントデータを、Hadoopシステム内に記録するための機能です。動作確認用に、エンジンログに記録することも可能です。

ロギングリスナ

複合イベント処理文の処理結果をロギングする機能です。

- 210 -