具体代码实现:
package xuwei.tech
import org.apache.flink.api.scala.ExecutionEnvironment
object BatchWordCountScala {
def main(args: Array[String]): Unit = {
//获取文件的内容
val inputPath="D:\\input\\file"
val outPut = "D:\\input\\result2"
val env = ExecutionEnvironment.getExecutionEnvironment
val text = env.readTextFile(inputPath)
//引入隐式转换
import org.apache.flink.api.scala._
val counts = text.flatMap(_.toLowerCase.split("\\W+"))
.filter(_.nonEmpty)
.map((_, 1))
.groupBy(0)
.sum(1)
counts.writeAsCsv(outPut, "\n", " ")
env.execute("batch word count")
}
}
运行程序,控制台打印信息:
生成数据