《Spark编程基础及项目实践章节练习题项目5+答案.docx》由会员分享,可在线阅读,更多相关《Spark编程基础及项目实践章节练习题项目5+答案.docx(2页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Spark编程基础及项目实践章节练习题项目5+答案习题51. 选择题(1) Spark SQL可以处理数据源包括哪些?( D )A. Hive表 B. 数据文件、Hive表 C. 数据文件、Hive表、RDD D. 数据文件、Hive表、RDD、外部数据库(2)下列说法正确的是( C )。A. Spark SQL的前身是Hive B. DataFrame其实就是RDDC. HiveContext继承了SqlContext D. HiveContext只支持SQL语法解析器(3)如何查看DataFrame对象的前10条记录?( C )A. df.show() B. df.show(false)
2、C. df.show(10) D. df.collect()(4)DataFrame查询指定字段数据信息的方法有哪些?( B )selectselectExprcolapplyA. B. C. D. (5)DataFrame的groupBy方法返回的结果是什么类型?( D )A. DataFrame B.ColumnC.GroupedData D.RDD2.操作题某航空公司积累了大量的会员档案信息和其乘坐航班记录。其中包括了会员卡号、入会时间、性别、年龄、会员卡级别、工作地城市、工作地所在省份、积分、飞行千米数、飞行次数、飞行时间、平均折扣率等信息。如图5-43所示。图5-43 航空公司信息数
3、据 (1)导入数据表。(2)统计SUM_YR_1、SEG_KM_SUM字段的空值记录数,保存到null_count表。(3)统计SUM_YR_1、SEG_KM_SUM字段的最小值,保存到min_count表。(4)统计SUM_YR_1、SEG_KM_SUM字段的最大值,保存到max_count表。(5)计算SUM_YR_1、SEG_KM_SUM字段的平均值。答案:(1) val class Person(SUM_YR_1:int, SEG_KM_SUM:int)val data = sc.textFile(/user/root/test.txt)val person=data.map(p=Pe
4、rson(p(0),p(1).trim.toInt).toDF()(2) df.select(SUM_YR_1).count(null)resultDF.write.jdbc(jdbc:mysql:/192.168.1.150:3306/spark,null_countt)df.select(SEG_KM_SUM).count(null)resultDF.write.jdbc(jdbc:mysql:/192.168.1.150:3306/spark,null_countt)(3) df.select(SUM_YR_1).min()resultDF.write.jdbc(jdbc:mysql:/
5、192.168.1.150:3306/spark,min_count)df.select(SEG_KM_SUM). min()resultDF.write.jdbc(jdbc:mysql:/192.168.1.150:3306/spark,min_count)(4) df.select(SUM_YR_1).max()resultDF.write.jdbc(jdbc:mysql:/192.168.1.150:3306/spark,max_count)df.select(SEG_KM_SUM). max()resultDF.write.jdbc(jdbc:mysql:/192.168.1.150:3306/spark,max_count)(5) df.select(SUM_YR_1).avg()df.select(SEG_KM_SUM). avg()95