我在尝试将csv加载到cassandra表时遇到了一个奇怪的错误(如下所示)。我尝试更改copy的参数,例如chunksize(30-100)和numprocesses(2-4),但它只更改了加载冻结的行(可以冻结在49907、49897等)。我不明白为什么会这样,文件链接在这里是可以的(50000行)。
错误日志:
我的代码:
create keyspace hw1 with replication = {'class' : 'SimpleStrategy', 'replication_factor':1};
CREATE TABLE hw1.product_reviews
(
product_id text,
review_id text,
review_headline text,
review_body text,
review_date date,
star_rating int,
PRIMARY KEY (product_id, review_id)
);
COPY hw1.product_reviews (product_id, review_id, review_headline, review_body, review_date, star_rating) from 'product_reviews.csv' with DELIMITER='\t' AND HEADER=TRUE;
我使用的是ubuntu16.04和cqlsh5.0.1。
1条答案
按热度按时间goucqfw61#
有必要看看服务器端发生了什么-应该有一些错误
system.log
等等。但我想说的是,copy命令通常用于加载不太大的数据量。对于加载更大数量的数据,datastax的dsbulk可能更好——它也适用于cassandra。下面是一系列关于使用dsbulk进行数据加载和卸载的博客文章。在最简单的情况下,当文件中有标头,并且列名与标头名称匹配时,用法可以简单到: