

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.

# Étape 4 : configurer `DSBulk` les paramètres pour télécharger les données du fichier CSV vers la table cible
<a name="dsbulk-upload-config"></a>

Cette section décrit les étapes requises pour configurer DSBulk pour le téléchargement de données vers Amazon Keyspaces. Vous configurez DSBulk à l'aide d'un fichier de configuration. Vous spécifiez le fichier de configuration directement depuis la ligne de commande.

1. Créez un fichier de configuration DSBulk pour la migration vers Amazon Keyspaces. Dans cet exemple, nous utilisons le nom du fichier. `dsbulk_keyspaces.conf` Spécifiez les paramètres suivants dans le fichier de configuration DSBulk.

   1. *`PlainTextAuthProvider`*— Créez le fournisseur d'authentification avec la `PlainTextAuthProvider` classe. `ServiceUserName`et `ServicePassword` doivent correspondre au nom d'utilisateur et au mot de passe que vous avez obtenus lorsque vous avez généré les informations d'identification spécifiques au service en suivant les étapes décrites dans. [Créez des informations d'identification pour un accès programmatique à Amazon Keyspaces](programmatic.credentials.md)

   1. *`local-datacenter`*— Définissez la valeur de Région AWS celle `local-datacenter` à laquelle vous vous connectez. Par exemple, si l'application se connecte à`cassandra.{{us-east-1}}.amazonaws.com`, définissez le centre de données local sur`us-east-1`. Pour toutes les options disponibles Régions AWS, voir[Points de terminaison de service pour Amazon Keyspaces](programmatic.endpoints.md). Pour éviter les répliques, définissez sur`slow-replica-avoidance`. `false`

   1. *`SSLEngineFactory`*— Pour configurer SSL/TLS, initialisez le `SSLEngineFactory` en ajoutant une section dans le fichier de configuration avec une seule ligne qui spécifie la classe avec`class = DefaultSslEngineFactory`. Indiquez le chemin d'accès `cassandra_truststore.jks` et le mot de passe que vous avez créés précédemment.

   1. *`consistency`*— Réglez le niveau de cohérence sur`LOCAL QUORUM`. Les autres niveaux de cohérence d'écriture ne sont pas pris en charge. Pour plus d'informations, consultez[Niveaux de cohérence en lecture et écriture pris en charge par Apache Cassandra et coûts associés](consistency.md).

   1. Le nombre de connexions par pool est configurable dans le pilote Java. Pour cet exemple, définissez `advanced.connection.pool.local.size` sur 3.

   L'exemple de fichier de configuration complet est le suivant.

   ```
   datastax-java-driver {
   basic.contact-points = [ "cassandra.{{us-east-1}}.amazonaws.com:9142"]
   advanced.auth-provider {
       class = PlainTextAuthProvider
       username = "{{ServiceUserName}}"
       password = "{{ServicePassword}}"
   }
   
   basic.load-balancing-policy {
       local-datacenter = "{{us-east-1}}"
       slow-replica-avoidance = false           
   }
   
   basic.request {
       consistency = LOCAL_QUORUM
       default-idempotence = true
   }
   advanced.ssl-engine-factory {
       class = DefaultSslEngineFactory
       truststore-path = "./cassandra_truststore.jks"
       truststore-password = "{{my_password}}"
       hostname-validation = false
     }
   advanced.connection.pool.local.size = 3
   }
   ```

1. Vérifiez les paramètres de la `load` commande DSBulk.

   1. *`executor.maxPerSecond`*— Le nombre maximum de lignes que la commande de chargement tente de traiter simultanément par seconde. S'il n'est pas défini, ce paramètre est désactivé avec -1.

      `executor.maxPerSecond`Défini en fonction du nombre de WCU que vous avez provisionnés dans la table de destination cible. La `executor.maxPerSecond` `load` commande n'est pas une limite, c'est une moyenne cible. Cela signifie qu'il peut (et c'est souvent le cas) dépasser le nombre que vous avez défini. Pour tenir compte des rafales et vous assurer que la capacité est suffisante pour traiter les demandes de chargement de données, définissez 90 % `executor.maxPerSecond` de la capacité d'écriture de la table.

      ```
      executor.maxPerSecond = WCUs * .90
      ```

      Dans ce didacticiel, nous avons défini `executor.maxPerSecond` la valeur 5.
**Note**  
Si vous utilisez DSBulk 1.6.0 ou une version ultérieure, vous pouvez utiliser `dsbulk.engine.maxConcurrentQueries` à la place.

   1. Configurez ces paramètres supplémentaires pour la `load` commande DSBulk.
      + *`batch-mode`*— Ce paramètre indique au système de regrouper les opérations par clé de partition. Nous vous recommandons de désactiver le mode batch, car cela peut entraîner des scénarios de raccourcis clavier et des causes`WriteThrottleEvents`.
      + *`driver.advanced.retry-policy-max-retries`*— Cela détermine le nombre de tentatives à nouveau pour une requête qui a échoué. S'il n'est pas défini, la valeur par défaut est 10. Vous pouvez ajuster cette valeur selon vos besoins.
      + *`driver.basic.request.timeout`*— Durée en minutes pendant laquelle le système attend le retour d'une requête. S'il n'est pas défini, la valeur par défaut est « 5 minutes ». Vous pouvez ajuster cette valeur selon vos besoins.