Spark Cassandra连接器无法支持ByteOrderedParitioner吗?

时间:2018-09-23 05:58:23

标签: apache-spark cassandra

我正在使用spark-cassandra-connector_2.11-2.0.0.jar连接到Cassandra(版本2.1.9)。卡桑德拉的分区程序是“ ByteOrderedParitioner”。

但是,当我提交Spark驱动程序时,它显示: Exception in thread "main" java.lang.IllegalArgumentException: Unsupported partitioner: org.apache.cassandra.dht.ByteOrderedPartitioner

似乎源代码中仅支持“ Murmur3Partitioner”和“ RandomPartitioner”。

但是Hadoop支持ByteOrderedPartitioner。我不知道当我强制使用ByteOrderedPartitioner时该如何解决。

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

它不在Spark中,因为没人应该再使用ByteOrderedPartitioner。这是因为:

A)存在仅是为了向后兼容。

B)其创建(和后续使用)被广泛认为是想法。

对此已进行了讨论。在这里查看我对类似问题的回答:Cassandra ByteOrderedPartitioner

我建议您:

  • 使用Murmur3Partitioner重建集群。
  • 或构建一个 new 集群,并使用原始集群中的数据加载它。
  • 找到构建原始集群的人并 拍击