I want to programmatically examine all the rows in a large cassandra table, and was hoping to use CQL. I know I could do this with thrift, getting 10,000 (or so) rows at a t
Turns out greater than and less than have a very non-intuitive, but useful, behavior (at least in CQL2, I haven't check CQL3 yet). It actually compares the tokens not the key values. Here is an example:
> create table users (KEY varchar PRIMARY KEY, data varchar);
> insert into users (KEY, 'data') values ('1', 'one');
> insert into users (KEY, 'data') values ('2', 'two');
> insert into users (KEY, 'data') values ('3', 'three');
> insert into users (KEY, 'data') values ('4', 'four');
> select * from users;
3 | three
2 | two
1 | one
4 | four
> select * from users LIMIT 1;
3 | three
> select * from users WHERE KEY > '3' LIMIT 1;
2 | two
> select * from users WHERE KEY > '2' LIMIT 1;
1 | one
> select * from users WHERE KEY > '1' LIMIT 1;
4 | four