Как загрузить / прочитать данные из Кассандры по разделам по разделам с помощью java8? - PullRequest
0 голосов
/ 11 октября 2019

Я использую spring-boot, datastax-java-cassandra-connector_2.11-2.4.1.jar и java8.

У меня есть сценарий, в котором мне нужно прочитать / загрузить данные из таблицы C *, но в этой таблице может быть миллион записей.

Мне нужно загрузить эти данные из C *таблица, в любом случае есть ли в java / spring-boot использование API datastax-java-cassandra-connector? Я могу вытащить раздел данных по разделам?

1 Ответ

1 голос
/ 12 октября 2019

, хотя select * from table может работать, более эффективным способом может быть чтение данных по диапазонам токенов с запросом, подобным select * from table where token(part_key) > beginRange and token(part_key) <= endRange. Соединитель Spark Cassandra работает аналогично - он получает список всех доступных диапазонов токенов, а затем извлекает данные из каждого диапазона токенов, но отправляет их непосредственно на узел, который содержит этот диапазон токенов (в отличие от select * from table, который извлекает вседанные через узел координатора).

Необходимо соблюдать осторожность при расчете границ токенов, особенно для начала и конца полного диапазона. Вы можете найти пример Java-кода в моем репозитории (его слишком долго вставлять здесь).

...