Paso 4: Preparar los datos de origen y la tabla de destino en Amazon Keyspaces
En este paso, usted crea un archivo de origen con datos de muestra y una tabla de Amazon Keyspaces.
-
Cree el archivo de origen. Puede elegir una de las siguientes opciones:
-
En este tutorial, usted utiliza un archivo de valores separados por comas (CSV) llamado
keyspaces_sample_table.csv
como archivo de origen para la migración de datos. El archivo de ejemplo proporcionado contiene algunas filas de datos de una tabla llamadabook_awards
.-
Descargue el archivo CSV de ejemplo (
keyspaces_sample_table.csv
) que se encuentra en el siguiente archivo comprimido: samplemigration.zip. Descomprima el archivo y tome nota de la ruta akeyspaces_sample_table.csv
.
-
-
Si desea seguir con su propio archivo CSV para escribir datos en Amazon Keyspaces, asegúrese de que los datos estén asignados al azar. Los datos que se leen directamente de una base de datos o se exportan a archivos planos suelen estar ordenados por la partición y la clave principal. Importar datos ordenados a Amazon Keyspaces puede hacer que se escriban en segmentos más pequeños de las particiones de Amazon Keyspaces, lo que da lugar a una distribución desigual del tráfico. Esto puede dar lugar a un rendimiento más lento y a tasas de error más elevadas.
Por el contrario, la asignación al azar de los datos ayuda a aprovechar las capacidades de equilibrio de carga integradas de Amazon Keyspaces al distribuir el tráfico entre las particiones de forma más uniforme. Existen diversas herramientas que puede utilizar para aleatorizar los datos. Para ver un ejemplo que utiliza la herramienta de código abierto Shuf
, consulte Paso 2: preparación de los datos para cargarlos con DSBulk en el tutorial de migración de datos. El siguiente es un ejemplo que muestra cómo aleatorizar datos como un DataFrame
.import org.apache.spark.sql.functions.randval shuffledDF = dataframe.orderBy(rand())
-
-
Cree el espacio de claves y la tabla de destino en Amazon Keyspaces.
-
Conéctese a Amazon Keyspaces utilizando
cqlsh
y sustituya el punto de conexión del servicio, el nombre de usuario y la contraseña del siguiente ejemplo por sus propios valores.cqlsh
cassandra.us-east-2.amazonaws.com
9142 -u"111122223333"
-p"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
--ssl -
Cree un nuevo espacio de claves con el nombre
catalog
como se muestra en el siguiente ejemplo.CREATE KEYSPACE
catalog
WITH REPLICATION = {'class': 'SingleRegionStrategy'}; -
Una vez que el nuevo espacio de claves tenga el estado de disponible, utilice el siguiente código para crear la tabla de destino
book_awards
. Para obtener más información sobre la creación asíncrona de recursos y cómo comprobar si un recurso está disponible, consulte Comprobación del estado de creación de los espacios de claves en Amazon Keyspaces.CREATE TABLE
catalog.book_awards
( year int, award text, rank int, category text, book_title text, author text, publisher text, PRIMARY KEY ((year, award), category, rank) );
-