除了复制方法之外,如何批量加载到cassandra中。?

时间:2014-07-29 05:36:43

标签: csv cassandra cassandra-2.0

AM使用copy方法将.csv文件复制到cassandra表中.. 但我得到记录不匹配错误..

Record 41(Line 41) has mismatched number of records (85 instead of 82)

所有.csv文件都发生了这种情况。所有.csv文件都是系统生成的..

任何解决此错误的方法..?

1 个答案:

答案 0 :(得分:1)

根据您的错误消息,听起来像复制命令对您有效,直到记录41.您使用什么作为分隔符? COPY命令的默认分隔符是逗号,我敢打赌你的数据在第41行有一些额外的逗号。

一些选择:

  • 修改数据并删除额外的逗号。
  • 更改您的.csv文件,将所有字段的值封装在双引号中,因为COPY的默认QUOTE值为。这将允许你留下文字逗号。
  • 更改.csv文件以使用管道 | 而不是逗号分隔,并将COPY命令的DELIMITER选项设置为 |
  • 尝试使用Cassandra bulk loaderjson2sstable utility导入您的数据。我从来没有使用它们,但我敢打赌,如果你的数据集中有逗号,你会遇到类似的问题。