cassandra bekommt alle aufzeichnungen im zeitbereich

Ich muss mit einer Spaltenfamilie arbeiten, die (user_id, timestamp) als Schlüssel hat. In meiner Abfrage möchte ich alle Datensätze in einem bestimmten Zeitraum unabhängig von der user_id abrufen. Dies ist das genaue Tabellenschema:

CREATE TABLE userlog (
  user_id text,
  ts timestamp,
  action text,
  app_type text,
  channel_name text,
  channel_session_id text,
  pid text,
  region_id text,
  PRIMARY KEY (user_id, ts)
)

Ich habe versucht zu rennen

SELECT * FROM userlog  WHERE ts >= '2013-01-01 00:00:00+0200' AND  ts <= '2013-08-13 23:59:00+0200' ALLOW FILTERING;

Das funktioniert gut auf meiner lokalen Cassandra-Installation, die einen kleinen Datensatz enthält, aber mit fehlschlägt

Request did not complete within rpc_timeout.

auf dem Produktivsystem mit allen Daten.

Gibt es eine Abfrage, vorzugsweise cql, die mit der angegebenen Spaltenfamilie reibungslos funktioniert, oder müssen wir das Design ändern?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage