To make range queries you need to have this column as clustering column.
In this case it will be efficient, cause clustering column are stored sorted. If you want to search the data, you need to specify partition key.
So as an example, where I use device_id as a partition key:
CREATE TABLE IF NOT EXISTS mykeyspace.device_data (
DEVICE_ID text,
HOURLYTIME TIMESTAMP,
FULLTIME TIMESTAMP,
DATA TEXT,
PRIMARY KEY (DEVICE_ID, HOURLYTIME, FULLTIME)
);
INSERT INTO mykeyspace.device_data (device_id, hourlytime, fulltime, data)
values('Spam machine', '2014-12-12 00:01:00','2014-12-12 00:00:01','Hello World1');
INSERT INTO mykeyspace.device_data (device_id, hourlytime, fulltime, data)
values('Spam machine', '2014-12-12 00:02:00','2014-12-12 00:00:02','Hello World2');
INSERT INTO mykeyspace.device_data (device_id, hourlytime, fulltime, data)
values('Spam machine', '2014-12-12 00:03:00','2014-12-12 00:00:03','Hello World3');
-- Effective range query
SELECT * FROM mykeyspace.device_data
WHERE device_id = 'Spam machine'
AND hourlytime > '2014-12-12 00:00:00'
AND hourlytime < '2014-12-12 00:02:00';
Or another example, where I partition data by day (which will cause spread data across cluster nicely), and perform range queries:
CREATE TABLE IF NOT EXISTS mykeyspace.day_data (
DAYTIME timestamp,
HOURLYTIME TIMESTAMP,
FULLTIME TIMESTAMP,
DATA TEXT,
PRIMARY KEY (DAYTIME, HOURLYTIME, FULLTIME)
);
INSERT INTO mykeyspace.day_data (DAYTIME, hourlytime, fulltime, data)
values('2014-12-12', '2014-12-12 00:01:00','2014-12-12 00:00:01','Hello World1');
INSERT INTO mykeyspace.day_data (DAYTIME, hourlytime, fulltime, data)
values('2014-12-12', '2014-12-12 00:02:00','2014-12-12 00:00:02','Hello World2');
INSERT INTO mykeyspace.day_data (DAYTIME, hourlytime, fulltime, data)
values('2014-12-12', '2014-12-12 00:03:00','2014-12-12 00:00:03','Hello World3');
SELECT * FROM mykeyspace.day_data
WHERE daytime = '2014-12-12'
AND hourlytime > '2014-12-12 00:00:00'
AND hourlytime < '2014-12-12 00:02:00';
There is very useful article about timeseries data on PlanetCassandra