如何将 cassandraRow 转换为 Row (apache spark)?
How to convert cassandraRow into Row (apache spark)?
我正在尝试从 RDD[cassandraRow] 创建数据框。但是我不能,因为 createDataframe(RDD[Row],schema: StructType) 需要 RDD[Row ] 不是 RDD[cassandraRow].
- 我怎样才能做到这一点?
也根据这个问题的答案
(答案之一)关于在 RDD[Row] 上使用 toDF() 从 RDD 获取 Dataframe 的建议对我不起作用。我尝试在另一个示例中使用 RDD[Row] (尝试使用 toDF() )。
- 我也不知道我们如何用 RDD ( RDD[Row] ) 实例调用 Dataframe ( toDF() ) 的方法?
我正在使用 Scala。
如果您真的需要这个,您可以随时将数据映射到 Spark 行:
sqlContext.createDataFrame(
rdd.map(r => org.apache.spark.sql.Row.fromSeq(r.columnValues)),
schema
)
但如果要DataFrames
最好直接导入数据:
val df = sqlContext
.read
.format("org.apache.spark.sql.cassandra")
.options(Map( "table" -> table, "keyspace" -> keyspace))
.load()
我正在尝试从 RDD[cassandraRow] 创建数据框。但是我不能,因为 createDataframe(RDD[Row],schema: StructType) 需要 RDD[Row ] 不是 RDD[cassandraRow].
- 我怎样才能做到这一点?
也根据这个问题的答案
(答案之一)关于在 RDD[Row] 上使用 toDF() 从 RDD 获取 Dataframe 的建议对我不起作用。我尝试在另一个示例中使用 RDD[Row] (尝试使用 toDF() )。
- 我也不知道我们如何用 RDD ( RDD[Row] ) 实例调用 Dataframe ( toDF() ) 的方法?
我正在使用 Scala。
如果您真的需要这个,您可以随时将数据映射到 Spark 行:
sqlContext.createDataFrame(
rdd.map(r => org.apache.spark.sql.Row.fromSeq(r.columnValues)),
schema
)
但如果要DataFrames
最好直接导入数据:
val df = sqlContext
.read
.format("org.apache.spark.sql.cassandra")
.options(Map( "table" -> table, "keyspace" -> keyspace))
.load()