从本地连接到客户端 cassandra
Posted
技术标签:
【中文标题】从本地连接到客户端 cassandra【英文标题】:Connecting to a client cassandra from local 【发布时间】:2017-04-13 17:46:41 【问题描述】:我正在尝试从已安装在 AWS ec2 中的 cassandra 获取数据。 当我通过 pyspark 运行以下命令时,我可以从 AWS 读取数据, 但是,当我通过 spark-submit 提交相同的 python 文件时,我正在从本地获取 rdd。你能建议我哪里缺少配置吗?
from pyspark import SparkConf, SparkContext
from pyspark.sql.session import SparkSession
conf = SparkConf().setAppName("testCassandra").set("spark.cassandra.connection.host", "#ec2ip#").set("spark.cassandra.connection.port", "9042")
sc = SparkContext(conf = conf)
spark = SparkSession(sc)
rdd = spark.read.format("org.apache.spark.sql.cassandra").options(table="tweettable", keyspace="twitterstorage", ).load().rdd
【问题讨论】:
你想连接什么IP?它应该是节点的公共 IP,应该在您的 yaml 中定义为listen_address
或 rpc_address
。
是的,我已经相应地更改了我的 yaml。是的,我可以通过传递 --conf spark.cassandra.connection.host=ip 作为 spark -submit 的参数来解决这个问题。
【参考方案1】:
我能够通过传递 --conf spark.cassandra.connection.host=ip 作为 spark -submit 的参数来解决这个问题。
【讨论】:
以上是关于从本地连接到客户端 cassandra的主要内容,如果未能解决你的问题,请参考以下文章