Как я могу удалить 20% всех строк в Кассандре, используя cqlsh
Я пытаюсь удалить несколько строк в Cassandra CQLSH, но запрос не работает, какие-либо идеи?
Delete from profile where key in (select key from profile where domain = 'personal');
1 ответ
CQL не допускает таких утверждений, как вы написали выше. Вам нужно будет написать скрипт, который выполняет один запрос в виде пейджинга и выполняет удаление по мере необходимости.
В основном процесс будет
Fetch a bunch of rows from Profile
Perform your filter
Delete those rows passing the filter
Fetch another bunch of rows
Repeat
Для этого я бы рекомендовал не использовать CQLSH и работать более напрямую с драйвером C*.