

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.

# Configuration de DynamoDB
<a name="SettingUp"></a>

 Outre le service Web Amazon DynamoDB AWS , il fournit une version téléchargeable de DynamoDB que vous pouvez exécuter sur votre ordinateur. Elle s’avère utile pour développer et tester du code. Elle permet d’écrire et de tester des applications localement sans accéder au service web DynamoDB. 

 Les rubriques de cette section décrivent comment configurer DynamoDB (version téléchargeable) et le service web DynamoDB. 

**Topics**
+ [Configuration de DynamoDB (service web)](SettingUp.DynamoWebService.md)
+ [Configuration de DynamoDB Local (version téléchargeable)](DynamoDBLocal.md)

# Configuration de DynamoDB (service web)
<a name="SettingUp.DynamoWebService"></a>

 Pour utiliser le service web Amazon DynamoDB : 

1.  [Inscrivez-vous à AWS.](#SettingUp.DynamoWebService.SignUpForAWS) 

1.  [Obtenez une clé d' AWS accès](#SettingUp.DynamoWebService.GetCredentials) (utilisée pour accéder à DynamoDB par programmation). 
**Note**  
 Si vous prévoyez d'interagir avec DynamoDB uniquement via AWS Management Console le, vous n'avez pas besoin de clé AWS d'accès et vous pouvez passer directement à. [Utilisation de la console](AccessingDynamoDB.md#ConsoleDynamoDB) 

1.  [Configurez vos informations d’identification](#SettingUp.DynamoWebService.ConfigureCredentials) (pour accéder à DynamoDB par programme). 

## S'inscrire à AWS
<a name="SettingUp.DynamoWebService.SignUpForAWS"></a>

 Pour utiliser le service DynamoDB, vous devez disposer d'un compte. AWS Si vous n’en avez pas déjà un, vous serez invité à en créer un au moment de l’inscription. Les AWS services auxquels vous vous inscrivez ne vous sont pas facturés, sauf si vous les utilisez. 

**Pour vous inscrire à AWS**

1. Ouvrez l'[https://portal.aws.amazon.com/billing/inscription.](https://portal.aws.amazon.com/billing/signup)

1. Suivez les instructions en ligne.

   Dans le cadre de la procédure d’inscription, vous recevrez un appel téléphonique ou un SMS et vous saisirez un code de vérification en utilisant le clavier numérique du téléphone.

   Lorsque vous vous inscrivez à un Compte AWS, un *Utilisateur racine d'un compte AWS*est créé. Par défaut, seul l’utilisateur racine a accès à l’ensemble des Services AWS et des ressources de ce compte. La meilleure pratique de sécurité consiste à attribuer un accès administratif à un utilisateur, et à utiliser uniquement l’utilisateur racine pour effectuer les [tâches nécessitant un accès utilisateur racine](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks).

## Accorder un accès par programmation
<a name="SettingUp.DynamoWebService.GetCredentials"></a>

 Avant de pouvoir accéder à DynamoDB par programmation ou via AWS Command Line Interface le AWS CLI(), vous devez disposer d'un accès par programmation. Vous n’avez pas besoin d’accès par programmation si vous prévoyez d’utiliser uniquement la console DynamoDB. 

Les utilisateurs ont besoin d'un accès programmatique s'ils souhaitent interagir avec AWS l'extérieur du AWS Management Console. La manière d'accorder un accès programmatique dépend du type d'utilisateur qui y accède AWS.

Pour accorder aux utilisateurs un accès programmatique, choisissez l’une des options suivantes.


****  

| Quel utilisateur a besoin d’un accès programmatique ? | À | Méthode | 
| --- | --- | --- | 
| IAM | (Recommandé) Utilisez les informations d'identification de la console comme informations d'identification temporaires pour signer les demandes programmatiques adressées au AWS CLI AWS SDKs, ou AWS APIs. |  Suivez les instructions de l’interface que vous souhaitez utiliser. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/SettingUp.DynamoWebService.html)  | 
|  Identité de la main-d’œuvre (Utilisateurs gérés dans IAM Identity Center)  | Utilisez des informations d'identification temporaires pour signer les demandes programmatiques adressées au AWS CLI AWS SDKs, ou AWS APIs. |  Suivez les instructions de l’interface que vous souhaitez utiliser. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/SettingUp.DynamoWebService.html)  | 
| IAM | Utilisez des informations d'identification temporaires pour signer les demandes programmatiques adressées au AWS CLI AWS SDKs, ou AWS APIs. | Suivez les instructions de la section [Utilisation d'informations d'identification temporaires avec AWS les ressources](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html) du Guide de l'utilisateur IAM. | 
| IAM | (Non recommandé)Utilisez des informations d'identification à long terme pour signer des demandes programmatiques adressées au AWS CLI AWS SDKs, ou AWS APIs. |  Suivez les instructions de l’interface que vous souhaitez utiliser. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/SettingUp.DynamoWebService.html)  | 

## Configuration de vos informations d’identification
<a name="SettingUp.DynamoWebService.ConfigureCredentials"></a>

 Avant de pouvoir accéder à DynamoDB par programmation ou via AWS CLI le, vous devez configurer vos informations d'identification afin d'autoriser vos applications. 

 Il existe plusieurs méthodes pour le faire. Par exemple, vous pouvez créer manuellement le fichier d’informations d’identification pour stocker votre ID de clé d’accès et votre clé d’accès secrète. Vous pouvez également utiliser la AWS CLI commande `aws configure` pour créer automatiquement le fichier. Vous pouvez également utiliser les variables d’environnement. Pour plus d'informations sur la configuration de vos informations d'identification, consultez le guide du développeur du AWS SDK spécifique à la programmation.

 Pour installer et configurer le AWS CLI, voir[À l'aide du AWS CLI](AccessingDynamoDB.md#Tools.CLI). 

## Intégration à d’autres services DynamoDB
<a name="w2aab9c17b9c13"></a>

Vous pouvez intégrer DynamoDB à de nombreux autres services. AWS Pour plus d’informations, consultez les ressources suivantes : 
+ [Utilisation de DynamoDB avec d'autres services AWS](OtherServices.md)
+ [CloudFormation pour DynamoDB](https://docs.aws.amazon.com//AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html)
+ [Utilisation de AWS Backup avec DynamoDB](backuprestore_HowItWorksAWS.md)
+ [Gestion des identités et des accès AWS (IAM) et DynamoDB](identity-and-access-mgmt.md)
+ [Utilisation d’ AWS Lambda avec Amazon DynamoDB](https://docs.aws.amazon.com/lambda/latest/dg/with-ddb.html)

# Configuration de DynamoDB Local (version téléchargeable)
<a name="DynamoDBLocal"></a>

 La version téléchargeable d’Amazon DynamoDB vous permet d’écrire et de tester des applications sans accéder au service web DynamoDB. Au lieu de cela, la base de données est autonome sur votre ordinateur. Lorsque vous êtes prêt à déployer votre application en production, vous supprimez le point de terminaison local dans le code afin que l’application pointe vers le service web DynamoDB. 

 Disposer de cette version locale vous aide à économiser sur les frais de transfert de données, de stockage de données et de débit. En outre, vous n’avez pas besoin d’une connexion internet pendant que vous développez votre application. 

 DynamoDB local est disponible en [téléchargement](DynamoDBLocal.DownloadingAndRunning.md#DynamoDBLocal.DownloadingAndRunning.title) (nécessite JRE) sous la forme d’une [dépendance Apache Maven](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.DownloadingAndRunning.html#apache-maven) ou d’une [image Docker](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.DownloadingAndRunning.html#docker). 

 Si vous préférez utiliser le service web Amazon DynamoDB, consultez [Configuration de DynamoDB (service web)](SettingUp.DynamoWebService.md). 

**Topics**
+ [Déploiement de DynamoDB localement sur votre ordinateur](DynamoDBLocal.DownloadingAndRunning.md)
+ [Notes d’utilisation de DynamoDB Local](DynamoDBLocal.UsageNotes.md)
+ [Historique des versions de DynamoDB local](DynamoDBLocalHistory.md)
+ [Télémétrie dans DynamoDB Local](DynamoDBLocalTelemetry.md)

# Déploiement de DynamoDB localement sur votre ordinateur
<a name="DynamoDBLocal.DownloadingAndRunning"></a>

**Note**  
DynamoDB local est disponible en trois versions : v3.x (actuelle), v2.x (héritée) et v1.x (obsolète).
DynamoDB v3.x est recommandé pour vos tests et développements locaux.
La migration de DynamoDB local V2.x vers V3.x nécessite la mise à jour des instructions d’importation de `com.amazonaws.services.dynamodbv2` vers `software.amazon.dynamodb` et la mise à jour des dépendances Maven pour les utilisateurs de Maven.
Si vous migrez une application qui utilise le kit SDK pour Java v1.x vers le kit SDK pour Java 2.x, suivez les étapes du [ kit AWS SDK pour Java 2.x](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/migration.html).

## Téléchargement de DynamoDB local
<a name="DynamoDBLocal.DownloadingAndRunning.V2"></a>

Suivez ces étapes pour configurer et exécuter DynamoDB sur votre ordinateur :

**Pour configurer DynamoDB sur votre ordinateur**

1. Téléchargez DynamoDB local gratuitement à partir de l’un des emplacements suivants.  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocal.DownloadingAndRunning.html)
**Important**  
 Pour exécuter DynamoDB v2.6.0 ou supérieures sur votre ordinateur, vous devez disposer de l’environnement d’exécution Java (JRE) version 17.x ou plus récente. L’application ne fonctionne pas sur les versions antérieures de JRE.

1.  Une fois que vous avez téléchargé l’archive, extrayez le contenu et copiez le répertoire extrait vers un emplacement de votre choix. 

1.  Pour démarrer DynamoDB sur votre ordinateur, ouvrez une fenêtre d’invite de commande, accédez au répertoire où vous avez extrait `DynamoDBLocal.jar`, puis entrez la commande suivante. 

   ```
   java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
   ```
**Note**  
 Si vous utilisez Windows PowerShell, veillez à inclure le nom du paramètre ou le nom complet et la valeur comme suit :   
 ` java -D"java.library.path=./DynamoDBLocal_lib" -jar DynamoDBLocal.jar `   
 DynamoDB traite les demandes entrantes jusqu’à ce que vous l’arrêtiez. Pour arrêter DynamoDB, tapez Ctrl \$1 C à l’invite de commande.   
 DynamoDB utilise le port 8000 par défaut. Si le port 8000 n'est pas disponible, cette commande lève une exception. Pour obtenir la liste complète des options d’exécution de DynamoDB, y compris `-port`, entrez la commande suivante.   
 ` java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -help ` 

1. Pour pouvoir accéder à DynamoDB par programme ou via l’ AWS Command Line Interface (AWS CLI), vous devez configurer vos informations d’identification pour permettre l’autorisation de vos applications. La version téléchargeable de DynamoDB requiert des informations d’identification pour fonctionner, comme l’illustre l’exemple suivant. 

   ```
   AWS Access Key ID: "fakeMyKeyId"
   AWS Secret Access Key: "fakeSecretAccessKey"
   Default Region Name: "fakeRegion"
   ```

    Vous pouvez utiliser la commande `aws configure` de AWS CLI pour configurer des informations d’identification. Pour de plus amples informations, veuillez consulter [À l'aide du AWS CLI](AccessingDynamoDB.md#Tools.CLI). 

1.  Vous pouvez commencer à écrire des applications. Pour accéder à DynamoDB s'exécutant localement avec AWS CLI le, utilisez le paramètre. `--endpoint-url ` Par exemple, utilisez la commande suivante pour afficher la liste des tables DynamoDB. 

   ```
   aws dynamodb list-tables --endpoint-url http://localhost:8000
   ```

## Exécution de DynamoDB local en tant qu’image Docker
<a name="DynamoDBLocal.DownloadingAndRunning.Docker"></a>

 La version téléchargeable d’Amazon DynamoDB est disponible sous la forme d’une image Docker. Pour plus d’informations, consultez [dynamodb-local](https://hub.docker.com/r/amazon/dynamodb-local). Pour savoir quelle est votre version dans DynamoDB local, saisissez la commande suivante :

```
java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -version
```

 Pour un exemple d'utilisation de DynamoDB local dans le cadre d'une application REST basée sur AWS SAM(), consultez AWS Serverless Application Model l'application [SAM DynamoDB](https://github.com/aws-samples/aws-sam-java-rest) pour la gestion des commandes. Cet exemple d’application montre comment utiliser DynamoDB Local à des fins de test. 

 Si vous souhaitez exécuter une application à conteneurs multiples qui utilise également le conteneur local DynamoDB, utilisez Docker Compose pour définir et exécuter tous les services de votre application, y compris DynamoDB local. 

**Pour installer et exécuter DynamoDB Local avec Docker Compose :**

1.  Téléchargez et installez [Docker Desktop](https://www.docker.com/products/docker-desktop). 

1.  Copiez le code suivant dans un fichier et enregistrez-le sous le nom `docker-compose.yml`. 

   ```
   services:
    dynamodb-local:
      command: "-jar DynamoDBLocal.jar -sharedDb -dbPath ./data"
      image: "amazon/dynamodb-local:latest"
      container_name: dynamodb-local
      ports:
        - "8000:8000"
      volumes:
        - "./docker/dynamodb:/home/dynamodblocal/data"
      working_dir: /home/dynamodblocal
   ```

    Si vous voulez que votre application et DynamoDB Local soient dans des conteneurs distincts, utilisez le fichier yaml suivant : 

   ```
   version: '3.8'
   services:
    dynamodb-local:
      command: "-jar DynamoDBLocal.jar -sharedDb -dbPath ./data"
      image: "amazon/dynamodb-local:latest"
      container_name: dynamodb-local
      ports:
        - "8000:8000"
      volumes:
        - "./docker/dynamodb:/home/dynamodblocal/data"
      working_dir: /home/dynamodblocal
    app-node:
      depends_on:
        - dynamodb-local
      image: amazon/aws-cli
      container_name: app-node
      ports:
       - "8080:8080"
      environment:
        AWS_ACCESS_KEY_ID: 'DUMMYIDEXAMPLE'
        AWS_SECRET_ACCESS_KEY: 'DUMMYEXAMPLEKEY'
      command:
        dynamodb describe-limits --endpoint-url http://dynamodb-local:8000 --region us-west-2
   ```

    Ce script docker-compose.yml crée un conteneur `app-node` et un conteneur `dynamodb-local`. Le script exécute une commande dans le conteneur `app-node`, qui utilise l’ AWS CLI pour se connecter au conteneur `dynamodb-local`, et décrit les limites de compte et de table. 

    Pour l’utiliser avec votre propre image d’application, remplacez la valeur `image` dans l’exemple ci-dessous par celle de votre application. 

   ```
   version: '3.8'
   services:
    dynamodb-local:
      command: "-jar DynamoDBLocal.jar -sharedDb -dbPath ./data"
      image: "amazon/dynamodb-local:latest"
      container_name: dynamodb-local
      ports:
        - "8000:8000"
      volumes:
        - "./docker/dynamodb:/home/dynamodblocal/data"
      working_dir: /home/dynamodblocal
    app-node:
      image: location-of-your-dynamodb-demo-app:latest
      container_name: app-node
      ports:
        - "8080:8080"
      depends_on:
        - "dynamodb-local"
      links:
        - "dynamodb-local"
      environment:
        AWS_ACCESS_KEY_ID: 'DUMMYIDEXAMPLE'
        AWS_SECRET_ACCESS_KEY: 'DUMMYEXAMPLEKEY'
        REGION: 'eu-west-1'
   ```
**Note**  
 Les scripts YAML nécessitent que vous spécifiiez une clé d' AWS accès et une clé AWS secrète, mais il n'est pas nécessaire qu'il s'agisse de AWS clés valides pour accéder à DynamoDB local. 

1.  Exécutez la commande de ligne de commande suivante : 

   ```
   docker-compose up
   ```

## Exécution de DynamoDB local en tant que dépendance Apache Maven
<a name="DynamoDBLocal.DownloadingAndRunning.Maven.v2"></a>

**Note**  
Si vous migrez une application qui utilise le kit SDK pour Java v1.x vers le kit SDK pour Java 2.x, suivez les étapes du [ kit AWS SDK pour Java 2.x](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/migration.html).

 Suivez ces étapes pour utiliser Amazon DynamoDB dans votre application en tant que dépendance. 

**Pour déployer DynamoDB en tant que référentiel Apache Maven**

1.  Téléchargez et installez Apache Maven. Pour plus d’informations, consultez [Downloading Apache Maven](https://maven.apache.org/download.cgi) et [Installing Apache Maven](https://maven.apache.org/install.html). 

1.  Ajoutez le référentiel Maven DynamoDB au fichier POM (Project Object Model) de votre application. 

   ```
   <!--Dependency:-->
   <dependencies>
      <dependency>
         <groupId>software.amazon.dynamodb</groupId>
         <artifactId>DynamoDBLocal</artifactId>
         <version>3.3.0</version>
      </dependency>
   </dependencies>
   ```

    Exemple de modèle à utiliser avec Spring Boot 3 and/or Spring Framework 6 : 

   ```
   <?xml version="1.0" encoding="UTF-8"?>
   <project xmlns="http://maven.apache.org/POM/4.0.0"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>
   
   <groupId>org.example</groupId>
   <artifactId>SpringMavenDynamoDB</artifactId>
   <version>1.0-SNAPSHOT</version>
   
   <properties>
      <spring-boot.version>3.0.1</spring-boot.version>
      <maven.compiler.source>17</maven.compiler.source>
      <maven.compiler.target>17</maven.compiler.target>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
   </properties>
   
      <parent>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-parent</artifactId>
          <version>3.1.0</version>
      </parent>
   
   <dependencies>
      <dependency>
          <groupId>software.amazon.dynamodb</groupId>
          <artifactId>DynamoDBLocal</artifactId>
          <version>3.3.0</version>
      </dependency>
      <!-- Spring Boot -->
      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter</artifactId>
          <version>${spring-boot.version}</version>
      </dependency>
      <!-- Spring Web -->
      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-web</artifactId>
          <version>${spring-boot.version}</version>
      </dependency>
      <!-- Spring Data JPA -->
      <dependency>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-data-jpa</artifactId>
          <version>${spring-boot.version}</version>
      </dependency>
      <!-- Other Spring dependencies -->
      <!-- Replace the version numbers with the desired version -->
      <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-context</artifactId>
          <version>6.0.0</version>
      </dependency>
      <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-core</artifactId>
          <version>6.0.0</version>
      </dependency>
      <!-- Add other Spring dependencies as needed -->
      <!-- Add any other dependencies your project requires -->
   </dependencies>
   </project>
   ```
**Note**  
 Vous pouvez également utiliser l’URL du [référentiel central Maven](https://mvnrepository.com/artifact/com.amazonaws/DynamoDBLocal?repo=dynamodb-local-release). 

## Exécutez DynamoDB en local dans AWS CloudShell
<a name="DynamoDBLocal.DynamoDB.Local.CloudShell"></a>

AWS CloudShell est un shell pré-authentifié basé sur un navigateur que vous pouvez lancer directement depuis le. AWS Management Console Vous pouvez naviguer AWS CloudShell AWS Management Console de différentes manières. Pour plus d'informations, consultez la section [Mise en route avec AWS CloudShell](https://docs.aws.amazon.com/cloudshell/latest/userguide/getting-started.html).

Procédez comme suit pour exécuter DynamoDB en local n'importe où dans le AWS CloudShell . AWS Management Console

**Pour exécuter DynamoDB en local dans votre AWS CloudShell AWS Management Console**

1. Lancez AWS CloudShell depuis l'interface de la console Région AWS, choisissez un shell disponible et passez à votre shell préféré, tel que Bash ou Z. PowerShell

1. Pour en choisir une Région AWS, allez dans le menu **Sélectionnez une région** et sélectionnez une région [prise en charge Région AWS](https://docs.aws.amazon.com/cloudshell/latest/userguide/supported-aws-regions.html). (Les régions disponibles sont surlignées.)

1. À partir du AWS Management Console, lancez-le AWS CloudShell en choisissant l'une des options suivantes :

   1. Dans la barre de navigation, choisissez l’icône **AWS CloudShell**.

   1. Dans la zone **de recherche**, entrez le mot CloudShell, puis choisissez **CloudShell**.

   1. Dans le widget **Visites récentes**, sélectionnez **CloudShell**.

   1. Dans la barre d'outils de la console, choisissez **CloudShell**.

1. Pour exécuter DynamoDB en local, vous pouvez AWS CloudShell utiliser l'alias. `dynamodb-local` Vous pouvez spécifier des options de ligne de commande supplémentaires pour modifier les paramètres DynamoDB local. Consultez [Notes d’utilisation de DynamoDB Local](DynamoDBLocal.UsageNotes.md) pour connaître les options disponibles.
**Note**  
Pour exécuter DynamoDB local en arrière-plan, exécutez DynamoDB local en utilisant :. AWS CloudShell `dynamodb-local &`

1. Pour accéder à DynamoDB s'exécutant localement AWS CloudShell avec AWS CLI le, utilisez le paramètre. `--endpoint-url` Par exemple, utilisez la commande suivante pour afficher la liste des tables DynamoDB :

   `aws dynamodb list-tables --endpoint-url http://localhost:8000`

Pour un exemple de projet présentant plusieurs approches pour configurer et utiliser DynamoDB local, notamment le téléchargement de fichiers JAR, leur exécution sous forme d’image Docker et leur utilisation en tant que dépendance Maven, consultez [DynamoDB Local Sample Java Project](https://github.com/awslabs/amazon-dynamodb-local-samples/tree/main).

# Notes d’utilisation de DynamoDB Local
<a name="DynamoDBLocal.UsageNotes"></a>

 À l’exception du point de terminaison, les applications qui s’exécutent avec la version téléchargeable d’Amazon DynamoDB doivent également utiliser le service web DynamoDB. Cependant, lorsque vous utilisez DynamoDB localement, vous devez être conscient de ce qui suit : 
+  *Si vous utilisez `-sharedDb` cette option, DynamoDB crée un seul fichier de base de données nommé .db. shared-local-instance* Tous les programmes qui se connectent à DynamoDB accèdent à ce fichier. Si vous supprimez le fichier, vous perdez toutes les données que vous y avez stockées. 
+  Si vous omettez`-sharedDb`, le fichier de base de données s'appelle *myaccesskeyid\$1region.db*, avec l'ID de clé AWS d'accès et AWS la région tels qu'ils apparaissent dans la configuration de votre application. Si vous supprimez le fichier, vous perdez toutes les données que vous y avez stockées. 
+  Si vous utilisez l’option `-inMemory`, DynamoDB n’écrit aucun fichier de base de données. Au lieu de cela, toutes les données sont écrites en mémoire et ne sont pas enregistrées lorsque vous arrêtez DynamoDB. 
+  Si vous utilisez l’option `-inMemory`, l’option `-sharedDb` est également nécessaire. 
+  Si vous utilisez l’option `-optimizeDbBeforeStartup`, vous devez également spécifier le paramètre `-dbPath` de sorte que DynamoDB puisse trouver son fichier de base de données. 
+  AWS SDKs Pour DynamoDB, la configuration de votre application nécessite que la configuration de votre application spécifie une valeur de clé d'accès et AWS une valeur de région. DynamoDB utilise ces valeurs pour nommer le fichier de base de données local, sauf si vous utilisez l’option `-sharedDb` ou `-inMemory`. Il n'est pas nécessaire que ces AWS valeurs soient valides pour être exécutées localement. Vous pouvez trouver pratique de choisir des valeurs valides afin de pouvoir exécuter votre code dans le cloud en modifiant simplement le point de terminaison que vous utilisez. 
+  DynamoDB local renvoie toujours une valeur nulle pour `billingModeSummary.` 
+  La variable d’environnement `AWS_ACCESS_KEY_ID` de DynamoDB local ne peut contenir que des lettres (A à Z, a à z) et des chiffres (0 à 9). 
+ DynamoDB local ne prend pas en [Point-in-time charge la restauration](Point-in-time-recovery.md) (PITR).

**Topics**
+ [Options de ligne de commande](#DynamoDBLocal.CommandLineOptions)
+ [Définition du point de terminaison local](#DynamoDBLocal.Endpoint)
+ [Différences entre la version téléchargeable de DynamoDB et le service web DynamoDB](#DynamoDBLocal.Differences)

## Options de ligne de commande
<a name="DynamoDBLocal.CommandLineOptions"></a>

 Avec la version téléchargeable de DynamoDB, vous pouvez utiliser les options de ligne de commande suivantes : 
+  `-cors``value`— Permet la prise en charge du partage de ressources entre origines (CORS) pour. JavaScript Vous devez fournir une liste « allow » séparée par des virgules de domaines spécifiques. Le paramètre par défaut de `-cors` est un astérisque (\$1), qui autorise l’accès public. 
+  `-dbPath` `value` – Répertoire dans lequel DynamoDB écrit son fichier de base de données. Si vous ne spécifiez pas cette option, le fichier est écrit dans le répertoire actuel. Vous ne pouvez pas spécifier à la fois `-dbPath` et `-inMemory`. 
+  `-delayTransientStatuses` – Amène DynamoDB à introduire des retards pour certaines opérations. DynamoDB (version téléchargeable) peut effectuer certaines tâches presque instantanément, create/update/delete telles que les opérations sur les tables et les index. Cependant, le service DynamoDB nécessite plus de temps pour exécuter ces tâches. La définition de ce paramètre permet à DynamoDB s’exécutant sur votre ordinateur de simuler plus fidèlement le comportement du service web DynamoDB. (Actuellement, ce paramètre provoque des retards uniquement pour les index secondaires globaux dont l’état est *CREATING* ou *DELETING*.) 
+  `-help` – Affiche un récapitulatif de l’utilisation et des options. 
+  `-inMemory` – DynamoDB s’exécute en mémoire au lieu d’utiliser un fichier de base de données. Lorsque vous arrêtez DynamoDB, aucune des données n’est enregistrée. Vous ne pouvez pas spécifier à la fois `-dbPath` et `-inMemory`. 
+  `-optimizeDbBeforeStartup` – Optimise les tables de base de données sous-jacentes avant de démarrer DynamoDB sur votre ordinateur. Vous devez également spécifier `-dbPath` lorsque vous utilisez ce paramètre. 
+  `-port` `value` – Numéro de port que DynamoDB utilise pour communiquer avec votre application. Si vous ne spécifiez pas cette option, le port par défaut est `8000`. 
**Note**  
 DynamoDB utilise le port 8000 par défaut. Si le port 8000 n'est pas disponible, cette commande lève une exception. Vous pouvez utiliser l’option `-port` pour spécifier un autre numéro de port. Pour obtenir la liste complète des options d’exécution de DynamoDB, dont `-port`, entrez la commande suivante :   
 `java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -help` 
+  `-sharedDb` – Si vous spécifiez `-sharedDb`, DynamoDB utilise un fichier de base de données unique au lieu de fichiers distincts pour chaque identification et région. 
+  `-disableTelemetry` : lorsque cette option est spécifiée, DynamoDB Local n’envoie aucune donnée de télémétrie. 
+ `-version` : imprime la version de DynamoDB local.

## Définition du point de terminaison local
<a name="DynamoDBLocal.Endpoint"></a>

 Par défaut, les outils AWS SDKs et utilisent des points de terminaison pour le service Web Amazon DynamoDB. Pour utiliser les outils SDKs et avec la version téléchargeable de DynamoDB, vous devez spécifier le point de terminaison local : 

 `http://localhost:8000` 

### AWS Command Line Interface
<a name="DynamoDBLocal.Endpoint.CLI"></a>

 Vous pouvez utiliser le AWS Command Line Interface (AWS CLI) pour interagir avec DynamoDB téléchargeable. 

 Pour accéder à DynamoDB s’exécutant localement, utilisez le paramètre `--endpoint-url`. Voici un exemple d'utilisation du AWS CLI pour répertorier les tables de DynamoDB sur votre ordinateur. 

```
aws dynamodb list-tables --endpoint-url http://localhost:8000
```

**Note**  
 AWS CLI Impossible d'utiliser la version téléchargeable de DynamoDB comme point de terminaison par défaut. Par conséquent, vous devez le spécifier `--endpoint-url` à chaque AWS CLI commande. 

### AWS SDKs
<a name="DynamoDBLocal.Endpoint.SDK"></a>

 La façon dont vous spécifiez un point de terminaison dépend du langage de programmation et du kit SDK AWS que vous utilisez. Les sections suivantes décrivent comment le faire : 
+  [Java : définition de la AWS région et du point de terminaison](CodeSamples.Java.md#CodeSamples.Java.RegionAndEndpoint)(DynamoDB local prend en charge le SDK AWS pour Java V1 et V2) 
+ CodeSamples.Java. RegionAndEndpoint [.NET : définition de la AWS région et du point de terminaison](CodeSamples.DotNet.md#CodeSamples.DotNet.RegionAndEndpoint) 

## Différences entre la version téléchargeable de DynamoDB et le service web DynamoDB
<a name="DynamoDBLocal.Differences"></a>

 La version téléchargeable de DynamoDB est destinée uniquement à des fins de développement et de test. En comparaison, le service web DynamoDB est un service géré doté de fonctions de mise à l’échelle, de disponibilité et de durabilité, qui en font une solution idéale pour un usage en mode production. 

 Les différences entre la version téléchargeable de DynamoDB et le service web sont les suivantes : 
+ Régions AWS et distincts ne Comptes AWS sont pas pris en charge au niveau du client. 
+  Les paramètres de débit approvisionné sont ignorés dans la version téléchargeable de DynamoDB, même si l’opération `CreateTable` les requiert. Pour `CreateTable`, vous pouvez spécifier les nombres de votre choix pour le débit provisionné en lecture et en écriture, même si ces chiffres ne sont pas utilisés. Vous pouvez appeler `UpdateTable` autant de fois que vous le souhaitez par jour. Cependant, les modifications des valeurs du débit provisionné sont ignorées. 
+  Les opérations `Scan` sont exécutées de façon séquentielle. Les analyses parallèles ne sont pas prises en charge. Les paramètres `Segment` et `TotalSegments` de l’opération `Scan` sont ignorés. 
+  La vitesse des opérations de lecture et d’écriture sur les données de la table est limitée uniquement par la vitesse de votre ordinateur. Les opérations `CreateTable`, `UpdateTable` et `DeleteTable` se produisent immédiatement, et l’état de la table est toujours ACTIVE. Les opérations `UpdateTable` qui modifient uniquement les paramètres de débit provisionné sur les tables ou les index secondaires globaux se produisent immédiatement. Si une opération `UpdateTable` crée ou supprime des index secondaires globaux, ces index passent par les états normaux (tels que CREATING et DELETING, respectivement) avant d’acquérir l’état ACTIVE. La table demeure ACTIVE pendant ce temps. 
+  Les opérations de lecture sont éventuellement cohérentes. Cependant, en raison de la vitesse d’exécution de DynamoDB local sur votre ordinateur, la plupart des lectures apparaissent fortement cohérentes. 
+  Les métriques des collections d’élément ne sont pas suivies, ni leurs tailles. Dans les réponses des opérations, les valeurs null sont retournées à la place des métriques des collections d’élément. 
+  Dans DynamoDB, les données retournées sont limitées à 1 Mo par jeu de résultats. Tant le service web que la version téléchargeable de DynamoDB appliquent cette limite. Cependant, lorsque vous interrogez un index, le service DynamoDB calcule uniquement la taille de la clé et des attributs projetés. En revanche, la version téléchargeable de DynamoDB calcule la taille de l’élément entier. 
+  Si vous utilisez DynamoDB Streams, la vitesse de création des partitions peut varier. Dans le service web DynamoDB, le comportement de création de partition est partiellement influencé par l’activité de partition de table. Lorsque vous exécutez DynamoDB localement, il n’existe aucun partitionnement de table. Dans les deux cas, comme les partitions sont éphémères, votre application ne doit pas être dépendante du comportement des partitions. 
+  `TransactionConflictExceptions`ne sont pas lancés par DynamoDB téléchargeable pour les transactions. APIs Nous vous recommandons d’utiliser une infrastructure de simulation Java pour simuler des `TransactionConflictExceptions` dans le gestionnaire DynamoDB pour tester comment votre application répond dans le cas de transactions en conflit. 
+  Dans le service Web DynamoDB, qu'il soit accessible via la console ou le, les noms des tables distinguent AWS CLI les majuscules et minuscules. Une table nommée `Authors` et une table nommée `authors` peuvent toutes deux exister comme tables distinctes. Dans la version téléchargeable, les noms de table ne sont pas sensibles à la casse, et la tentative de créer ces deux tables se traduira par une erreur. 
+ L’ajout de balises n’est pas pris en charge dans la version téléchargeable de DynamoDB. 
+ [La version téléchargeable de DynamoDB ignore le paramètre Limit dans. [ExecuteStatement](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ExecuteStatement.html)](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ExecuteStatement.html#DDB-ExecuteStatement-request-Limit)

# Historique des versions de DynamoDB local
<a name="DynamoDBLocalHistory"></a>

Le tableau suivant décrit les modifications importantes apportées à chaque version de *DynamoDB local*.


****  

| Version | Modifier | Description | Date | 
| --- | --- | --- | --- | 
| 3.3.0 |  Ajout de la prise en charge des clés à attributs multiples pour les index secondaires globaux  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  19 janvier 2026  | 
| 3.2.0 |  Problèmes de compatibilité résolus avec plusieurs versions de Kotlin  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  09 janvier 2026  | 
| 3.1.0 |  Amélioration des performances pour les requêtes PartiQL, y compris la dépendance au temps de Joda  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  14 septembre 2025  | 
| 3.0.0 |  Migration du AWS SDK Java V1 vers le V2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  17 juillet 2025  | 
| 2.6.0 |  Support de l'ARN de table en tant que nom de table dans DynamoDB APIs Correction des performances et mises à jour de sécurité  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  13 mars 2025  | 
| 2.5.4 |  Mise à niveau vers Jetty Dependencies  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  12 décembre 2024  | 
| 2.5.3 |  Mise à niveau de Jackson Dependencies vers la version 2.17.x dans Log4j Core (résout CVE-2022-1471)  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  6 novembre 2024  | 
| 2.5.2 | Correctif de bogue pour le flux de travail de mise à jour des tables | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  | 20 juin 2024 | 
| 2.5.1 | Correctif pour les bogues introduits dans la fonctionnalité OndemandThroughPut  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html) | 5 juin 2024 | 
| 2.5.0 |  Prise en charge d’un débit maximal configurable pour les tables à la demande, `ReturnValuesOnConditionCheckFailure``BatchExecuteStatement` et `ExecuteTransactionRequest`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  28 mai 2024  | 
| 2.4.0 |  Prise en charge pour `ReturnValuesOnConditionCheckFailure` - Mode intégré  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  17 avril 2024  | 
| 2.3.0 |  Mise à niveau de Jetty et de JDK  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  14 mars 2024  | 
| 2.2.0 |  Ajout de la prise en charge de la protection contre la suppression des tables et du paramètre `ReturnValuesOnConditionCheckFailure`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  14 décembre 2023  | 
| 2.1.0 |  Support des bibliothèques SQLLite natives pour les projets Maven et ajout de la télémétrie  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  23 octobre 2023  | 
| 2.0.0 |  Migration de Javax vers Jakarta Namespace et Support JDK11   |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  5 juillet 2023  | 
| 1.25.1 |  Mise à niveau de Jackson Dependencies vers la version 2.17.x dans Log4j Core (résout CVE-2022-1471)  |  Mise à niveau de Jackson Dependencies vers la version 2.17.x dans Log4j Core (résout CVE-2022-1471) pour corriger une vulnérabilité critique dans la bibliothèque SnakeYAML, qui est une dépendance transitive  |  6 novembre 2024  | 
| 1.25.0 |  Ajout de la prise en charge de la protection contre la suppression des tables et du paramètre `ReturnValuesOnConditionCheckFailure`  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  18 décembre 2023  | 
| 1.24.0 |  Support des bibliothèques SQLLite natives pour les projets Maven et ajout de la télémétrie  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  23 octobre 2023  | 
| 1.23.0 |  Gestion de l’accès et de la clé secrète non valides lors du démarrage du serveur  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  28 juin 2023  | 
| 1.22.0 |  Prise en charge de l’opération Limit pour PartiQL  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  8 juin 2023  | 
| 1.21.0 |  Prise en charge de 100 actions par transaction  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  26 janvier 2023  | 
| 1.20.0 |  Ajout de la prise en charge de M1 Mac  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  |  12 septembre 2022  | 
| 1.19.0 |  Mise à niveau de l’analyseur PartiQL  |  Mise à niveau de l’analyseur PartiQL et d’autres bibliothèques associées  |  27 juillet 2022  | 
| 1.18.0 | Mise à niveau de log4j-core et Jackson-core | Mise à niveau de log4j-core vers la version 2.17.1 et de Jackson-core 2.10.x vers la version 2.12.0 | 10 janvier 2022 | 
| 1.17.2 | Mise à niveau de log4j-core | Mise à niveau de la dépendance log4j-core vers la version 2.16 | 16 janvier 2021 | 
| 1.17.1 | Mise à niveau de log4j-core | Mise à jour de la dépendance log4j-core pour corriger l’exploit « jour zéro » afin d’empêcher l’exécution du code à distance - Log4Shel | 10 janvier 2021 | 
| 1.17.0 | Obsolescence du shell Web Javascript |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/amazondynamodb/latest/developerguide/DynamoDBLocalHistory.html)  | 8 janvier 2021 | 

# Télémétrie dans DynamoDB Local
<a name="DynamoDBLocalTelemetry"></a>

 Chez AWS, nous développons et lançons des services en fonction de ce que nous apprenons des interactions avec les clients, et nous utilisons les commentaires des clients pour améliorer nos produits. La télémétrie est une information supplémentaire qui nous aide à mieux comprendre les besoins de nos clients, à diagnostiquer les problèmes et à fournir des fonctionnalités permettant d’améliorer l’expérience client. 

 DynamoDB Local collecte des données de télémétrie, telles que les métriques d’utilisation génériques, les informations relatives aux systèmes et à l’environnement et les erreurs. Pour plus de détails sur les types de télémétrie collectés, consultez [Type d’informations à collecter](#DynamoDBLocalTelemetry.TypesOfInformationCollected). 

 DynamoDB Local ne collecte pas les informations personnelles, telles que les noms d’utilisateur ou les adresses e-mail. Elle n’extrait pas non plus les informations sensibles au niveau du projet. 

 En tant que client, vous contrôlez si la télémétrie est activée et vous pouvez modifier vos paramètres à tout moment. Si la télémétrie reste activée, DynamoDB Local envoie des données de télémétrie en arrière-plan sans nécessiter d’interaction supplémentaire avec le client. 

## Désactivation de la télémétrie à l’aide des options de ligne de commande
<a name="DynamoDBLocalTelemetry.cli"></a>

 Vous pouvez désactiver la télémétrie à l’aide des options de ligne de commande au démarrage de DynamoDB Local à l’aide de l’option `-disableTelemetry`. Pour de plus amples informations, veuillez consulter [Options de ligne de commande](DynamoDBLocal.UsageNotes.md#DynamoDBLocal.CommandLineOptions).

## Désactivation de la télémétrie pour une session unique
<a name="DynamoDBLocalTelemetry.TurnOffTelemetrySingleSession"></a>

 Dans les systèmes d’exploitation macOS et Linux, vous pouvez désactiver la télémétrie pour une seule session. Pour désactiver la télémétrie de votre session en cours, exécutez la commande suivante pour définir la variable d’environnement `DDB_LOCAL_TELEMETRY` sur `false`. Répétez la commande pour chaque nouveau terminal ou chaque nouvelle session. 

```
export DDB_LOCAL_TELEMETRY=0
```

## Désactivation de la télémétrie pour votre profil dans toutes les sessions
<a name="DynamoDBLocalTelemetry.TurnOffTelemetryForAllSessions"></a>

 Exécutez les commandes suivantes pour désactiver la télémétrie pour toutes les sessions lorsque vous exécutez DynamoDB Local sur votre système d’exploitation. 

**Pour désactiver la télémétrie sous Linux**

1.  Exécuter : 

   ```
   echo "export DDB_LOCAL_TELEMETRY=0" >>~/.profile
   ```

1.  Exécuter : 

   ```
   source ~/.profile
   ```

**Pour désactiver la télémétrie sous macOS**

1.  Exécuter : 

   ```
   echo "export DDB_LOCAL_TELEMETRY=0" >>~/.profile
   ```

1.  Exécuter : 

   ```
   source ~/.profile
   ```

**Pour désactiver la télémétrie sous Windows**

1.  Exécuter : 

   ```
   setx DDB_LOCAL_TELEMETRY 0
   ```

1.  Exécuter : 

   ```
   refreshenv
   ```

## Désactivation de la télémétrie à l’aide de DynamoDB local intégré aux projets Maven
<a name="DynamoDBLocalTelemetry.maven"></a>

 Vous pouvez désactiver la télémétrie à l’aide de DynamoDB local intégré aux projets Maven. 

```
boolean disableTelemetry = true;
// AWS SDK v1
 AmazonDynamoDB amazonDynamoDB = DynamoDBEmbedded.create(disableTelemetry).amazonDynamoDB();

// AWS SDK v2
DynamoDbClient ddbClientSDKv2Local = DynamoDBEmbedded.create(disableTelemetry).dynamoDbClient();
```

## Type d’informations à collecter
<a name="DynamoDBLocalTelemetry.TypesOfInformationCollected"></a>
+  **Informations d'utilisation** — La télémétrie générique telle que le serveur start/stop et l'API ou l'opération appelée. 
+  **Informations sur le système et l’environnement** : la version de Java, le système d’exploitation (Windows, Linux ou macOS), l’environnement dans lequel DynamoDB Local s’exécute (par exemple, fichier JAR autonome, conteneur Docker ou dépendance Maven) et les valeurs de hachage des attributs d’utilisation. 

## En savoir plus
<a name="DynamoDBLocalTelemetry.LearnMore"></a>

 Les données de télémétrie collectées par DynamoDB local sont conformes aux politiques de confidentialité des données. AWS Pour plus d’informations, consultez les ressources suivantes : 
+  [AWS conditions de service](https://aws.amazon.com/service-terms/) 
+  [Questions fréquentes (FAQ) relatives à la confidentialité des données](https://aws.amazon.com/compliance/data-privacy-faq/) 