Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Schritt 4: Konfigurieren Sie die DSBulk Einstellungen, um Daten aus der CSV-Datei in die Zieltabelle hochzuladen
In diesem Abschnitt werden die Schritte beschrieben, die DSBulk zur Konfiguration des Daten-Uploads auf Amazon Keyspaces erforderlich sind. Sie konfigurieren DSBulk mithilfe einer Konfigurationsdatei. Sie geben die Konfigurationsdatei direkt von der Befehlszeile aus an.
-
Erstellen Sie eine DSBulk Konfigurationsdatei für die Migration zu Amazon Keyspaces. In diesem Beispiel verwenden wir den Dateinamen
dsbulk_keyspaces.conf. Geben Sie die folgenden Einstellungen in der DSBulk Konfigurationsdatei an.-
PlainTextAuthProvider— Erstellen Sie den Authentifizierungsanbieter mit derPlainTextAuthProviderKlasse.ServiceUserNameundServicePasswordsollte mit dem Benutzernamen und dem Passwort übereinstimmen, die Sie bei der Generierung der dienstspezifischen Anmeldeinformationen erhalten haben, indem Sie die Schritte unter Anmeldeinformationen für den programmatischen Zugriff auf Amazon Keyspaces erstellen ausführen. -
local-datacenter— Setzen Sie den Wert fürlocal-datacenterauf den AWS-Region , zu dem Sie eine Verbindung herstellen. Wenn die Anwendung beispielsweise eine Verbindung herstelltcassandra., stellen Sie das lokale Rechenzentrum auf einus-east-1.amazonaws.com.rproxy.govskope.caus-east-1. Alle verfügbaren AWS-Regionen Informationen finden Sie unterService-Endpunkte für Amazon Keyspaces. Um Replikate zu vermeiden, legen Sie den Wertslow-replica-avoidanceauffalsefest. -
SSLEngineFactory— Um SSL/TLS zu konfigurieren, initialisieren Sie das,SSLEngineFactoryindem Sie der Konfigurationsdatei einen Abschnitt mit einer einzigen Zeile hinzufügen, in der die Klasse mit angegeben wird.class = DefaultSslEngineFactoryGeben Sie den Pfadcassandra_truststore.jksund das Passwort an, die Sie zuvor erstellt haben. consistency— Stellen Sie die Konsistenzstufe auf einLOCAL QUORUM. Andere Schreibkonsistenzstufen werden nicht unterstützt. Weitere Informationen finden Sie unterUnterstützte Lese- und Schreibkonsistenzstufen von Apache Cassandra und damit verbundene Kosten.Die Anzahl der Verbindungen pro Pool ist im Java-Treiber konfigurierbar. Stellen Sie in diesem Beispiel
advanced.connection.pool.local.sizeden Wert 3 ein.
Im Folgenden finden Sie die vollständige Beispielkonfigurationsdatei.
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 } -
-
Überprüfen Sie die Parameter für den DSBulk
loadBefehl.executor.maxPerSecond— Die maximale Anzahl von Zeilen, die der Ladebefehl pro Sekunde gleichzeitig zu verarbeiten versucht. Wenn sie nicht gesetzt ist, ist diese Einstellung mit -1 deaktiviert.Wird auf der
executor.maxPerSecondGrundlage der Anzahl festgelegt WCUs , die Sie für die Zieltabelle bereitgestellt haben. Derexecutor.maxPerSecondWert desloadBefehls ist kein Limit, sondern ein Zieldurchschnitt. Das bedeutet, dass er die von Ihnen festgelegte Zahl überschreiten kann (und tut dies häufig auch). Um Bursts zu berücksichtigen und sicherzustellen, dass genügend Kapazität zur Bearbeitung der Datenladeanforderungen vorhanden ist, sollten Sie einen Wert von 90% der Schreibkapazität der Tabelle festlegenexecutor.maxPerSecond.executor.maxPerSecond = WCUs * .90In diesem Tutorial haben wir den Wert 5
executor.maxPerSecondeingestellt.Anmerkung
Wenn Sie DSBulk 1.6.0 oder höher verwenden, können Sie
dsbulk.engine.maxConcurrentQueriesstattdessen verwenden.Konfigurieren Sie diese zusätzlichen Parameter für den DSBulk
loadBefehl.batch-mode— Dieser Parameter weist das System an, Operationen nach Partitionsschlüsseln zu gruppieren. Wir empfehlen, den Batch-Modus zu deaktivieren, da dies zu Hotkey-Szenarien und Ursachen führen kannWriteThrottleEvents.driver.advanced.retry-policy-max-retries— Dies bestimmt, wie oft eine fehlgeschlagene Abfrage wiederholt werden muss. Wenn diese Option nicht gesetzt ist, ist die Standardeinstellung 10. Sie können diesen Wert nach Bedarf anpassen.driver.basic.request.timeout— Die Zeit in Minuten, in der das System auf die Rückgabe einer Abfrage wartet. Wenn diese Option nicht gesetzt ist, ist die Standardeinstellung „5 Minuten“. Sie können diesen Wert nach Bedarf anpassen.