2016-01-13 3 views
0

Текущего подхода, который я использую для удаления строк на основе индексированного столбцаКак сделать удаление строк на основе индексированного столбца в Кассандре

  1. Выберите запрос с лимитом 100
  2. Если есть строки Удалить все выбираемые строки один за другим.
  3. Очистить диспетчер объекта.
  4. Перейти к шагу 1.

Использования Cassandra 2.1.8 и Кундер-Cassandra-DS-драйвер для извлечения строк из Кассандры.

Есть ли способ запустить запрос на удаление из Kundera.

ответ

1

Вы можете сделать следующее:

Query findQuery = entityManager.createQuery("Delete from PersonCassandra p where p.age = 10", 
      PersonCassandra.class); 
findQuery.setMaxResults(5000); 
findQuery.executeUpdate(); 

PS: Cassandra не позволяет удалять строки на основе несырьевых ключей, Кундера обрабатывает это внутренне таким же образом, что вы делаете.

+0

Выполняет ли запрос удаление всего 5000 строк? – Prabhath

+0

@Prabhath Да .. Если вы не укажете какой-либо лимит, он по умолчанию удалит 100 строк. –

Смежные вопросы