Apache spark 使用spark cassandra连接器获取数据集中的列writeTime

Apache spark 使用spark cassandra连接器获取数据集中的列writeTime,apache-spark,cassandra,spark-dataframe,spark-cassandra-connector,Apache Spark,Cassandra,Spark Dataframe,Spark Cassandra Connector,我在尝试将cassandra数据加载到数据集(DataFrame)时,试图弄清楚是否可以使用spark cassandra连接器获取列writeTime 这就是我想做的: val df = spark.read.format("org.apache.spark.sql.cassandra") .options(Map( "table" -> "table1", "keyspace" -> "keyspace1", "cluster" -> "clus

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

这就是我想做的:

val df = spark.read.format("org.apache.spark.sql.cassandra")
   .options(Map( "table" -> "table1", "keyspace" -> "keyspace1",
           "cluster" -> "cluster1")).load()
我想将一组列和写入时间提取到数据帧中:

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

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

数据集API还没有直接支持ttl和writeTime。 您可以创建RDD,然后将RDD转换为DF:

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