【问题标题】:how to get saveToCassandra and use it?如何获取 saveToCassandra 并使用它?
【发布时间】:2019-03-21 23:17:51
【问题描述】:

我正在使用 spark-sql v2.3.1 将数据写入 cassandra v3.11.1。 要将数据框写入 cassandra 表,我们可以使用

df.write.format("org.apache.spark.sql.cassandra") 
 .options(Map( "table" -> tname, "keyspace" -> keyspacename ))
 .mode(SaveMode.Append)
 .save();

但是在相同版本的情况下,我该如何使用saveToCassandra() 方法 我需要添加任何罐子吗,我已经添加了 spark-cassandra-connector 和 cassandra-driver-core。我需要添加更多的罐子吗?我得到一个 sparksession 作为 spark 并且它不支持 createDateFrame()

【问题讨论】:

    标签: apache-spark apache-spark-sql datastax-enterprise cassandra-3.0 databricks


    【解决方案1】:

    sc = spark.sparkContext;

    在 sc 上我们可以调用 saveToCassandra();

    【讨论】:

    • @AlexOtt 先生,请问您的邮件ID,我有以下问题stackoverflow.com/posts/52873337/revisions
    • 您需要通过spark.cassandra.connection.host指定
    • @AlexOtt 我已经在 spark.cassandra.connection.host、spark.cassandra.connection.port、spark.cassandra.connection.user、spark.cassandra.connection.password 等设置了 setCassandraConf,但是它反映的是dataframe而不是rdd,需要做什么,有什么好的书籍datastax cassandra和spark示例和集成?
    • 只使用官方文档:github.com/datastax/spark-cassandra-connector/tree/master/doc - 它包含大部分信息。
    【解决方案2】:

    saveToCassandra 在同一个包中,但它works on RDD,不在 DataFrames 上。所以,如果你想使用那个命令(真的应该是一个很好的理由),你只需要通过说df.rdd从数据框中获取RDD,然后调用saveToCassandra就可以了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-24
      • 2011-10-09
      • 2021-10-26
      • 2018-03-08
      • 2014-07-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多