メインコンテンツまでスキップ
バージョン: v2.2.0

FRUCtoS v2.2.0 インポート手順 (Docker)

1. 本手順の目的

本手順はFRUCtoS v2.2.0のデータのインポート手順を記載しています。

FRUCtoSではFHIRリソース本体とその履歴のほかに検索のためのインデックスを内部的に生成し保持しています。 エクスポート時にFHIRリソース本体とその履歴のみを出力し、インポート時にFHIRリソース本体とその履歴の入力とインデックスの再生成することで異なるバージョン間でのデータ移行を実現しています。

バージョンアップに伴いデータベース(以下DB)の互換性が失われる場合があるため、v2.1.0のデータをv2.2.0の環境で利用する必要がある場合、FRUCtoS エクスポートと本手順のインポートを行うことを推奨します。

注記

ダンプツールは、1つ前のバージョンからのデータ移行のみサポートしています。

本手順は、以下に関する基本的な知識を有する作業者を対象としています。

  • FRUCtoS
  • Docker
注意
  • ダンプツールではFRUCtoSリポジトリのリソースの登録・改変履歴をテキストファイルに出力し、リポジトリのバックアップやデータ移行に用いることができます。その性質上内部には機密性の高いデータが含まれるため、取り扱いに際しては運用ルール等を定めて厳格に取り扱うことが求められます。
  • バックアップ等データの復元可能な準備を行ってから実施してください。
備考

例としてDockerを実行環境とする場合を記載しています。 他のDocker互換のコンテナ実行環境をお使いの方は、適宜読み替えてください。 設定ファイルも適宜書き換えてください。

2. 準備

2.1. 必要な資材

  • v2.2.0-dump-tools-import
    • 通常リソースのインポートの資材
  • v2.2.0-dump-tools-auditevent-import
    • 監査ログのインポートの資材
    • 監査ログのデータ移行を行う場合のみ必要

2.2. 資材のダウンロード

v2.2.0-dump-tools-importは、FRUCtoSの資材のdump-toolsフォルダに、
v2.2.0-dump-tools-auditevent-importは、FRUCtoSの資材のdump-tools-auditeventフォルダにそれぞれ入っています。
FRUCtoSの資材をお持ちでない場合は、こちらからお申込みください。

2.3. 配布資材の構成

  • v2.2.0-dump-tools-importのフォルダ/ファイル構成は以下となっています。
v2.2.0-dump-tools-import/
├── Import.ps1 ・・・インポート時に実行するファイル(Windows環境)
├── Import.sh ・・・インポート時に実行するファイル(Linux/Mac環境)
├── README.md
├─fructoslog/ ・・・デフォルトでインポートするファイルが存在するディレクトリ
│ └── (記載は省略)
└─tools/
└── (記載は省略)
  • v2.2.0-dump-tools-auditevent-importのフォルダ/ファイル構成は以下となっています。
v2.2.0-dump-tools-auditevent-import/
├── AuditEventImport.ps1 ・・・インポート時に実行するファイル(Windows環境)
├── AuditEventImport.sh ・・・インポート時に実行するファイル(Linux/Mac環境)
├── README.md
├─fructoslog/ ・・・デフォルトでインポートするファイルが存在するディレクトリ
│ └── (記載は省略)
└─tools/
└── (記載は省略)
注意

docker-composeのバージョンがv2.0.0以上の場合、以下ファイル内のdocker-composeコマンドをdocker composeコマンドに修正した後ご利用ください。
・ Import.ps1
・ Import.sh
・ AuditEventImport.ps1
・ AuditEventImport.sh

3. インポート手順

通常リソースと監査ログのデータ移行を行う場合は、3.1.以降の全ての手順を実施してください。
通常リソースのみデータ移行を行う場合は、3.1., 3.2., 3.3., 3.6., 3.7. のみ実施してください。

3.1. FRUCtoSの停止

  • FRUCtoSの配置フォルダへ移動して以下コマンドを実行します。

    Powershell/Shell
    docker-compose stop tomcat

3.2. 【通常リソース】インポートの準備

  1. v2.2.0-dump-tools-importをFRUCtoSの配置フォルダ直下に配置します。
  2. v2.2.0-dump-tools-import/Import.ps1をメモ帳などで開き、ユーザー設定項目のインポート元を修正してください。デフォルトはv2.2.0-dump-tools-import/fructoslogとなっています。
    • インポート元には通常リソースのエクスポート時のgzファイルが存在するディレクトリを指定してください。
    • もしくはエクスポート時のgzファイルをv2.2.0-dump-tools-import/fructoslogに配置してください。
# =============== ユーザー設定項目 ===============
## インポートするファイルが存在するディレクトリ
$TransactionlogFilePath="$(pwd)/fructoslog/"
# ================================================

3.3. 【通常リソース】インポートの実施

  1. v2.2.0-dump-tools-importで以下コマンドを実行します。

    Powershell
    PowerShell .\Import.ps1
  2. インポートが開始されるので、コマンドが終了するまで待機します。

  3. コマンド終了後、以下コマンドを実行します。 0 が表示されれば正常に終了しています。

    Powershell
    echo $lastexitcode
ヒント

環境によりPowerShellスクリプトが実行出来ない場合は、必要に応じてPowerShellスクリプトの実行に先立ち、 以下の「Windowsの実行ポリシーの設定」や「PowerShellスクリプトのプロパティ変更」を行ってください。

  • 実行ポリシーの設定

    PowerShell
    Set-ExecutionPolicy RemoteSigned -Scope Process

    『y』を入力してください。

  • プロパティ変更
    Import.ps1ファイルの『セキュリティ』を次の手順で許可にしてください。

    1. Import.ps1ファイルをエクスプローラーで選択し、マウスボタン右クリックでプロパティを表示します。
    2. 『全般』タブの『セキュリティ:』の『許可する(K)』をチェックします。
注意

監査ログのデータ移行を行う場合、必ず 3.5. 【監査ログ】インポートの実施後に通常のリソースのCRUDやSearchを実施してください。
3.5. 【監査ログ】インポートの実施前に通常のリソースのCRUDやSearchを実施すると監査ログのデータ移行に失敗する可能性があります。

3.4. 【監査ログ】インポートの準備

監査ログのインポートの準備
  1. v2.2.0-dump-tools-auditevent-importをFRUCtoSの配置フォルダ直下に配置します。
  2. v2.2.0-dump-tools-auditevent-import/AuditEventImport.ps1をメモ帳などで開き、ユーザー設定項目のインポート元を修正してください。デフォルトはv2.2.0-dump-tools-auditevent-import/fructoslogとなっています。
    • インポート元には監査ログのエクスポート時のgzファイルが存在するディレクトリを指定してください。
    • もしくはエクスポート時のgzファイルをv2.2.0-dump-tools-auditevent-import/fructoslogに配置してください。
# =============== ユーザー設定項目 ===============
## インポートするファイルが存在するディレクトリ
$TransactionlogFilePath="$(pwd)/fructoslog/"
# ================================================

3.5. 【監査ログ】インポートの実施

監査ログのデータ移行を行わない場合、本手順はスキップしてください。

監査ログのインポートの実施
  1. v2.2.0-dump-tools-auditevent-importで以下コマンドを実行します。

    Powershell
    PowerShell .\AuditEventImport.ps1
  2. インポートが開始されるので、コマンドが終了するまで待機します。

  3. コマンド終了後、以下コマンドを実行します。 0 が表示されれば正常に終了しています。

    Powershell
    echo $lastexitcode
ヒント

環境によりPowerShellスクリプトが実行出来ない場合は、必要に応じてPowerShellスクリプトの実行に先立ち、 3.3. 【通常リソース】インポートの実施と同様に「Windowsの実行ポリシーの設定」や「PowerShellスクリプトのプロパティ変更」を行ってください。

3.6. FRUCtoSの起動

  • FRUCtoSの配置フォルダへ移動して以下コマンドを実行します。

    Powershell/Shell
    docker-compose start tomcat

3.7. 【通常リソース】インポートされたデータの確認

  • REST APIクライアントからreadまたはsearchをリクエストして確認します。

3.8. 【監査ログ】インポートされたデータの確認

監査ログのデータ移行を行わない場合、本手順はスキップしてください。

監査ログのインポートの確認
  • (管理システムを導入している環境のみ)管理システムの監査ログ管理画面から監査ログを検索して確認します。