当我们用spark做数据清洗时,将RDD转化为DataFrame,如果某些字段中含空值,或者与我们的字段不匹配,就会报如下的错误
java.lang.Integer is not a valid external type for schema of string
在代码中加入 val accessDF = spark.createDataFrame(accessRDD.map(x => AccessConvertUtil.parseLog(x)).filter(x=> x.equals(Row(0)).unary_!), AccessConvertUtil.struct),把Row(0)过滤掉,就可以了