cassandra批量加载dsbulk-设置< text>加载问题

xqnpmsa8  于 2021-06-15  发布在  Cassandra
关注(0)|答案(1)|浏览(466)

尝试使用dsbulk实用程序将csv文件加载到dse cassandra中。如果将列定义为set,我将遇到问题。
copy命令正在成功加载“{'bible'、'moses'、'ramses'}”和“{'television'}”。但是,当有多个值具有com.datastax.driver.core.exceptions.invalidtypeeexception:无法解析为json时,dsbulk失败。

CREATE TABLE killrvideo.videos (
    videoid uuid,
    added_date timestamp,
    description text,
    location text,
    location_type int,
    name text,
    preview_image_location text,
    tags SET<text>,
    userid uuid,
    PRIMARY KEY (videoid)
)

数据文件是:https://github.com/killrvideo/killrvideo-cdm/blob/master/data/videos.csv
命令:

dsbulk load --driver.auth.provider PlainTextAuthProvider -u***-p***-header false -url /data/videos.csv -k killrvideo -t videos

com.datastax.driver.core.exceptions.invalidtypeexception:无法将“{'aunt'、'black stereotype'、'blood on shirt'、'butt bolo'、'chest'、'death of family'、'flasher'、'kicked in the face'、'masturbation'、'reprovation'、'branched in the'}'解析为json

cnwbcb6i

cnwbcb6i1#

这是因为 videos.csv 文件创建自 CQLSH COPY 最初,集合的格式是大括号 {} 在他们周围。dsbulk期望集合值是json数组,其语法是用方括号括住集合: [] .
结果发现dsbulk中有一个open票证来处理集合、元组和udt的cql文本。同时,请使用cqlsh copy将数据加载到表中。

相关问题