Apache spark SparkSQL按Cassandra分区键范围限制查询
假设我的主键是一个Apache spark SparkSQL按Cassandra分区键范围限制查询,apache-spark,cassandra,Apache Spark,Cassandra,假设我的主键是一个时间戳 我想按时间戳范围限制查询 即使我使用了token(),我似乎也无法让它工作。此外,我无法在分区键上创建辅助索引 这应该怎么做?Cassandra不允许对分区键进行范围查询 处理此问题的一种方法是更改模式,使时间戳值成为集群列。要使其工作,您需要引入一个sentinel列作为分区键。有关更详细的答案,请参见此问题: 另一种方法是让Spark进行过滤。主键上的范围查询应该在Spark SQL中工作。它们不会被下推到Cassandra,Spark将获取所有数据并在Spark端
时间戳
我想按时间戳范围限制查询
即使我使用了token()
,我似乎也无法让它工作。此外,我无法在分区键上创建辅助索引
这应该怎么做?Cassandra不允许对分区键进行范围查询 处理此问题的一种方法是更改模式,使时间戳值成为集群列。要使其工作,您需要引入一个sentinel列作为分区键。有关更详细的答案,请参见此问题:
另一种方法是让Spark进行过滤。主键上的范围查询应该在Spark SQL中工作。它们不会被下推到Cassandra,Spark将获取所有数据并在Spark端对其进行过滤。Cassandra不允许对分区键进行范围查询 处理此问题的一种方法是更改模式,使时间戳值成为集群列。要使其工作,您需要引入一个sentinel列作为分区键。有关更详细的答案,请参见此问题:
另一种方法是让Spark进行过滤。主键上的范围查询应该在Spark SQL中工作。它们不会被推到Cassandra,Spark将获取所有数据并在Spark端对其进行过滤。下次请先在搜索中投入一点资金,这样下次您通常会找到答案。请先在搜索中投入一点资金,这样您通常会找到有意义的答案。SparkSQL过滤是否可以表示为
where
子句,即使它不会被按下?还有一个问题:Cassandra不允许通过token()
对分区键进行范围查询吗?这就是Spark在后台所做的对吧?这是有道理的。SparkSQL过滤是否可以表示为where
子句,即使它不会被按下?还有一个问题:Cassandra不允许通过token()
对分区键进行范围查询吗?这就是Spark在后台所做的,对吗?