LiveViewではストリームデータをファイルとして保存し、バックアップを取る機能がございます(ログベースのバックアップ)。本記事では、ログベースでのバックアップ機能の有効化から動作確認までの簡単な手順について記述します。
1: Studio上でプロジェクトを右クリックし、"New"->"TIBCO LiveView Configuration"を選択します。
ここでは"Table Space"タイプのLiveView Configurationファイルを作成します。
作成後ファイル設定の"Table Space"タブを開き、"Table Group"欄に任意の名前を入力します。
続けてPersistenceオプションにある"Persist Data"にチェックを入れdbファイルの出力を有効化し、"Folder"欄に出力先フォルダのパスを指定します。
※パスは絶対パス・相対パスのいずれかが利用できます。
相対パス(例:persistentData)の場合、<Nodename>/application/engines/<engineName>/persistentData にdbファイルが生成されます。
※<Nodename>: ノードのインストール先パス。
※<engineName>: アプリケーションのエンジン名。
※Restore Data On Startを有効化しますと、アプリの再起動時にdbファイルの内容をLiveView DBに復元することができます。
参考:
https://docs.tibco.com/pub/str/10.6.2/doc/html/studioref/lvconf-editor-tablespace.html
2: 出力元となるData TableとTable Groupとの関連付けを行います。
対象のData Tableの"Schema"タブから"Options"->"Table Space Reference"から作成したTable Groupの名前を選択して保存します。
3: engine.confを開き、以下のようにTable Groupの関連付けを行います。tableGroupに1で設定した名前を宣言します。
configuration = {
LDMEngine = {
// Recommended JVM flags for LiveView
//
// See also tuning section in the documentation
//
jvmArgs =
[
"-Xmx3g"
"-Xms3g"
"-XX:+UseG1GC"
"-XX:MaxGCPauseMillis=500"
"-XX:ConcGCThreads=1"
]
### ここから
ldm = {
tableGroup = "<Table Group名>"
metadataStore = {
storeType = "TRANSACTIONAL_MEMORY"
}
}
### ここまで
systemProperties = {
"liveview.persist.pagesizekb" = "64"
"liveview.store.rollinterval.s" = "43200"
"liveview.store.file.max.mb" = "100"
}
}
}
参考:"Table Group Configuration Option"->"Table group configuration for log-based recovery"
https://docs.tibco.com/pub/str/10.6.2/doc/html/lv-devel/lv-server-mult-backends.html#lv-server-mult-backends_overview
4: LiveViewアプリケーションを実行し、1で指定のパスに.db形式のファイルが作成されていればリアルタイムでのバックアップが正常に動作しております。
5: db形式のファイル内容を確認するには、StreamBase Command Promptから指定のパスに移動し下記のコマンドを実行します。
$ lv-store-dump -f <.dbファイル名> -j
実行例:
注意点:
Log-based data recoveryはStudioからデバッグができない仕様となっています。
動作確認の際は別途StreamBase Applicationのアーカイブを作成のうえepadminを用いてノードの起動を行ってください。
参考:
https://docs.tibco.com/pub/str/10.6.2/doc/html/gettingstarted/gs21-runapp-apparchive.html
https://docs.tibco.com/pub/str/10.6.2/doc/html/gettingstarted/gs22-cmdline-install-node.html