Тайм-аут счетчика таблицы Cassandra

Я пытаюсь получить количество строк в таблице. Но кассандра отключает тайм-аут для этого запроса select count(*) from events ;

Я думаю, что мои таблицы слишком велики, поэтому, если я указываю значение тайм-аута для моего запроса, всегда получается тайм-аут cqlsh --request-timeout=200000

Размер таблицы 1,3 ТБ. Есть ли способ узнать, сколько строк в этой таблице?


person user10651098    schedule 19.12.2018    source источник
comment
Вам нужен точный подсчет или достаточно приблизительного подсчета?   -  person Emre Savcı    schedule 19.12.2018
comment
На самом деле, мне нужен точный счет   -  person user10651098    schedule 19.12.2018


Ответы (2)


Не используйте count(*), чтобы получить количество строк. Вы можете использовать следующую ссылку и загрузить файл jar, чтобы получить количество.
https://github.com/brianmhess/cassandra-count

person Hitesh Shahani    schedule 19.12.2018

Одно решение, которое может помочь вам найти общее количество строк в разбиении на страницы результата.

Пожалуйста, обратитесь к приведенному ниже документу:

https://docs.datastax.com/en/developer/java-driver/3.2/manual/paging/

Примечание. Вы также можете попробовать РАЗРЕШИТЬ ФИЛЬТРАЦИЯ для разработки! Но его следует избегать, так как это очень дорогой запрос, который может повлиять на производительность кассандры.

person Mehul Gupta    schedule 19.12.2018
comment
Я заинтригован вашим решением, но я не понимаю, как нумерация страниц может помочь в определении количества запросов. Я попробовал это inC# с помощью драйвера Datastax C# Cassandra и, к сожалению, не пришел к каким-либо полезным вещам. Если бы у меня была информация о количестве страниц, я мог бы определить их количество, +/- pageSize... Не могли бы вы рассказать об этом немного подробнее? - person Maurice Klimek; 24.05.2021