

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.

# Création d'un magasin de données
<a name="create-data-store"></a>

Utilisez cette `CreateDatastore` action pour créer un [magasin de HealthImaging données](getting-started-concepts.md#concept-data-store) AWS pour importer des fichiers DICOM P10. Les menus suivants fournissent une procédure AWS Management Console et des exemples de code pour le AWS CLI et AWS SDKs. Pour plus d'informations, consultez [https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_CreateDatastore.html](https://docs.aws.amazon.com/healthimaging/latest/APIReference/API_CreateDatastore.html)le manuel de *référence des HealthImaging API AWS*. Lorsque vous créez un magasin de données, vous pouvez sélectionner la syntaxe de transfert par défaut HealthImaging utilisée par AWS pour transcoder et stocker des images sans perte. Cette configuration ne peut pas être modifiée une fois le magasin de données créé.

**JPEG 2000 (HTJ2K) à haut débit**  
HTJ2K (High Throughput JPEG 2000) est le format de stockage par défaut pour les HealthImaging banques de données. Il s'agit d'une extension de la norme JPEG 2000 qui offre des performances d'encodage et de décodage nettement améliorées. Lorsque vous créez une banque de données sans spécifier un`—lossless-storage-format`, utilise HealthImaging automatiquement K. HTJ2 Consultez la *CLI AWS et* la SDKs section ci-dessous pour créer un magasin de données à l'aide de HTJ2 K.

**JPEG 2000 sans perte**  
Le codage JPEG 2000 Lossless permet de créer des banques de données qui persistent et récupèrent des images sans perte au format JPEG 2000 sans transcodage, ce qui permet une extraction à faible latence pour les applications qui nécessitent JPEG 2000 Lossless (DICOM Transfer Syntax UID 1.2.840.10008.1.2.4.90) voir pour plus de détails. [Syntaxes de transfert prises en charge](supported-transfer-syntaxes.md) Consultez la *CLI AWS et* la SDKs section ci-dessous pour créer un magasin de données à l'aide du format sans perte JPEG 2000.

**Important**  
Ne nommez pas les magasins de données contenant des informations de santé protégées (PHI), des informations personnelles identifiables (PII) ou d'autres informations confidentielles ou sensibles.
La console AWS prend en charge la création de magasins de données avec des paramètres par défaut. Utilisez la AWS CLI ou le AWS SDK pour créer un magasin de données avec un paramètre facultatif `—lossless-storage-format` spécifié.

**Pour créer un magasin de données**  
Choisissez un menu en fonction de vos préférences d'accès à AWS HealthImaging.

## AWS Console
<a name="code-example-console-data-store-create"></a>

1. Ouvrez la [page Créer un magasin de données](https://console.aws.amazon.com/medical-imaging/home#/dataStores/create) de la HealthImaging console.

1. Sous **Détails**, dans **Nom du magasin de données**, entrez le nom de votre magasin de données.

1. Sous **Chiffrement des données**, choisissez une AWS KMS clé pour chiffrer vos ressources. Pour de plus amples informations, veuillez consulter [Protection des données dans AWS HealthImaging](data-protection.md).

1. Sous **Balises *(facultatif)***, vous pouvez ajouter des balises à votre banque de données lorsque vous la créez. Pour de plus amples informations, veuillez consulter [Marquer une ressource](tag-resource.md).

1. Choisissez **Créer un magasin de données**.

## AWS CLI et SDKs
<a name="code-example-cli-sdk-data-store-create"></a>

------
#### [ Bash ]

**AWS CLI avec le script Bash**  

```
###############################################################################
# function errecho
#
# This function outputs everything sent to it to STDERR (standard error output).
###############################################################################
function errecho() {
  printf "%s\n" "$*" 1>&2
}

###############################################################################
# function imaging_create_datastore
#
# This function creates an AWS HealthImaging data store for importing DICOM P10 files.
#
# Parameters:
#       -n data_store_name - The name of the data store.
#
# Returns:
#       The datastore ID.
#    And:
#       0 - If successful.
#       1 - If it fails.
###############################################################################
function imaging_create_datastore() {
  local datastore_name response
  local option OPTARG # Required to use getopts command in a function.

  # bashsupport disable=BP5008
  function usage() {
    echo "function imaging_create_datastore"
    echo "Creates an AWS HealthImaging data store for importing DICOM P10 files."
    echo "  -n data_store_name - The name of the data store."
    echo ""
  }

  # Retrieve the calling parameters.
  while getopts "n:h" option; do
    case "${option}" in
      n) datastore_name="${OPTARG}" ;;
      h)
        usage
        return 0
        ;;
      \?)
        echo "Invalid parameter"
        usage
        return 1
        ;;
    esac
  done
  export OPTIND=1

  if [[ -z "$datastore_name" ]]; then
    errecho "ERROR: You must provide a data store name with the -n parameter."
    usage
    return 1
  fi

  response=$(aws medical-imaging create-datastore \
    --datastore-name "$datastore_name" \
    --output text \
    --query 'datastoreId')

  local error_code=${?}

  if [[ $error_code -ne 0 ]]; then
    aws_cli_error_log $error_code
    errecho "ERROR: AWS reports medical-imaging create-datastore operation failed.$response"
    return 1
  fi

  echo "$response"

  return 0
}
```
+  Pour plus de détails sur l'API, voir [CreateDatastore](https://docs.aws.amazon.com/goto/aws-cli/medical-imaging-2023-07-19/CreateDatastore)la section *Référence des AWS CLI commandes*. 
 Il y en a plus sur GitHub. Trouvez l’exemple complet et découvrez comment le configurer et l’exécuter dans le [référentiel d’exemples de code AWS](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/aws-cli/bash-linux/medical-imaging#code-examples). 

------
#### [ CLI ]

**AWS CLI**  
**Exemple 1 : pour créer un magasin de données**  
L’exemple de code `create-datastore` suivant crée un magasin de données portant le nom `my-datastore`. Lorsque vous créez une banque de données sans spécifier a`--lossless-storage-format`, la AWS HealthImaging valeur par défaut est HTJ2 K (High Throughput JPEG 2000).  

```
aws medical-imaging create-datastore \
    --datastore-name "my-datastore"
```
Sortie :  

```
{
    "datastoreId": "12345678901234567890123456789012",
    "datastoreStatus": "CREATING"
}
```
**Exemple 2 : pour créer un magasin de données au format de stockage sans perte JPEG 2000**  
Un magasin de données configuré avec le format de stockage sans perte JPEG 2000 transcode et conserve les images sans perte au format JPEG 2000. Les images peuvent ensuite être récupérées au format JPEG 2000 Lossless sans transcodage. L'exemple de `create-datastore` code suivant crée un magasin de données configuré pour le format de stockage JPEG 2000 Lossless avec le nom`my-datastore`.  

```
aws medical-imaging create-datastore \
    --datastore-name "my-datastore" \
    --lossless-storage-format JPEG_2000_LOSSLESS
```
Sortie :  

```
{
    "datastoreId": "12345678901234567890123456789012",
    "datastoreStatus": "CREATING"
}
```
Pour plus d'informations, consultez la section [Création d'un magasin de données](https://docs.aws.amazon.com/healthimaging/latest/devguide/create-data-store.html) dans le *Guide du AWS HealthImaging développeur*.  
+  Pour plus de détails sur l'API, voir [CreateDatastore](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/medical-imaging/create-datastore.html)la section *Référence des AWS CLI commandes*. 

------
#### [ Java ]

**SDK pour Java 2.x**  

```
    public static String createMedicalImageDatastore(MedicalImagingClient medicalImagingClient,
            String datastoreName) {
        try {
            CreateDatastoreRequest datastoreRequest = CreateDatastoreRequest.builder()
                    .datastoreName(datastoreName)
                    .build();
            CreateDatastoreResponse response = medicalImagingClient.createDatastore(datastoreRequest);
            return response.datastoreId();
        } catch (MedicalImagingException e) {
            System.err.println(e.awsErrorDetails().errorMessage());
            System.exit(1);
        }

        return "";
    }
```
+  Pour plus de détails sur l'API, voir [CreateDatastore](https://docs.aws.amazon.com/goto/SdkForJavaV2/medical-imaging-2023-07-19/CreateDatastore)la section *Référence des AWS SDK for Java 2.x API*. 
 Il y en a plus sur GitHub. Trouvez l’exemple complet et découvrez comment le configurer et l’exécuter dans le [référentiel d’exemples de code AWS](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javav2/example_code/medicalimaging#code-examples). 

------
#### [ JavaScript ]

**SDK pour JavaScript (v3)**  

```
import { CreateDatastoreCommand } from "@aws-sdk/client-medical-imaging";
import { medicalImagingClient } from "../libs/medicalImagingClient.js";

/**
 * @param {string} datastoreName - The name of the data store to create.
 */
export const createDatastore = async (datastoreName = "DATASTORE_NAME") => {
  const response = await medicalImagingClient.send(
    new CreateDatastoreCommand({ datastoreName: datastoreName }),
  );
  console.log(response);
  // {
  //   '$metadata': {
  //       httpStatusCode: 200,
  //       requestId: 'a71cd65f-2382-49bf-b682-f9209d8d399b',
  //       extendedRequestId: undefined,
  //       cfId: undefined,
  //       attempts: 1,
  //       totalRetryDelay: 0
  //    },
  //    datastoreId: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
  //    datastoreStatus: 'CREATING'
  // }
  return response;
};
```
+  Pour plus de détails sur l'API, voir [CreateDatastore](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/medical-imaging/command/CreateDatastoreCommand)la section *Référence des AWS SDK pour JavaScript API*. 
 Il y en a plus sur GitHub. Trouvez l’exemple complet et découvrez comment le configurer et l’exécuter dans le [référentiel d’exemples de code AWS](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javascriptv3/example_code/medical-imaging#code-examples). 

------
#### [ Python ]

**Kit SDK for Python (Boto3)**  

```
class MedicalImagingWrapper:
    def __init__(self, health_imaging_client):
        self.health_imaging_client = health_imaging_client


    def create_datastore(self, name):
        """
        Create a data store.

        :param name: The name of the data store to create.
        :return: The data store ID.
        """
        try:
            data_store = self.health_imaging_client.create_datastore(datastoreName=name)
        except ClientError as err:
            logger.error(
                "Couldn't create data store %s. Here's why: %s: %s",
                name,
                err.response["Error"]["Code"],
                err.response["Error"]["Message"],
            )
            raise
        else:
            return data_store["datastoreId"]
```
Le code suivant instancie l' MedicalImagingWrapper objet.   

```
    client = boto3.client("medical-imaging")
    medical_imaging_wrapper = MedicalImagingWrapper(client)
```
+  Pour plus de détails sur l'API, consultez [CreateDatastore](https://docs.aws.amazon.com/goto/boto3/medical-imaging-2023-07-19/CreateDatastore)le *AWS manuel de référence de l'API SDK for Python (Boto3*). 
 Il y en a plus sur GitHub. Trouvez l’exemple complet et découvrez comment le configurer et l’exécuter dans le [référentiel d’exemples de code AWS](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/python/example_code/medical-imaging#code-examples). 

------
#### [ SAP ABAP ]

**Kit SDK pour SAP ABAP**  

```
    TRY.
        " iv_datastore_name = 'my-datastore-name'
        oo_result = lo_mig->createdatastore( iv_datastorename = iv_datastore_name ).
        DATA(lv_datastore_id) = oo_result->get_datastoreid( ).
        MESSAGE 'Data store created.' TYPE 'I'.
      CATCH /aws1/cx_migaccessdeniedex.
        MESSAGE 'Access denied.' TYPE 'I'.
      CATCH /aws1/cx_migconflictexception.
        MESSAGE 'Conflict. Data store may already exist.' TYPE 'I'.
      CATCH /aws1/cx_miginternalserverex.
        MESSAGE 'Internal server error.' TYPE 'I'.
      CATCH /aws1/cx_migservicequotaexcdex.
        MESSAGE 'Service quota exceeded.' TYPE 'I'.
      CATCH /aws1/cx_migthrottlingex.
        MESSAGE 'Request throttled.' TYPE 'I'.
      CATCH /aws1/cx_migvalidationex.
        MESSAGE 'Validation error.' TYPE 'I'.
    ENDTRY.
```
+  Pour plus de détails sur l'API, consultez [CreateDatastore](https://docs.aws.amazon.com/sdk-for-sap-abap/v1/api/latest/index.html)la section de référence du *AWS SDK pour l'API SAP ABAP*. 
 Il y en a plus sur GitHub. Trouvez l’exemple complet et découvrez comment le configurer et l’exécuter dans le [référentiel d’exemples de code AWS](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/sap-abap/services/mig#code-examples). 

------

**Exemple de disponibilité**  
Vous n’avez pas trouvé ce dont vous avez besoin ? Demandez un exemple de code à l'aide du lien **Fournir des commentaires** dans la barre latérale droite de cette page.