本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
步骤 1:使用 DSBulk 创建源 CSV 文件和用于上传数据的目标表
在本教程中,我们使用名为 keyspaces_sample_table.csv
的逗号分隔值 (CSV) 文件作为用于数据迁移的源文件。提供的示例文件包含名为 book_awards
的表中的几行数据。
创建源文件。您可以选择以下选项之一:
-
下载以下存档文件 samplemigration.zip 中包含的示例 CSV 文件 (
keyspaces_sample_table.csv
)。解压缩存档文件并记下指向keyspaces_sample_table.csv
的路径。 -
要使用您自己存储在 Apache Cassandra 数据库中的数据来填充 CSV 文件,您可以使用
dsbulk unload
来填充源 CSV 文件,如下例所示。dsbulk unload -k
mykeyspace
-tmytable
-f ./my_application.conf >keyspaces_sample_table.csv
确保您创建的 CSV 文件符合以下要求:
-
第一行包含列名称。
-
源 CSV 文件中的列名称与目标表中的列名称相匹配。
-
数据用逗号分隔。
-
所有数据值均为有效的 Amazon Keyspaces 数据类型。请参阅 数据类型。
-
-
-
在 Amazon Keyspaces 中创建目标键空间和表。
使用
cqlsh
连接到 Amazon Keyspaces,将以下示例中的服务端点、用户名和密码替换为您自己的值。cqlsh
cassandra.us-east-2.amazonaws.com
9142 -u"111122223333"
-p"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
--ssl使用以下示例中所示的名称
catalog
创建新的键空间。CREATE KEYSPACE
catalog
WITH REPLICATION = {'class': 'SingleRegionStrategy'};在新键空间变为可用状态后,使用以下代码创建目标表
book_awards
。要了解有关异步资源创建以及如何检查资源是否可用的更多信息,请参阅在 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) );
如果 Apache Cassandra 是您的原始数据来源,那么创建带有匹配标题的 Amazon Keyspaces 目标表的一种简单方法是从源表生成
CREATE TABLE
语句,如以下语句所示。cqlsh localhost 9042 -u "username" -p "password" --execute "DESCRIBE TABLE
mykeyspace.mytable
;"然后,在 Amazon Keyspaces 中创建目标表,其列名称和数据类型与 Cassandra 源表中的描述相匹配。