gpt4 book ai didi

scala - 无法从 Spark 连接到 Cassandra(接触点包含多个数据中心)

转载 作者:行者123 更新时间:2023-12-04 12:48:20 26 4
gpt4 key购买 nike

我正在尝试运行我的第一个 spark 作业(访问 Cassandra 的 Scala 作业),该作业失败并显示以下错误:

java.io.IOException: Failed to open native connection to Cassandra at {<ip>}:9042
at com.datastax.spark.connector.cql.CassandraConnector$.com$datastax$spark$connector$cql$CassandraConnector$$createSession(CassandraConnector.scala:164)
at com.datastax.spark.connector.cql.CassandraConnector$$anonfun$2.apply(CassandraConnector.scala:150)
at com.datastax.spark.connector.cql.CassandraConnector$$anonfun$2.apply(CassandraConnector.scala:150)
at com.datastax.spark.connector.cql.RefCountedCache.createNewValueAndKeys(RefCountedCache.scala:31)
...........
............
Caused by: java.lang.IllegalArgumentException: Contact points contain multiple data centers:
at com.datastax.spark.connector.cql.LocalNodeFirstLoadBalancingPolicy.init(LocalNodeFirstLoadBalancingPolicy.scala:47)
at com.datastax.driver.core.Cluster$Manager.init(Cluster.java:1099)
at com.datastax.driver.core.Cluster.getMetadata(Cluster.java:271)
at com.datastax.spark.connector.cql.CassandraConnector$.com$datastax$spark$connector$cql$CassandraConnector$$createSession(CassandraConnector.scala:157)

我们在这里做错了什么?

我在用 :
  • Spark 1.5.2
  • Apache Cassandra 2.1.10
  • spark-cassandra connector 1.3.1/1.5.0-M2(两个连接器都试过了)
  • Scala 版本 2.10.4
  • 最佳答案

    --> 据作者介绍,有一项工作正在进行中以解决此问题。请参阅此答案下方的评论。

    我在文档中找到了这个,希望对您有所帮助:

    override def init(cluster: Cluster, hosts: JCollection[Host]) {
    nodes = hosts.toSet
    // use explicitly set DC if available, otherwise see if all contact points have same DC
    // if so, use that DC; if not, throw an error
    dcToUse = localDC match {
    case Some(local) => local
    case None =>
    val dcList = dcs(nodesInTheSameDC(contactPoints, hosts.toSet))
    if (dcList.size == 1)
    dcList.head
    else
    throw new IllegalArgumentException(s"Contact points contain multiple data centers: ${dcList.mkString(", ")}")
    }
    clusterMetadata = cluster.getMetadata
    }

    关于scala - 无法从 Spark 连接到 Cassandra(接触点包含多个数据中心),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34004959/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com