将下列 JSON 格式数据复制到 Linux 系统中, 并保存命名为 employee.json
{“id”:1, “name”:“Ella”, “age”:36}
{“id”:2, “name”:“Bob”, “age”:29}
{“id”:3, “name”:“Jack”, “age”:29}
{“id”:4, “name”:“Jim”, “age”:28}
{“id”:4, “name”:“Jim”, “age”:28}
{“id”:5, “name”:“Damon”}
{“id”:5, “name”:“Damon”}
为employee.json 创建 DataFrame, 并写出 Scala 语句完成下列操作:
创建sparksession 或 sparkcontext sqlContext
val conf = new SparkConf().setAppName("testSparkSql").setMaster("local[2]")
val sc = new SparkContext(conf)
val sqlContext = new SQLContext(sc)
val spark = new SparkSession.builder().getOrCreate()
创建 dataframe val df = sqlContext.read.json("F:/test/employee.json")
(1)查询所有数据
df.show()
(2)查询所有数据并去重
df.distinct().show()
(3)查询所有数据并在打印时去除 id 字段
df.drop("id").show()
(4)查询 age>30 的数据
df.filter(df("age") > 30).show()
(5)按age 分组
df.groupBy(df("age")).count().show()
(6)查询按name正序排列
df.sort(df("name").asc).show()
(7)打印前三条数据
df.show(3)
(8)打印时修改name 的列名 为 username
df.select(df("name").as("username")).show()
(9)age 的平均值
df.agg("age" -> "avg").show()
(10)age 的 最小值
df.agg("age" -> "min").show()