import org.apache.spark.{SparkConf, SparkContext}object DataFilter {// 思路// 1. 读取数据,读入文本文件// 2. 对于文件中的每一行// 拆分出年龄split(",")(1)// 判断是不是数字,是,就保留记录"45","abc" (正则表达式 \d+)// 3. 把过滤之后的内容,保存到文件saveAsTexttFile()def main(args: Array[String]): Unit = {// 创建sparkval conf = new SparkConf().setAppName("DataFilter").setMaster("local[*]")val sc = new SparkContext(conf)val rdd = sc.textFile("data/file.txt")// 过滤之后的rddvar rdd1 = rdd.filter(line => {// 拆分出年龄val age = line.split(",")(1)// 判断年龄是否是数字println(age)age.matches("\\d+")})//将所有的分区数据合并成一个分区rdd1 = rdd1.coalesce(1)//保存到文件rdd1.saveAsTextFile("data/file1.txt")}
}