Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Fase 4: Configurare DSBulk
le impostazioni
Questa sezione descrive i passaggi necessari per configurare DSBulk per il caricamento dei dati su Amazon Keyspaces. Si configura DSBulk utilizzando un file di configurazione. Il file di configurazione viene specificato direttamente dalla riga di comando.
-
Crea un file di configurazione DSBulk per la migrazione ad Amazon Keyspaces, in questo esempio utilizziamo il nome del file.
dsbulk_keyspaces.conf
Specificare le seguenti impostazioni nel file di configurazione DSBulk.-
PlainTextAuthProvider
— Creare il provider di autenticazione con laPlainTextAuthProvider
classe.ServiceUserName
eServicePassword
deve corrispondere al nome utente e alla password ottenuti al momento della generazione delle credenziali specifiche del servizio seguendo la procedura riportata in. Creazione di credenziali per accedere ad Amazon Keyspaces a livello di codice -
local-datacenter
— Imposta il valorelocal-datacenter
per il quale Regione AWS ti stai connettendo. Ad esempio, se l'applicazione si connette acassandra.us-east-2.amazonaws.com
, imposta il data center locale suus-east-2
. Per tutte le opzioni disponibili Regioni AWS, vediEndpoint di servizio per Amazon Keyspaces. Per evitare repliche, imposta suslow-replica-avoidance
.false
-
SSLEngineFactory
— Per configurare SSL/TLS, inizializzaSSLEngineFactory
aggiungendo una sezione nel file di configurazione con una sola riga che specifica la classe con.class = DefaultSslEngineFactory
Fornisci il percorsocassandra_truststore.jks
e la password che hai creato in precedenza. consistency
— Imposta il livello di coerenza suLOCAL QUORUM
. Altri livelli di coerenza di scrittura non sono supportati, per ulteriori informazioni, vedereLivelli di coerenza di Apache Cassandra supportati in Amazon Keyspaces.Il numero di connessioni per pool è configurabile nel driver Java. Per questo esempio, imposta su
advanced.connection.pool.local.size
3.
Di seguito è riportato il file di configurazione di esempio completo.
datastax-java-driver { basic.contact-points = [ "
cassandra.us-east-2.amazonaws.com:9142
"] advanced.auth-provider { class = PlainTextAuthProvider username = "ServiceUserName
" password = "ServicePassword
" } basic.load-balancing-policy { local-datacenter = "us-east-2
" 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 } -
-
Esamina i parametri per il comando DSBulk.
load
executor.maxPerSecond
— Il numero massimo di righe che il comando load tenta di elaborare contemporaneamente al secondo. Se non è impostata, questa impostazione viene disabilitata con -1.Impostata in
executor.maxPerSecond
base al numero di WCU assegnate alla tabella di destinazione. Il valoreexecutor.maxPerSecond
delload
comando non è un limite, ma una media obiettivo. Ciò significa che può (e spesso succede) superare il numero impostato. Per consentire l'insorgenza di interruzioni e assicurarvi che sia disponibile una capacità sufficiente per gestire le richieste di caricamento dei dati, impostateexecutor.maxPerSecond
il 90% della capacità di scrittura della tabella.executor.maxPerSecond = WCUs * .90
In questo tutorial, abbiamo impostato su
executor.maxPerSecond
5.Nota
Se stai usando DSBulk 1.6.0 o versioni successive, puoi usare invece.
dsbulk.engine.maxConcurrentQueries
Configura questi parametri aggiuntivi per il comando DSBulk.
load
batch-mode
— Questo parametro indica al sistema di raggruppare le operazioni per chiave di partizione. Si consiglia di disabilitare la modalità batch, poiché può causare scenari e causeWriteThrottleEvents
con tasti di scelta rapida.driver.advanced.retry-policy-max-retries
— Ciò determina quante volte riprovare una query non riuscita. Se non è impostata, l'impostazione predefinita è 10. È possibile modificare questo valore in base alle esigenze.driver.basic.request.timeout
— Il tempo in minuti in cui il sistema attende la restituzione di una query. Se non è impostata, l'impostazione predefinita è «5 minuti». È possibile modificare questo valore in base alle esigenze.