1 package com.api 2 3 import org.apache.flink.api.scala._ 4 object SensorFlinkTemperature { 5 def main(args: Array[String]): Unit = { 6 val env = ExecutionEnvironment.getExecutionEnvironment 7 // 获取文本路径 8 val stream = env.readTextFile("D:\\IDEA_Maven\\XiaoWu_Worksoace\\flink_pi_liuchuli\\src\\main\\resources\\temperature") 9 val dataSteam = stream.filter(_.nonEmpty).map(data => { 10 val dataArr : Array[String] = data.split(",") 11 SensorReading(dataArr(0).trim,dataArr(1).trim.toLong,dataArr(2).trim.toDouble) 12 }) 13 14 dataSteam.map(x=>(x.id,x.temperature)).groupBy(0).sum(1).print() 15 dataSteam.map(x=>SensorReading(x.id,x.timestamp+1,x.temperature+10)).print() 16 } 17 } 18 case class SensorReading(id:String,timestamp:Long,temperature:Double)