我已将 C-ISAM 数据导出为 ASCII 文件,现在我想将其导入 Cassandra 数据库。有什么办法吗?有关信息,ASCII 文件基于偏移量!
谢谢您的帮助!
您需要使用COPY FROM
,但需要进行一些预处理。COPY 不是 CQL 语句,而是 CQLSH 命令,因此您只能从 CQL Shell 运行它。
首先,您需要创建要导入的表。这是您定义所有列的地方。
其次,这是导入的命令语法(分隔符是可选的,支持更多选项:请参阅此处):
COPY mytable([col1, col2, etc...]) FROM ('file.txt') WITH DELIMITER=',';
最后,还有一点额外的工作,Cassandra 只能导入 CSV 数据(其中列由分隔符分隔)而不是基于偏移量。为了解决这个问题,我会用你喜欢的语言编写一个小脚本,它会读取你现有的 ASCII 文件并将其逐行转换为 CSV 格式。这应该不超过 2 打代码,所以它应该是不费脑子的。
编辑:正如zubs在下面的评论中观察到的,可以利用一些第三方应用程序(例如 Excel)来转换为 CSV 格式,从而无需编写自定义代码。