【问题标题】:Setting port and hostname when using spark to connect to cassandra using datastax driver使用 datastax 驱动程序使用 spark 连接到 cassandra 时设置端口和主机名
【发布时间】:2018-12-13 07:33:16
【问题描述】:

我目前正在尝试使用 Datastax 驱动程序 (datastax:spark-cassandra-connector:2.3.0-s_2.11) 使用 Apache Spark (2.3.0,shell) 连接到 Apache Cassandra 数据库。

我在命令行中使用了 --conf 选项,当我尝试运行数据库查询时,它报错说它无法打开到 127.0.0.1:9042 的本机连接。

第 1 步(我在 spark 所在的文件夹中运行此命令。)

  • # ./bin/spark-shell --conf spark.cassandra-connection.host=localhost spark.cassandra-connection.native.port=32771 --packages datastax:spark-cassandra-connector:2.3.0-s_2.11

第 2 步(我在 Spark 的 scala> shell 中运行这些步骤)

  • 斯卡拉>import com.datastax.spark.connector._
  • 斯卡拉>import org.apache.spark.sql.cassandra._
  • 斯卡拉>val rdd = sc.cassandraTable("market", "markethistory")
  • 斯卡拉>println(rdd.first)

第 3 步(出错)

  • java.io.IOException: Failed to open native connection to Cassandra at {127.0.0.1}:9042 +stacktrace

  • Caused by: com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (tried: localhost/127.0.0.1:9042 (com.datastax.driver.core.exceptions.TransportException: [localhost/127.0.0.1:9042] Cannot connect)) +stacktrace

补充说明:

请注意它在错误中如何表示端口 9042。

我也尝试在 --conf 选项中更改主机,但这不会改变错误的输出。

我的主要假设是我需要在 scala 中指定主机和端口,但我不确定如何,而且 datastax 文档都是关于他们特殊的 spark 发行版的,它似乎不匹配。

我尝试过的事情:

  • spark.cassandra-connection.port=32771
  • spark.cassandra.connection.port=32771
  • spark.cassandra.connection.host=localhost

提前致谢。

【问题讨论】:

  • The property is spark.cassandra.connection.host 不是spark.cassandra-connection.host
  • 它仍然会抛出与spark.cassandra.connection.host=localhostspark.connection.connection.port=32771 相同的错误
  • spark.cassandra.connection.port 不是spark.connection.connection.port
  • 是的,我在控制台中输入了,我在这里输入错误。道歉。

标签: apache-spark cassandra


【解决方案1】:

答案是双重的;

  • 字符串确实是cassandra.connection 而不是cassandra-connection
  • --conf 必须在 --packages 之后

感谢@user8371915 提供的连接字符串差异。

【讨论】:

    猜你喜欢
    • 2016-02-18
    • 2015-08-16
    • 2014-11-07
    • 1970-01-01
    • 2013-12-23
    • 1970-01-01
    • 1970-01-01
    • 2017-12-23
    • 2018-04-16
    相关资源
    最近更新 更多