FHIR をSSIS 経由でSQL サーバーにバックアップする
FHIR 用のCData ADO.NET プロバイダーを使用して簡単にSQL サーバーへデータをバックアップします。ここでは、FHIR をデータベースに入力する際、SSIS ワークフローを使用します。
加藤龍彦
デジタルマーケティング
最終更新日:2022-04-12
こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
FHIR 用のCData ADO.NET プロバイダーはFHIR をバックアップ、レポート、フルテキスト検索、分析などを行うアプリケーションに接続します。
ここでは、SQL サーバー SSIS ワークフロー内でFHIR 用のプロバイダーを使用して、FHIR をMicrosoft SQL サーバーデータベースに直接転送する方法を説明します。
以下のアウトラインと同じ手順を、CData ADO.NET データプロバイダーにて使用することで、SSIS 経由でSQL サーバーを直接リモートデータに接続できます。
- Visual Studio を開き、新しいIntegration サービスプロジェクトを追加します。
- ツールボックスからControl Flow 画面へ、新しいData Flow タスクを追加します。
Data Flow 画面で、ツールボックスから[ADO.NET Source] と[OLE DB Destination] を追加します。
- 新しい接続を追加し、FHIR 2015 用の .NET プロバイダー\CData ADO.NET プロバイダーを選択します。
Connection Manager で、FHIR 用に接続の詳細を入力します。下は一般的な接続文字列です。
URL=http://test.fhir.org/r4b/;ConnectionType=Generic;ContentType=JSON;AuthScheme=None;
URL をFHIR サーバーのService Base URL に設定します。これは接続したいFHIR
サーバーでリソースが定義されているアドレスです。ConnectionType をサポートされている接続タイプに設定します。ContentType
をドキュメントのフォーマットに設定します。AuthScheme をFHIR サーバーの認証要件に基づいて設定します。
汎用、Azure ベース、AWS ベース、およびGoogle ベースのFHIR サーバー実装がサポートされます。
Service Base URL のサンプル
- 汎用:http://my_fhir_server/r4b/
- Azure:https://MY_AZURE_FHIR.azurehealthcareapis.com/
- AWS:https://healthlake.REGION.amazonaws.com/datastore/DATASTORE_ID/r4/
- Google:https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/
汎用FHIR インスタンス
CData 製品はFHIR のカスタムインスタンスへの接続をサポートします。カスタムFHIR サーバーへの認証はOAuth で行います(OAuth の詳細はヘルプドキュメントを参照してください)。カスタムFHIR
インスタンスに接続する前に、ConnectionType をGenericに設定する必要があります。
DataReader editor を開き、次のインフォメーションを設定します。
- ADO.NET 接続マネージャー:Connection Manager のメニューで、先ほど作成した[Data Connection] を選択します。
- データアクセスモード:[SQL command] を選択します。
- SQL command テキスト:DataReader Source editor で、Component Properties タブを開き、下にあるようなSELECT command を入力します。
SELECT Id, [name-use] FROM Patient WHERE [address-city] = 'New York'
- DataReader editor を閉じ、DataReader Source の下の矢印をドラッグして、OLE DB Destination に接続します。
OLE DB Destination を開き、Destination Component Editor で次のインフォメーションを入力します。
- コネクションマネージャー:新しい接続を追加します。接続するサーバーおよびデータベースの情報を入力します。ここでは、SQLExpress は他のマシンで運用中です。
- データアクセスモード:データアクセスモードを[table or view] に設定し、データベースに入力するテーブルまたはビューを選択します。
Mappings 画面で必要なプロパティを設定します。
- OLE DB Destination Editor を閉じ、プロジェクトを始動します。SSIS タスクの実行が完了すれば、
FHIR から取得したデータが、データベースに入力されます。
CodeProject
関連コンテンツ