Paso 4: Configure los DSBulk ajustes para cargar los datos del CSV archivo a la tabla de destino - Amazon Keyspaces (para Apache Cassandra)

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Paso 4: Configure los DSBulk ajustes para cargar los datos del CSV archivo a la tabla de destino

En esta sección se describen los pasos necesarios DSBulk para configurar la carga de datos en Amazon Keyspaces. La configuración se DSBulk realiza mediante un archivo de configuración. Puede especificar el archivo de configuración directamente desde la línea de comandos.

  1. Cree un archivo de DSBulk configuración para la migración a Amazon Keyspaces; en este ejemplo, utilizamos el nombre del archivo. dsbulk_keyspaces.conf Especifique los siguientes ajustes en el archivo de DSBulk configuración.

    1. PlainTextAuthProvider: cree el proveedor de autenticación con la clase PlainTextAuthProvider. ServiceUserName y ServicePassword deben coincidir con el nombre de usuario y la contraseña que obtuvo al generar las credenciales específicas del servicio siguiendo los pasos en Cree credenciales para el acceso programático a Amazon Keyspaces .

    2. local-datacenter— Defina el local-datacenter valor de Región de AWS al que te estás conectando. Por ejemplo, si la aplicación se conecta a cassandra.us-east-2.amazonaws.com, entonces establezca el centro de datos local en us-east-2. Para todos los disponibles Regiones de AWS, consulte Puntos de conexión de servicio para Amazon Keyspaces. Para evitar réplicas, establezca slow-replica-avoidance en false.

    3. SSLEngineFactory— Para configurarSSL/TLS, inicialice el SSLEngineFactory añadiendo una sección en el archivo de configuración con una sola línea que especifique la clase con class = DefaultSslEngineFactory la que. Proporcione la ruta a cassandra_truststore.jks y la contraseña que creó anteriormente.

    4. consistency: establezca el nivel de coherencia en LOCAL QUORUM. No se admiten otros niveles de coherencia de escritura. Para obtener más información consulte Niveles de consistencia de lectura y escritura compatibles con Apache Cassandra y costos asociados.

    5. El número de conexiones por grupo es configurable en el controlador Java. Para este ejemplo, establezca advanced.connection.pool.local.size en 3.

    A continuación se muestra el archivo de configuración de ejemplo 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 }
  2. Revise los parámetros del DSBulk load comando.

    1. executor.maxPerSecond: el número máximo de filas que el comando de carga intenta procesar concurrentemente por segundo. Si no se establece, este parámetro se deshabilita con -1.

      executor.maxPerSecondConfigúrelo en función del número de los WCUs que haya aprovisionado en la tabla de destino de destino. El valor executor.maxPerSecond del comando load no es un límite, es una media objetivo. Esto significa que puede (y a menudo lo hace) dispararse por encima del número que usted fije. Para tener en cuenta los picos y asegurarse de que exista capacidad suficiente para gestionar las solicitudes de carga de datos, establezca executor.maxPerSecond en el 90 % de la capacidad de escritura de la tabla.

      executor.maxPerSecond = WCUs * .90

      En este tutorial, establecemos executor.maxPerSecond en 5.

      nota

      Si utiliza la DSBulk versión 1.6.0 o una versión superior, puede dsbulk.engine.maxConcurrentQueries utilizarla en su lugar.

    2. Configure estos parámetros adicionales para el DSBulk load comando.

      • batch-mode: este parámetro indica al sistema que agrupe las operaciones por clave de partición. Se recomienda deshabilitar el modo por lotes, ya que puede provocar situaciones y causas específicas relacionadas con las teclas de acceso rápidoWriteThrottleEvents.

      • driver.advanced.retry-policy-max-retries: determina cuántas veces se debe reintentar una consulta fallida. Si no se establece, el valor predeterminado es 10. Puede ajustar este valor según sea necesario.

      • driver.basic.request.timeout: el tiempo en minutos que el sistema espera el regreso de una consulta. Si no se establece, el valor predeterminado es “5 minutos”. Puede ajustar este valor según sea necesario.