最近接触了一些大数据开发相关的东西,项目中用到了HDFS + Spark + Hive的开发流程,因为自己只是为了熟悉开发流程,所以作为新手对于某些问题有一些奇怪的想法,故做法效率会比较低,我个人也正在不断学习优化。
我想要做的工作就是对HDFS上的文件进行筛选处理,比如,我现在有一份学生成绩表,我想实现的是把"成绩大于60"的学生的成绩信息录入系统,数据文件的结构为(数据的字段依次为stuId,stuName, stuGrade):
实现代码如下:
import com.sun.org.apache.xalan.internal.xsltc.compiler.util.IntType
import org.apache.spark.sql.functions.desc
import org.apache.spark.sql.{Row, SaveMode, SparkSession}
import org.apache.spark.sql.types.{DataType, IntegerType, StringType, StructField, StructType}
object testRDD {
def main(args: Array[String]): Unit = {
val sparkSession = SparkSession.builder()
.appName("testRDD")
.enableHiveSupport() //连接hive必须加上这一句
.master("local").getOrCreate()
val rdd