【发布时间】:2021-09-20 01:46:15
【问题描述】:
我有两个 cassandra 集群。如何在同一个 SparkSession 中设置主机、密码和用户?以及如何将它们与 CassandraConnector 一起使用?
我试过了:
val cassandraCon: CassandraConnector = CassandraConnector(conf)
val ks = "monitore"
val ttableName = "validate_structure"
def getIndex(): ResultSet = {
val table = ks + "." + ttableName
val query = s"""select *
|from ${table}""".stripMargin
println(query)
cassandraCon.withSessionDo(s => {
s.execute(query)
})
}
但是,问题在于,这仅在 cassandra 集群与 spark 位于同一主机上时才有效。我也尝试创建一个目录,但我找不到使用 session.execute 而不是 spark.sql 发出请求的方法。
有人可以帮助我吗?我使用 Spark Structured Streaming 3.1.2 并使用 cassandra 连接来丰富我的数据。
【问题讨论】:
-
你想达到什么目的?对于 select * 你不需要 withSessionDo
-
@AlexOtt 在 select 中我将放置一个 where 子句,该子句将从数据集中接收数据作为参数。
-
你不需要这样做,这真的是一个糟糕的做法 - 我明天会回答
标签: apache-spark spark-structured-streaming spark-cassandra-connector