Cassandra 批量加载 dsbulk - set<text> 加载问题
Cassandra bulk load dsbulk - set<text> load issue
正在尝试使用 dsbulk 实用程序将 csv 文件加载到 dse cassandra 中。
如果列定义为集合,我 运行 遇到问题。
copy 命令正在成功加载“{'bible'、'moses'、'ramses'}”和“{'televison'}”。但是,当存在多个具有 com.datastax.driver.core.exceptions.InvalidTypeException 的值时,dsbulk 会失败:无法解析为 Json。
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', 'renovation', 'stabbed in the'}' as Json
这是因为 videos.csv
文件最初是从 CQLSH COPY
创建的,并且集合的格式是用大括号 {}
括起来的。 DSBulk 期望集合值是 json 数组,其语法是用方括号将集合括起来:[]
.
原来在 DSBulk 中有一个开放的票证来处理集合、元组和 UDT 的 CQL 文字。同时,请使用 CQLSH COPY 将数据加载到您的 table.
正在尝试使用 dsbulk 实用程序将 csv 文件加载到 dse cassandra 中。 如果列定义为集合,我 运行 遇到问题。
copy 命令正在成功加载“{'bible'、'moses'、'ramses'}”和“{'televison'}”。但是,当存在多个具有 com.datastax.driver.core.exceptions.InvalidTypeException 的值时,dsbulk 会失败:无法解析为 Json。
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', 'renovation', 'stabbed in the'}' as Json
这是因为 videos.csv
文件最初是从 CQLSH COPY
创建的,并且集合的格式是用大括号 {}
括起来的。 DSBulk 期望集合值是 json 数组,其语法是用方括号将集合括起来:[]
.
原来在 DSBulk 中有一个开放的票证来处理集合、元组和 UDT 的 CQL 文字。同时,请使用 CQLSH COPY 将数据加载到您的 table.