Кассандра массовая загрузка DSBLK - установить <text>нагрузка выдачи - PullRequest
0 голосов
/ 21 сентября 2018

Попытка загрузить файл csv в dse cassandra с помощью утилиты dsbulk.У меня возникают проблемы, если столбец определен как установленный.

Команда копирования успешно загружает "{'bible', 'moses', 'ramses'}" & "{'televison'}".Но dsbulk завершается ошибкой, когда есть несколько значений с com.datastax.driver.core.exceptions.InvalidTypeException: не удалось проанализировать как 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: Couldне разбирайся {{'тетя', 'черный стереотип', 'кровь на рубашке', 'задница боло', 'грудь', 'смерть семьи', 'мигалка', 'удар ногой в лицо', 'мастурбация', 'реновация ',' нанесла удар в '}' как Json

1 Ответ

0 голосов
/ 22 сентября 2018

Это происходит потому, что файл videos.csv был изначально создан из CQLSH COPY, а формат коллекций - с фигурными скобками {} вокруг них.DSBulk ожидает, что значениями коллекции будут массивы json, синтаксис которых заключается в том, чтобы заключить коллекцию в квадратные скобки: [].

Оказывается, в DSBulk есть открытый билет для обработки литералов CQL для коллекций, кортежей иПользовательские типы.А пока, пожалуйста, используйте CQLSH COPY для загрузки данных в вашу таблицу.

...