我需要从Map创建一个单行DataFrame,以便写入mysql
就像这样的Map
("col1" -> 5, "col2" -> 10, "col3" -> 6)
将其转换成单行的DataFrame,并且将Key映射成为列的名称。
+----+----+----+
|col1|col2|col3|
+----+----+----+
| 5| 6| 10|
+----+----+----+
代码:
import org.apache.spark.sql.types._
val map = Map("col1" -> 5, "col2" -> 6, "col3" -> 10)
val (keys, values) = map.toList.sortBy(_._1).unzip
val rows = spark.sparkContext.parallelize(Seq(Row(values: _*)))
val schema = StructType(keys.map(
k => StructField(k, IntegerType, nullable = false)))
val df = spark.createDataFrame(rows, schema)
df.show()
本文介绍如何将Map转换为单行DataFrame,以方便将数据写入MySQL。示例中,Map的Key作为DataFrame的列名。
550

被折叠的 条评论
为什么被折叠?



