我在使用Scala中的Spark Cassandra Connector时遇到了问题 .
我正在使用这些版本:
-
Scala 2.10.4
-
spark-core 1.0.2
-
cassandra-thrift 2.1.0(我安装的cassandra是v2.1.0)
-
cassandra-clientutil 2.1.0
-
cassandra-driver-core 2.0.4(建议用于连接器?)
-
spark-cassandra-connector 1.0.0
我可以连接并与Cassandra(没有火花)交谈,我可以和Spark(没有Cassandra)交谈,但连接器给了我:
com.datastax.driver.core.exceptions.NoHostAvailableException:所有尝试查询的主机都失败了(尝试:/10.0.0.194:9042(com.datastax.driver.core.TransportException:[10.0.0.194:9042]无法连接))
我错过了什么? Cassandra是默认安装(根据cassandra.yaml,cql的端口9042) . 我正在尝试连接本地(“本地”) .
我的代码:
val conf = new SparkConf().setAppName("Simple Application").setMaster("local")
val sc = new SparkContext("local","test",conf)
val rdd = sc.cassandraTable("myks","users")
val rr = rdd.first
println(s"Result: $rr")
1 回答
本上下文中的本地是指定Spark主服务器(告诉它以本地模式运行)而不是Cassandra连接主机 .
要设置Cassandra Connection主机,您必须在Spark Config中设置不同的属性
https://github.com/datastax/spark-cassandra-connector/blob/master/doc/1_connecting.md