Démarrage d'une tâche d'importation - AWS HealthImaging

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Démarrage d'une tâche d'importation

Utilisez cette StartDICOMImportJob action pour démarrer un contrôle de vérification des données en pixels et une importation de données en bloc dans un magasin de AWS HealthImaging données. La tâche d'importation importe des fichiers DICOM P10 situés dans le compartiment d'entrée Amazon S3 spécifié par le inputS3Uri paramètre. Les résultats du traitement des tâches d'importation sont stockés dans le compartiment de sortie Amazon S3 spécifié par le outputS3Uri paramètre.

Note

HealthImaging prend en charge les importations de données à partir de compartiments Amazon S3 situés dans d'autres régions prises en charge. Pour obtenir cette fonctionnalité, fournissez le inputOwnerAccountId paramètre lors du démarrage d'une tâche d'importation. Pour de plus amples informations, veuillez consulter Importation entre comptes pour AWS HealthImaging.

Lors de l'importation, des contraintes de longueur sont appliquées à des DICOM éléments spécifiques. Pour de plus amples informations, veuillez consulter DICOMcontraintes liées aux éléments.

Les menus suivants fournissent une procédure pour AWS Management Console et des exemples de code pour AWS CLI and AWS SDKs. Pour plus d'informations, reportez-vous StartDICOMImportJobà la section AWS HealthImaging APIRéférence.

Pour démarrer une tâche d'importation

Choisissez un menu en fonction de vos préférences d'accès à AWS HealthImaging.

  1. Ouvrez la page HealthImaging Stockages de données de la console.

  2. Choisissez un magasin de données.

  3. Choisissez Importer DICOM des données.

    La page Importer DICOM des données s'ouvre.

  4. Dans la section Détails, entrez les informations suivantes :

    • Nom (facultatif)

    • Importer l'emplacement de la source dans S3

    • ID de compte du propriétaire du compartiment source (facultatif)

    • Clé de chiffrement (facultatif)

    • Destination de sortie dans S3

  5. Dans la section Accès au service, choisissez Utiliser un rôle de service existant et sélectionnez le rôle dans le menu Nom du rôle de service ou choisissez Créer et utiliser un nouveau rôle de service.

  6. Choisissez Import (Importer).

C++
SDKpour C++
//! Routine which starts a HealthImaging import job. /*! \param dataStoreID: The HealthImaging data store ID. \param inputBucketName: The name of the Amazon S3 bucket containing the DICOM files. \param inputDirectory: The directory in the S3 bucket containing the DICOM files. \param outputBucketName: The name of the S3 bucket for the output. \param outputDirectory: The directory in the S3 bucket to store the output. \param roleArn: The ARN of the IAM role with permissions for the import. \param importJobId: A string to receive the import job ID. \param clientConfig: Aws client configuration. \return bool: Function succeeded. */ bool AwsDoc::Medical_Imaging::startDICOMImportJob( const Aws::String &dataStoreID, const Aws::String &inputBucketName, const Aws::String &inputDirectory, const Aws::String &outputBucketName, const Aws::String &outputDirectory, const Aws::String &roleArn, Aws::String &importJobId, const Aws::Client::ClientConfiguration &clientConfig) { Aws::MedicalImaging::MedicalImagingClient medicalImagingClient(clientConfig); Aws::String inputURI = "s3://" + inputBucketName + "/" + inputDirectory + "/"; Aws::String outputURI = "s3://" + outputBucketName + "/" + outputDirectory + "/"; Aws::MedicalImaging::Model::StartDICOMImportJobRequest startDICOMImportJobRequest; startDICOMImportJobRequest.SetDatastoreId(dataStoreID); startDICOMImportJobRequest.SetDataAccessRoleArn(roleArn); startDICOMImportJobRequest.SetInputS3Uri(inputURI); startDICOMImportJobRequest.SetOutputS3Uri(outputURI); Aws::MedicalImaging::Model::StartDICOMImportJobOutcome startDICOMImportJobOutcome = medicalImagingClient.StartDICOMImportJob( startDICOMImportJobRequest); if (startDICOMImportJobOutcome.IsSuccess()) { importJobId = startDICOMImportJobOutcome.GetResult().GetJobId(); } else { std::cerr << "Failed to start DICOM import job because " << startDICOMImportJobOutcome.GetError().GetMessage() << std::endl; } return startDICOMImportJobOutcome.IsSuccess(); }
Note

Il y en a plus à ce sujet GitHub. Consultez l'exemple complet et apprenez à configurer et à exécuter dans AWS Référentiel d'exemples de code.

CLI
AWS CLI

Pour démarrer une tâche d'importation DICOM

L'exemple de start-dicom-import-job code suivant démarre une tâche d'importation DICOM.

aws medical-imaging start-dicom-import-job \ --job-name "my-job" \ --datastore-id "12345678901234567890123456789012" \ --input-s3-uri "s3://medical-imaging-dicom-input/dicom_input/" \ --output-s3-uri "s3://medical-imaging-output/job_output/" \ --data-access-role-arn "arn:aws:iam::123456789012:role/ImportJobDataAccessRole"

Sortie :

{ "datastoreId": "12345678901234567890123456789012", "jobId": "09876543210987654321098765432109", "jobStatus": "SUBMITTED", "submittedAt": "2022-08-12T11:28:11.152000+00:00" }

Pour plus d'informations, voir Démarrage d'une tâche d'importation dans le AWS HealthImaging Guide du développeur.

Java
SDKpour Java 2.x
public static String startDicomImportJob(MedicalImagingClient medicalImagingClient, String jobName, String datastoreId, String dataAccessRoleArn, String inputS3Uri, String outputS3Uri) { try { StartDicomImportJobRequest startDicomImportJobRequest = StartDicomImportJobRequest.builder() .jobName(jobName) .datastoreId(datastoreId) .dataAccessRoleArn(dataAccessRoleArn) .inputS3Uri(inputS3Uri) .outputS3Uri(outputS3Uri) .build(); StartDicomImportJobResponse response = medicalImagingClient.startDICOMImportJob(startDicomImportJobRequest); return response.jobId(); } catch (MedicalImagingException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } return ""; }
Note

Il y en a plus à ce sujet GitHub. Consultez l'exemple complet et apprenez à configurer et à exécuter dans AWS Référentiel d'exemples de code.

JavaScript
SDKpour JavaScript (v3)
import { StartDICOMImportJobCommand } from "@aws-sdk/client-medical-imaging"; import { medicalImagingClient } from "../libs/medicalImagingClient.js"; /** * @param {string} jobName - The name of the import job. * @param {string} datastoreId - The ID of the data store. * @param {string} dataAccessRoleArn - The Amazon Resource Name (ARN) of the role that grants permission. * @param {string} inputS3Uri - The URI of the S3 bucket containing the input files. * @param {string} outputS3Uri - The URI of the S3 bucket where the output files are stored. */ export const startDicomImportJob = async ( jobName = "test-1", datastoreId = "12345678901234567890123456789012", dataAccessRoleArn = "arn:aws:iam::xxxxxxxxxxxx:role/ImportJobDataAccessRole", inputS3Uri = "s3://medical-imaging-dicom-input/dicom_input/", outputS3Uri = "s3://medical-imaging-output/job_output/" ) => { const response = await medicalImagingClient.send( new StartDICOMImportJobCommand({ jobName: jobName, datastoreId: datastoreId, dataAccessRoleArn: dataAccessRoleArn, inputS3Uri: inputS3Uri, outputS3Uri: outputS3Uri, }) ); console.log(response); // { // '$metadata': { // httpStatusCode: 200, // requestId: '6e81d191-d46b-4e48-a08a-cdcc7e11eb79', // extendedRequestId: undefined, // cfId: undefined, // attempts: 1, // totalRetryDelay: 0 // }, // datastoreId: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', // jobId: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', // jobStatus: 'SUBMITTED', // submittedAt: 2023-09-22T14:48:45.767Z // } return response; };
Note

Il y en a plus à ce sujet GitHub. Consultez l'exemple complet et apprenez à configurer et à exécuter dans AWS Référentiel d'exemples de code.

Python
SDKpour Python (Boto3)
class MedicalImagingWrapper: def __init__(self, health_imaging_client): self.health_imaging_client = health_imaging_client def start_dicom_import_job( self, job_name, datastore_id, role_arn, input_s3_uri, output_s3_uri ): """ Start a DICOM import job. :param job_name: The name of the job. :param datastore_id: The ID of the data store. :param role_arn: The Amazon Resource Name (ARN) of the role to use for the job. :param input_s3_uri: The S3 bucket input prefix path containing the DICOM files. :param output_s3_uri: The S3 bucket output prefix path for the result. :return: The job ID. """ try: job = self.health_imaging_client.start_dicom_import_job( jobName=job_name, datastoreId=datastore_id, dataAccessRoleArn=role_arn, inputS3Uri=input_s3_uri, outputS3Uri=output_s3_uri, ) except ClientError as err: logger.error( "Couldn't start DICOM import job. Here's why: %s: %s", err.response["Error"]["Code"], err.response["Error"]["Message"], ) raise else: return job["jobId"]

Le code suivant instancie l' MedicalImagingWrapper objet.

client = boto3.client("medical-imaging") medical_imaging_wrapper = MedicalImagingWrapper(client)
Note

Il y en a plus à ce sujet GitHub. Consultez l'exemple complet et apprenez à configurer et à exécuter dans AWS Référentiel d'exemples de code.