class AreaClickUDAF extends UserDefinedAggregateFunction { // 输入数据的类型: 北京 String override def inputSchema: StructType = { StructType(StructField("city_name", StringType) :: Nil) // StructType(Array(StructField("city_name", StringType))) } // 缓存的数据的类型: 北京->1…