Importing files into a HealthLake data store
After you complete Creating a data store in AWS HealthLake, you can import files into the
data store from an Amazon Simple Storage Service (Amazon S3) bucket. To import files, you start an import job with the HealthLake console or the StartFHIRImportJob
API operation.
When you create an import job, you specify location of your input data in Amazon S3, an Amazon S3 bucket location for output log files, an IAM role that grants HealthLake access to your buckets, and a customer owned or AWS owned AWS Key Management Service key. HealthLake uses this key to encrypt your data in the source location and will be used to decrypt it to allow HealthLake to import it. For information about setting up permissions for import jobs, see Setting up permissions for import jobs. To learn more about creating and using AWS KMS keys, see Creating keys in the AWS Key Management Service Developer Guide.
HealthLake accepts input files in newline delimited JSON (.ndjson
) format, where each line consists of
a valid FHIR resource. You can use the API operations DescribeFHIRImportJob
and
ListFHIRImportJobs
to describe and list ongoing import jobs.
For each import job, HealthLake generates a manifest.json
file. This log describes both the successes
and failures of an import job. HealthLake outputs
the file to the Amazon S3 bucket you specify when you create an import job. For more information, see Manifest JSON file.
You can enqueue import or export jobs. These asynchronous import or export jobs are processed in a FIFO (First In First Out) manner. You can create, read, update, or delete FHIR resources while an import or export job is in progress.
After you populate a data store with preloaded data or import data, you can start querying your data store using SQL in Amazon Athena. For more information, see Query AWS HealthLake data stores using SQL in Amazon Athena.