【问题标题】:Fetch column writeTime in DataSet using spark cassandra connector使用 spark cassandra 连接器在 DataSet 中获取列 writeTime
【发布时间】:2018-03-14 19:32:40
【问题描述】:

我试图弄清楚在尝试将 cassandra 数据加载到 DataSet (DataFrame) 时是否可以使用 spark cassandra 连接器获取列 writeTime

这就是我想要做的:

val df = spark.read.format("org.apache.spark.sql.cassandra")
   .options(Map( "table" -> "table1", "keyspace" -> "keyspace1",
           "cluster" -> "cluster1")).load()

我想将一堆列和 writeTimes 提取到 DataFrame 中:

val someColumns = df.select("column_a", "column_b", 
       "column_c", "column_a".writeTime)

不幸的是,不支持“column_a”.writeTime。有谁知道这个的替代方案吗?

【问题讨论】:

标签: apache-spark cassandra spark-dataframe spark-cassandra-connector


【解决方案1】:

Dataset API 中还没有对 ttl 和 writeTime 的直接支持。 您可以创建 RDD,然后将 RDD 转换为 DF:

val df = sc.cassandraTable[(Option[String], Option[Long])]("ks", "table").
      select ("name",  "name".writeTime).toDF()

【讨论】:

    猜你喜欢
    • 2021-12-24
    • 2014-12-28
    • 1970-01-01
    • 2020-08-02
    • 2019-07-28
    • 1970-01-01
    • 2015-09-20
    • 1970-01-01
    • 2015-10-28
    相关资源
    最近更新 更多