【发布时间】:2015-12-11 22:24:44
【问题描述】:
我目前已经在谷歌云上部署了 Spark 和 Cassandra 的节点。虽然 DataStax Spark Cassandra 连接器在本地运行良好。在谷歌云上尝试相同时,它会引发连接错误。我确实尝试了各种排列和组合来从 Spark 中的 cassandra 运行简单的值检索代码,但都是徒劳的。 gcloud上部署的spark版本是1.1.0,而cassandra版本是3.0.0。我们使用相同的 Spark 版本制作了程序集包。
def main(args: Array[String]): Unit = {
val conf = new SparkConf(true)
.set("spark.cassandra.connection.host", "104.197.133.174")
.set("spark.cassandra.auth.username", "cassandra")
.set("spark.cassandra.auth.password", "xxxxxxx");
val sc = new SparkContext("local", "test", conf)
val user_table = sc.cassandraTable("demo", "movieslist")
val movie_index = user_table.map(r => new moviesugg(r.getInt("userid"), r.getString("movie")))
val file_collect= user_table.collect()
file_collect.map(println(_))
我收到错误消息:-
Exception in thread "main" java.io.IOException: Failed to open native connection to Cassandra at {104.197.133.174}:9042
at com.datastax.spark.connector.cql.CassandraConnector$.com$datastax$spark$connector$cql$CassandraConnector$$createSession(CassandraConnector.scala:174)
Caused by: com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (tried: /104.197.133.174:9042 (com.datastax.driver.core.exceptions.InvalidQueryException: unconfigured table schema_keyspaces))
表模式键空间已正确定义(在本地工作正常),我认为这更多是连接问题。我对 Cassandra 很陌生,我想知道是否有任何人可以建议的配置更改,在 cassandra.yaml 文件上进行以使代码正常工作。但是,我确实尝试更改 rpc_address 和 listen_address,但没有帮助。
任何建议将不胜感激。
【问题讨论】:
标签: apache-spark cassandra google-compute-engine google-cloud-platform spark-cassandra-connector