Ensemble 新機能のご紹介 インターシステムズジャパン テクニカルコンサルタント 堀田稔 アジェンダ Ensemble 概要 Ensemble 新機能ご紹介 管理ポータルのUI アーカイブマネージャ 補償トランザクション レコードマッパー XML 仮想ドキュメント ダッシュボードのDeepSeeとの統合 その他の新機能 1
Ensemble 全体図 ポータル Java.NET Web サービス ビジネスアクティビティモニタリング API アダプタ オペレータの介在 ルール API 固定長 CSV XML メッセージ BPM アダプタ 固定長 CSV XML RDB メッセージ メッセージ RDB TCP メッセージ キュー TCP Caché メタ データ Ensemble アーキテクチャ Mes ssaging Orche estration Deve elopment An alytics インテグレーション サーバ + メッセージ エンジン + BPM + BAM Abstraction + Repository + Execution アプリケーション サーバ + データベース Application Data Technology 2
高速 DB(Caché) 内蔵 Ensemble オブジェクトストア メタデータタ どちらでのアクセス可能 SQL Object メッセージ 統合マスタ メッセージの時刻と内容を自動的に記録 メッセージ配送の信頼性の確保 連携するシステム全体を管理する 統合マスタ 連携するシステムで共通するデータモデル ( メタデータ ) その他一時データなどの保存 ビジュアル トレース Ensemble の中を 流れた データを視覚的に表示 時刻 データの内容 ステータスなどで検索可能 メッセージの再送 比較 3
ビジネス プロセス / ルール ビジネスの視点で業務フローを定義し 各コンポーネント ( サービス ) を連携 コンパイルにより実行用スクリプトに変換 ルール定義により 重要な条件を変更 データ変換 ダッシュボード メッセージ変換の視覚的定義 ダッシュボードによるリアルタイムな指標管理 4
Ensemble 新機能 新しい管理ポータル UI(1) メニュー データ変換編集 5
新しい管理ポータル UI(2) BPL 編集 ビジネスプロセス リクエストビルダー 新しい管理ポータル UI(3) ルールエディタ 6
新しい管理ポータル UI(4) プロダクション構成 アーカイブ マネージャ 古い メッセージを別ネームスペースに保存 シリアル化されたメッセージボディを保存 元のメッセージは ヘッダー ボディとも削除 Ens.Archive.Managerクラス 継承してカスタマイズすることも可 ClassMethod ArchiveOne(pNameSpace, pheaderobj, pbodyobj) As %Status デフォルトでは Ens.Archive.MessageBody クラスのインスタンスとして メッセージボディが指定ネームスペースに保存される 7
アーカイブ概念図 ヘッダー メッセージボディクラス名 ボディ プロパティ 1: 値 1 プロパティ 2: 値 2 プロパティ 3: 値 3 プロパティ 4: 値 4 アーカイブ テキストストリーム ボディ < プロパティ 1> 値 1 </ プロパティ 1> < プロパティ 2> 値 2 </ プロパティ 2> 補償トランザクション 複数のシステムにまたがった トランザクション の ロールバック 2 相コミットは 長時間 トランザクションに不向き ( 異システム間では不可能なケースも多い ) 例 ) 旅行の予約 1. 飛行機の予約 2. ホテルの予約 希望するホテルが満室 3. ( 例外処理 ) 飛行機の予約をキャンセル 補償トランザクションにより Undo 処理を定義 8
BPL による補償トランザクション定義 <scope> <faulthandlers> <catch fault= xyz > </catch> <compensate target= abc > </catch> <throw fault= XYZ > </faulthandlers> <compensationhandlers> <compensationhandler name= abc > </compensationhandler> </compensationhandlers> </scope> レコードマッパー カンマ区切りや固定長のレコードに対し スキーマ を定義 次のものを生成 スキーマに従ったデータを解析するパーサー スキーマに従ったデータを保持するクラス EnsLib.RecordMap.Service.FileService など そのスキー p マにしたがうデータを受取る標準のサービスを用意 9
レコードマッパー概念図 Name Address Age メッセージクラス CSV 読み込み 生成 Name Address Age ビジネスサービス 指定 パーサー メッセージ XML 仮想ドキュメント 個別のメッセージクラスを定義することなく XML 形式の入出力を保持 ビジネスサービスやビジネスオペレーションと関連ビ付けることが可能 XML 入力 <Person> <Name> 堀田 </Name> <Address> 大阪 </Address> </Person> EnsLib.EDI. XML.Document Name Address XML スキーマ <Person> <Name> 堀田 </Name> <Address> 大阪 </Address> </Person> 10
XML 仮想ドキュメント データ変換編集 ビジュアルトレース ダッシュボード これまで Ensemble DeepSeeそれぞれに別の ダッシュボード 定義 2012.1 以降 DeepSeeのダッシュボードに一本化 DeepSeeのダッシュボードのデータソースとして Ensembleのメトリックを指定可能に 11
ダッシュボード概念図 ( 旧 ) Ensemble 自動的に表示更新 一定時間ごとに自動計算 メトリックメトリックメトリックメトリック Ensemble データベース Message Queue Message Queue 変換 ダッシュボード概念図 ( 新 ) ピボット 自動的に表示更新 KPI DeepSee 一定時間ごとに自動計算 メトリックメトリックメトリックメトリック Ensemble Ensemble データベース Message Queue Message Queue 変換 12
シーケンス マネージャ 元は HL7 用に用意 EnsLib.HL7.SequenceManager ビジネスプロセス MSH:13 SequenceNumbersの値に基づき 適切な順序でターゲットにメッセージを送信する [LargeGapSize],[MessageWaitTimeout] などのパラメータで 順序付けの動作を設定 EnsLib.HL7.SequenceManager を継承し パラメータとメソッドを再定義することで HL7 以外のメッセージでも順序制御が行える (2012.1)1 つのプロダクションに複数のシーケンス マネージャを持つことができる その他の新機能 DICOM サポート (2010.2) ファイル インバウンドアダプタの改良 ファイルの書き込みの完了を待つための仕組み (2010.2) ConfirmComplete プロパティによって制御 Size : ファイルサイズの増加が止まった時 Rename : ファイルがリネーム可能になった時. WorkPath かArchivePathがFilePathと異なる時は実質的にこれになる Readable: 読み込みモードでオープン可能になった時 Writable : 書きこみモードでオープン可能になった時 13
Q&A 14