首页 > 解决方案 > 如何在Dataset中返回json数据在 Spark 中使用编码器(structType)?

问题描述

我试图在 DataSet 中返回所需的参数。每当我将数据返回到行时,我都无法使用 struct Type 对数据进行编码,如果假设我正在使用Map/JSONObject 它正在抛出Map/jsonobject it not a valid External schema,我尝试过下面的代码?任何帮助将不胜感激

DataSet<Row>//
Row rowdat=RowFactory.create(jsondata)
Return rowdat.iterator();

//Dataset data will be **** [[{"employees:"accountant","firstname":"walter", "age":"54"}]]


StructType schema = DataTypes.createStructType(new StructField[] {
            DataTypes.createStructField("employees",  DataTypes.StringType, true),
            DataTypes.createStructField("firstname", DataTypes.StringType, true),
            DataTypes.createStructField("age", DataTypes.StringType, true)

    });

ExpressionEncoder express=RowCoder.apply(schema)

标签: apache-sparkspark-structured-streaming

解决方案


推荐阅读