如何有效地获取Cassandra表中的所有行名?

时间:2015-11-16 14:08:21

标签: cassandra time-series cassandra-2.0

我在Cassandra有一个简单的架构,我在建议here中按照模式1存储了大量的金融市场时间序列,即: enter image description here  大约有2000个代码,每个代码都在它们自己的行中,并且每个代码都有100k到1m的时间序列数据点(“列”)。如何有效地获取股票代码(即2000股票代号?在上面的类比中,蓝色的“WeatherStationID”单元?)。与上面的唯一区别是我有按时间DESC排序的行,所以我的实际表格如下所示:

NTIMES=5

count=0
while [ $count -lt $NTIMES ]
do
  mplayer the_sound_file
  sleep 1800                         # 1800 seconds == 30 min
  count=`expr $count + 1`
done

我是否必须从特定时间戳值上方的整个表中选择*并解析它?问题在于,并非所有的代码都有最新的数据,因此我可能需要在时间上相当远,以便全部捕获它们,在这种情况下,对于包含大量最新数据的代码,我可能会通过大量的冗余信息。

1 个答案:

答案 0 :(得分:2)

实际上,您应该能够使用DISTINCT

快速查询分区键
SELECT DISTINCT ticker FROM ts.mindesc;

虽然CQL中的100k行可能无法在未绑定的WHERE中执行,但2000分区键不应该是