Итерация по широкой строке Cassandra с CQL3

Как я могу получить диапазон составных столбцов с CQL3?

Учтите следующее:

CREATE TABLE Stuff (
    a int,
    b text,
    c text,
    d text,
    PRIMARY KEY (a,b,c)
);

В Cassandra это эффективно создает ColumnFamily с целочисленными строками (значениями a) и с CompositeColumns, состоящими из значений b и c и литеральной строки 'd'. Конечно, это все покрыто CQL3, так что мы будемдумать что мы вставляем в отдельные строки базы данных ... но я отвлекся.

И рассмотрим следующий набор входных данных:

INSERT INTO Stuff (a,b,c,d) VALUES (1,'A','P','whatever0');
INSERT INTO Stuff (a,b,c,d) VALUES (1,'A','Q','whatever1');
INSERT INTO Stuff (a,b,c,d) VALUES (1,'A','R','whatever2');
INSERT INTO Stuff (a,b,c,d) VALUES (1,'A','S','whatever3');
INSERT INTO Stuff (a,b,c,d) VALUES (1,'A','T','whatever4');
INSERT INTO Stuff (a,b,c,d) VALUES (1,'B','P','whatever5');
INSERT INTO Stuff (a,b,c,d) VALUES (1,'B','Q','whatever6');
INSERT INTO Stuff (a,b,c,d) VALUES (1,'B','R','whatever7');
INSERT INTO Stuff (a,b,c,d) VALUES (1,'B','S','whatever8');
INSERT INTO Stuff (a,b,c,d) VALUES (1,'B','T','whatever9');

В моем текущем случае я хочу прочитать все значения Stuff,n значения за один раз. Как мне это сделать? Вот мой текущий дубль, используяn=4:

SELECT * FROM Stuff WHERE a=1 LIMIT 4;

И, как и ожидалось, я получаю:

 a | b | c | d
---+---+---+-----------
 1 | A | P | whatever0
 1 | A | Q | whatever1
 1 | A | R | whatever2
 1 | A | S | whatever3

Проблема, с которой я сталкиваюсь, состоит в том, как я получаю следующие 4? Вот моя попытка:

SELECT * FROM Stuff WHERE a=1 AND b='A' AND c>'S' LIMIT 4;

Это не работает, потому что мы ограничили b равным 'A' - что разумно сделать! Но я ничего не нашел в синтаксисе CQL3, который позволил бы мне продолжать итерации в любом случае. Я хотел бы сделать что-то вроде:

SELECT * FROM Stuff WHERE a=1 AND {b,c} > {'A','S'} LIMIT 4;

Как мне достичь желаемого результата. А именно, как мне сделать возврат CQL3:

 a | b | c | d
---+---+---+-----------
 1 | A | T | whatever0
 1 | B | P | whatever1
 1 | B | Q | whatever2
 1 | B | R | whatever3

Ответы на вопрос(4)

Ваш ответ на вопрос