翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
FHIR を使用した HealthLake データのエクスポート $export
FHIR $export オペレーションを使用して、HealthLake データストアからデータを一括エクスポートできます。HealthLake は、 POSTおよび GETリクエスト$exportを使用した FHIR をサポートしています。でエクスポートリクエストを行うにはPOST、必要なアクセス許可を持つ IAM ユーザー、グループ、またはロールがあり、リクエスト$exportの一部として を指定し、リクエスト本文に必要なパラメータを含める必要があります。
注記
FHIR を使用して行われたすべての HealthLake エクスポートリクエスト$exportは ndjson形式で返され、Amazon S3 バケットにエクスポートされます。各 Amazon S3 オブジェクトには 1 つの FHIR リソースタイプのみが含まれます。
AWS アカウントサービスクォータごとにエクスポートリクエストをキューに入れることができます。詳細については、「Service Quotas」を参照してください。
HealthLake は、次の 3 種類の一括エクスポートエンドポイントリクエストをサポートしています。
| エクスポートタイプ | 説明 | 構文 |
|---|---|---|
システム |
HealthLake FHIR サーバーからすべてのデータをエクスポートします。 |
|
すべての患者 |
患者リソースタイプに関連付けられたリソースタイプを含む、すべての患者に関連するすべてのデータをエクスポートします。 |
|
患者のグループ |
グループ ID で指定された患者のグループに関連するすべてのデータをエクスポートします。 |
|
[開始する前に]
HealthLake 用の FHIR REST API を使用してエクスポートリクエストを行うには、次の要件を満たします。
-
エクスポートリクエストを行うために必要なアクセス許可を持つユーザー、グループ、またはロールを設定しておく必要があります。詳細については$export リクエストの承認を参照してください。
-
データをエクスポートする Amazon S3 バケットへの HealthLake アクセスを許可するサービスロールを作成しておく必要があります。サービスロールでは、サービスプリンシパルとして HealthLake も指定する必要があります。アクセス許可の設定の詳細については、「」を参照してくださいエクスポートジョブのアクセス許可の設定。
$export リクエストの承認
FHIR REST API を使用してエクスポートリクエストを成功させるには、IAM または OAuth2.0. サービスロールも必要です。
IAM を使用したリクエストの承認
$export リクエストを行うときは、ユーザー、グループ、またはロールに IAM アクションがポリシーに含まれている必要があります。詳細については、「エクスポートジョブのアクセス許可の設定」を参照してください。
SMART on FHIR (OAuth 2.0) を使用したリクエストの承認
SMART on FHIR 対応 HealthLake データストアで$exportリクエストを行うときは、適切なスコープを割り当てる必要があります。詳細については、「HealthLake の FHIR リソーススコープに関する SMART」を参照してください。
注記
GET リクエスト$exportを含む FHIR では、ファイルのエクスポートと取得をリクエストするために、同じ認証方法またはベアラートークン (SMART on FHIR の場合) が必要です。$export で FHIR を使用してエクスポートされたファイルはGET、48 時間ダウンロードできます。
$export リクエストを行う
このセクションでは、FHIR REST API を使用してエクスポートリクエストを行うときに必要な手順について説明します。
AWS アカウントで誤って課金されないように、$export構文を指定せずにリクエストを実行してPOSTリクエストをテストすることをお勧めします。
リクエストを行うには、以下を実行する必要があります。
-
サポートされているエンドポイント
$exportのPOSTリクエスト URL で を指定します。 -
必要なヘッダーパラメータを指定します。
-
必要なパラメータを定義するリクエスト本文を指定します。
ステップ 1: サポートされているエンドポイント$exportのPOSTリクエスト URL で を指定します。
HealthLake は、3 種類の一括エクスポートエンドポイントリクエストをサポートしています。一括エクスポートリクエストを行うには、サポートされている 3 つのエンドポイントのいずれかに対して POSTベースのリクエストを行う必要があります。次の例は、リクエスト URL $exportで を指定する場所を示しています。
-
POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/$export -
POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/$export -
POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Group/id/$export
POST リクエスト文字列では、次のサポートされている検索パラメータを使用できます。
サポートされている検索パラメータ
HealthLake は、一括エクスポートリクエストで次の検索修飾子をサポートしています。
次の例には、リクエストを送信する前にエンコードする必要がある特殊文字が含まれています。
| 名前 | 必須? | 説明 | 例 |
|---|---|---|---|
_outputFormat |
なし | リクエストされたバルクデータファイルを生成する形式。使用できる値は application/fhir+ndjson、application/ndjson、 ですndjson。 |
|
_type |
なし | エクスポートジョブに含めるカンマ区切りの FHIR リソースタイプの文字列。すべてのリソースをエクスポートするとコストがかかる_type可能性があるため、 を含めることをお勧めします。 |
&_type=MedicationStatement, Observation |
_since |
なし | 日付タイムスタンプ以降に変更されたリソースタイプ。リソースタイプに最終更新時刻がない場合、レスポンスに含まれます。 | &_since=2024-05-09T00%3A00%3A00Z |
ステップ 2: 必要なヘッダーパラメータを指定する
FHIR REST API を使用してエクスポートリクエストを行うには、次のヘッダーパラメータを指定する必要があります。
-
Content-Type:
application/fhir+json -
優先:
respond-async
次に、リクエスト本文で必要な要素を指定する必要があります。
ステップ 3: で必要なパラメータを定義するリクエスト本文を指定します。
エクスポートリクエストには、 JSON形式の本文も必要です。本文には、次のパラメータを含めることができます。
| キー | 必須? | 説明 | 値 |
|---|---|---|---|
| DataAccessRoleArn | あり | HealthLake サービスロールの ARN。使用するサービスロールは、サービスプリンシパルとして HealthLake を指定する必要があります。 | arn:aws:iam:: |
| JobName | なし | エクスポートリクエストの名前。 | |
| S3Uri | あり | OutputDataConfig キーの一部。エクスポートされたデータがダウンロードされる送信先バケットの S3 URI。 | s3://amzn-s3-demo-bucket/ |
| KmsKeyId | あり | OutputDataConfig キーの一部。Amazon S3 バケットの保護に使用される AWS KMS キーの ARN。 | arn:aws:kms: |
例 FHIR REST API を使用して行われたエクスポートリクエストの本文
FHIR REST API を使用してエクスポートリクエストを行うには、次に示すように本文を指定する必要があります。
{
"DataAccessRoleArn": "arn:aws:iam::444455556666:role/your-healthlake-service-role",
"JobName": "your-export-job",
"OutputDataConfig": {
"S3Configuration": {
"S3Uri": "s3://amzn-s3-demo-bucket/EXPORT-JOB",
"KmsKeyId": "arn:aws:kms:region-of-bucket:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab"
}
}
}リクエストが成功すると、次のレスポンスを受け取ります。
レスポンスヘッダー
content-location: https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/export/your-export-request-job-id
レスポンス本文
{ "datastoreId": "your-data-store-id", "jobStatus": "SUBMITTED", "jobId": "your-export-request-job-id" }
エクスポートリクエストの管理
エクスポートリクエストが成功したら、 を使用して現在のエクスポートリクエストのステータスを$export記述し、現在のエクスポートリクエストをキャンセル$exportして、リクエストを管理できます。
REST API を使用してエクスポートリクエストをキャンセルすると、キャンセルリクエストを送信した時点までにエクスポートされたデータの一部に対してのみ課金されます。
以下のトピックでは、現在のエクスポートリクエストのステータスを取得またはキャンセルする方法について説明します。
エクスポートリクエストのキャンセル
エクスポートリクエストをキャンセルするには、DELETEリクエストを行い、リクエスト URL にジョブ ID を指定します。
DELETE https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/export/your-export-request-job-id
リクエストが成功すると、以下が表示されます。
{ "exportJobProperties": { "jobId": "your-original-export-request-job-id", "jobStatus": "CANCEL_SUBMITTED", "datastoreId": "your-data-store-id" } }
リクエストが成功しない場合、次の情報が表示されます。
{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "not-supported", "diagnostics": "Interaction not supported." } ] }
エクスポートリクエストの説明
エクスポートリクエストのステータスを取得するには、 exportと を使用してGETリクエストを行います。export-request-job-id
GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/export/your-export-request-id
JSON レスポンスには ExportJobProperties オブジェクトが含まれます。これには、次のキーと値のペアが含まれる場合があります。
| 名前 | 必須? | 説明 | 値 |
|---|---|---|---|
| DataAccessRoleArn | なし | HealthLake サービスロールの ARN。使用するサービスロールは、サービスプリンシパルとして HealthLake を指定する必要があります。 | arn:aws:iam:: |
| SubmitTime | なし | エクスポートジョブが送信された日付。 | Apr 21, 2023 5:58:02 |
| EndTime | なし | エクスポートジョブが完了した時刻。 |
Apr 21, 2023 6:00:08 PM |
| JobName | なし | エクスポートリクエストの名前。 | |
| JobStatus | なし | 次の値を指定できます:
|
|
| S3Uri | あり | OutputDataConfig オブジェクトの一部。エクスポートされたデータがダウンロードされるレプリケート先バケットの Amazon S3 URI。 | s3://amzn-s3-demo-bucket/ |
| KmsKeyId | あり | OutputDataConfig オブジェクトの一部。Amazon S3 バケットの保護に使用される AWS KMS キーの ARN。 | arn:aws:kms: |
例 : FHIR REST API を使用して行われた describe エクスポートリクエストの本文
成功すると、次の JSON レスポンスが表示されます。
{ "exportJobProperties": { "jobId": "your-export-request-id", "JobName": "your-export-job", "jobStatus": "SUBMITTED", "submitTime": "Apr 21, 2023 5:58:02 PM", "endTime": "Apr 21, 2023 6:00:08 PM", "datastoreId": "your-data-store-id", "outputDataConfig": { "s3Configuration": { "S3Uri": "s3://amzn-s3-demo-bucket/EXPORT-JOB", "KmsKeyId": "arn:aws:kms:region-of-bucket:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab"" } }, "DataAccessRoleArn": "arn:aws:iam::444455556666:role/your-healthlake-service-role", } }