#csv #cassandra #copy #cqlsh
#csv #cassandra #Копировать #cqlsh
Вопрос:
Я использую команду копирования в cassandra:
COPY table_name TO 'path/file.csv' with HEADER = TRUE;
После копирования в csv одно из значений ячейки (которое представляет собой очень длинную строку) разбивается на куски и разбрасывается в соседней ячейке, перекрывая другой столбец.
Требуется решение, чтобы правильно это понимать.
Комментарии:
1. Какой длины ваша строка? Однако это не должно быть проблемой. Похоже, что строка отображается в другом столбце в файле csv, но она присутствует в одном столбце
Ответ №1:
одно из значений ячейки (которое представляет собой очень длинную строку) разбивается на куски и разбросано по соседней ячейке, перекрывая другой столбец.
Похоже, что значение ячейки может содержать запятые, что приводит к преждевременному разделению. Попробуйте использовать другой разделитель. Например, если ваши текстовые данные не содержат каналов, то это должно сработать:
COPY table_name TO 'path/file.csv' with DELIMITER='|' AND HEADER = TRUE;
Ответ №2:
Вместо использования COPY
команды, которая имеет довольно ограниченные возможности, а также проблематична для использования с большими объемами данных, я предлагаю использовать инструмент DSBulk для экспорта или импорта данных в / из форматов CSV и JSON — он сильно оптимизирован для быстрого экспорта / импорта данных и легко настраивается. Это может быть так просто, как (формат CSV по умолчанию):
dsbulk unload -k keyspace -t table -url filename
Вы можете контролировать, какие столбцы экспортировать, хранить данные в сжатых файлах и т. Д. Смотрите Следующие сообщения в блоге для примеров:
- https://www.datastax.com/blog/2019/03/datastax-bulk-loader-introduction-and-loading
- https://www.datastax.com/blog/2019/04/datastax-bulk-loader-more-loading
- https://www.datastax.com/blog/2019/04/datastax-bulk-loader-common-settings
- https://www.datastax.com/blog/2019/06/datastax-bulk-loader-unloading
- https://www.datastax.com/blog/2019/07/datastax-bulk-loader-counting
- https://www.datastax.com/blog/2019/12/datastax-bulk-loader-examples-loading-other-locations