Кассандра | Как я могу сравнить текущий набор данных с предыдущим? - PullRequest
0 голосов
/ 15 января 2019

Я новичок в Cassandra DB, и мне нужно периодически сохранять набор данных в таблице (каждые 15 минут). Этот набор данных может быть 1500 записей. Теперь мне нужно вставить этот набор данных в таблицу Cassandra таким образом, чтобы все эти 1500 записей были связаны одним и тем же ключом раздела, то есть все эти 1500 записей должны присутствовать в одном и том же узле.

Через 15 минут снова необходимо сохранить партию из 1500 записей тем же способом, но с другим ключом раздела.

Цель состоит в том, чтобы сравнить последние два набора данных и найти те из них, которые отличаются. Таким образом, 1500 записей (сейчас) будут сравниваться с 1500 записями (предыдущими), и мне нужно выяснить, какие из них были изменены, а затем выполнить некоторую бизнес-логику с измененными.

Если я использую timeuuid в качестве ключа раздела, то все мои 1500 записей будут иметь другой timeuuid и, следовательно, не будут присутствовать в одном и том же узле.

Я искал о поддержке инкрементных счетчиков в Cassandra, но, похоже, нет хорошего способа, и кроме того, что поддержка таблицы COUNTER в одном узле является препятствием для распределенного проектирования.

Как создать идентификаторы автоинкремента в Cassandra

Не могли бы вы, ребята, предложить мне оптимальный способ решения этой проблемы?

Проще говоря, мои требования сводятся к:

Как я могу сравнить текущий набор данных с предыдущим?

Кстати, я буду использовать Springboot для подключения и записи данных в Cassandra.

Заранее спасибо!

...