我试图弄清楚在尝试将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。有没有人知道这个的替代方案?
答案 0 :(得分:1)
目前还没有针对ttl和writeTime的数据集API的直接支持。 您可以创建RDD,然后将RDD转换为DF:
val df = sc.cassandraTable[(Option[String], Option[Long])]("ks", "table").
select ("name", "name".writeTime).toDF()