Spark:我可以在 spark SQL 中将 Scala 集转换为 DataType 吗?

Spark: can I convert a Scala set to a DataType in spark SQL?

比如Scala数组对应Spark中的ArrayTypeSQL,可以在schema定义中使用。对于地图,有 MapType。

设置怎么样?

一组(没有双关语意)受支持的类型是有限的,不可扩展。您会在 Spark SQL, DataFrames and Datasets Guide 中找到支持类型的完整列表 - 因为您可以检查 Set.

没有类型

您最好的办法是使用 ArrayType 映射到 scala.collection.Seq 并自己处理特定的集合操作。

可以使用二进制 Encoders (),但它们适用于强类型数据集,与 DataFrames 一起使用时应用有限。

有none。详尽列表在这里:http://spark.apache.org/docs/latest/sql-programming-guide.html#data-types

在 Spark 存储库的“examples/src/main/scala/org/apache/spark/examples/sql/SparkSQLExample.scala”中找到完整的示例代码。