设置CassandraTable中的分区数

时间:2015-04-03 09:19:06

标签: apache-spark cassandra-2.0

我使用带cassandra的spark,并且我正在使用此请求从cassandra中选择数据:

val i = sc.cassandraTable[(ClientID, Interaction)](Keyspace, Table).
  select("a", "b", "c", "d").where("a in ?", timesIntervalWindows)

此请求返回超过5000000行,但问题是我的RDD只包含一个分区! 所以我试图改变Spark Context的这个属性:

conf.set("spark.cassandra.input.split.size", "10000")

但它仍然只创建一个分区。 Ps:我不想使用Coaless或重新分区,因为它会缩短网络中的所有数据并花费大量时间。 有人可以告诉我我做错了什么或如何解决这个问题!

谢谢。

1 个答案:

答案 0 :(得分:2)

输入拆分大小仅使用将在给定Spark分区中的Cassandra分区(而不是行)的数量的估计。缩放数字以尝试对应于Spark分区一侧所需的数字或C *分区。

目前的工作还在于让您设置有保证的分区数。