Как экспортировать частичные данные таблицы Cassandra в другую базу данных Cassandra? - PullRequest
0 голосов
/ 06 ноября 2018

У меня есть специальный запрос на экспорт данных частичной таблицы в другую базу данных Cassandra. Два сервера находятся в разных дата-центрах в разных странах.

Экспортируемая таблица имеет ту же структуру, что и исходная, только новая БД является подмножеством старой.

Например, в таблице 3 столбца [user, cxtId, cxt], а [user, cxtId] - первичный ключ.

В общем случае у меня будет пользователь со многими cxtId. Предположим, у меня есть десять пользовательских данных в БД, но я хочу экспортировать только 3 из них в новую БД, у цели может быть несколько данных с тем же первичным ключом, и я хочу перезаписать эти данные.

Как я могу сделать это на Кассандре.

Я проверил команду COPY, но, кажется, она поддерживает полный набор данных (возможно с частичными столбцами).

Есть ли хороший подход для решения моей проблемы? Спасибо.

Эрик

Ответы [ 2 ]

0 голосов
/ 08 ноября 2018

Я использовал одну библиотеку в своем проекте, которая помогла мне преобразовать огромное количество данных из одной таблицы в другую.

Я думаю, вы можете изучить эту библиотеку отсюда .. https://github.com/brianmhess/cassandra-loader

Вы выгружаете данные, манипулируете, если хотите, и загружаете данные в новую таблицу.

0 голосов
/ 08 ноября 2018

Наконец, я обнаружил, что инструмент от GitHub может решить мою проблему. https://github.com/gianlucaborello/cassandradump

Я могу использовать этот скрипт на python для вывода выбранного результата и использовать cqlsh -f для загрузки данных обратно в Cassandra.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...