2014-07-05 2 views

ответ

1

С вашей ссылке:

Семантика ключей запуска и маркеров немного отличаются. Ключи являются стартовыми; токены являются эксклюзивными. Диапазоны токенов также могут быть обрезаны - то есть конечный токен может быть меньше начального. Таким образом, диапазон от keyX до keyX является одноэлементным диапазоном, но диапазон от tokenY к tokenY является полным кольцом (одним исключением является то, что keyX сопоставляется с минимальным токеном, тогда диапазон от keyX до keyX равен полное кольцо ).

Я использовал маркеры для сканирования всех строк в пределах CF, не зная, какой-либо из них - установка начать маркер пустой и конец маркера пустым (это равносильно тому, что они говорят от tokenY до tokenY)

Что касается маркеров, я не смог найти правильное использование для сканирования строк, если не тот, который будет перебирать по всей таблице, но я предполагаю, что это связано с RandomPartitioner - я думаю, что это может быть более полезно с OPP

HTH, Carlo

+0

Спасибо Карло. Не могли бы вы объяснить, что такое OPP и какая разница между использованием пустых ключей и использованием токенов – zcaudate

+0

Я говорил о «пустых токенах» и абсолютно эквивалентен сканированию с TokenX на TokenX. Токены начинаются эксклюзивно. Если вы запрашиваете диапазон от keyX до keyX, вы получите (если существует) 1 значение, X. Если вы запрашиваете диапазон от tokenX до tokenX, cassandra начнет извлекать значение рядом с X как первое и будет извлекать X в качестве конечного значения (он будет получать полное кольцо) .OPP = Order Preserving Partitioner - с RP вы не можете узнать результат сканирования строк из tokenX в токен (они распределены случайным образом), при этом OPP вы можете сканировать по диапазонам ваших строк например, вы используете традиционный индекс. –

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