《Spark大数据技术与应用案例教程》教案第10课查询符合条件的商品信息.docx

上传人:王** 文档编号:1169396 上传时间:2024-04-12 格式:DOCX 页数:6 大小:66.59KB
下载 相关 举报
《Spark大数据技术与应用案例教程》教案第10课查询符合条件的商品信息.docx_第1页
第1页 / 共6页
《Spark大数据技术与应用案例教程》教案第10课查询符合条件的商品信息.docx_第2页
第2页 / 共6页
《Spark大数据技术与应用案例教程》教案第10课查询符合条件的商品信息.docx_第3页
第3页 / 共6页
《Spark大数据技术与应用案例教程》教案第10课查询符合条件的商品信息.docx_第4页
第4页 / 共6页
《Spark大数据技术与应用案例教程》教案第10课查询符合条件的商品信息.docx_第5页
第5页 / 共6页
《Spark大数据技术与应用案例教程》教案第10课查询符合条件的商品信息.docx_第6页
第6页 / 共6页
亲,该文档总共6页,全部预览完了,如果喜欢就下载吧!
资源描述

《《Spark大数据技术与应用案例教程》教案第10课查询符合条件的商品信息.docx》由会员分享,可在线阅读,更多相关《《Spark大数据技术与应用案例教程》教案第10课查询符合条件的商品信息.docx(6页珍藏版)》请在优知文库上搜索。

1、课题查询符合条件的商品信息课时2课时(90min)教学目标知识技能目标:(1)了解DataFrame的数据查询方式(2)掌握DalaFrame的数据蛰询操作素质目标:培养举一反三的能力,学会融会贯通教学重难点教学重点:DataFrame的数据查询方式和数据查询操作教学睚点:使用不同的方式查询DataFrame的数据教学方法案例分析法、问答法、讨论法、i井授法教学用具电脑、投影仪、多媒体课件、教材教学过程主要教学内容及步骤课前任务【教师】布置课前任务,和学生负责人取得联系,让其提醒同学通过APP或其他学习软件,完成课前任务请大家了解DataFrame的数据查询方法.【学生】完成课前任务考勤【教师

2、】使用APP进行签到【学生】班干部报请假人员及原因问题导入【教师】提出以下问题:应如何插寻DataFrame的数据?【学生】思考、举手回答传授新知【教师】通过学生的回答引入新知,介绍DataFre一、DataFramc的数据查询方式【教师】介绍DataFrame的数据查询方式已知“usrIOCal/SparkZmycodeZDataFrame”目录下伤件,它们的内容分别如图3-20和图3-21所示。打开9)aStudentjson保存=Xname:王二,age:2。,COllege:信息学院(name:张三,age:21,COIIege机械学院name:李四,age:22,COIIege:信息

3、学院name:fi,age:22,-ColIege:人文学院”)图3-20,student.jsonw文件内容分别读取两个文件中的数据并创建DataFrame,用询操作。hadoopbogon|$pysparkdi=spark.read.json(file:/usr/local/spark/myco(df2=spark.read.json(file:/usr/local/sparkmycdf.createOrReplaceTempView(student)StudentDF=spark.sql(select*fromstudentwhereage20H)studentDF.show()Iage

4、collegename+I21机械学院I张三II22信息学院I李四II22人文学院I赵六I图322年龄大于20岁的学生信息(2)使用DataFrame提供的数据查询方法,直接在DataFrame对象上进行直询。DataFrame的数据杳询操作属于懒操作,只有触发执行操作(即数据获取操作)时才会计算并返回结果。二、DagFrame的数据查询操作【教师】利用多媒体展示图表,然后讲解DataFrame的数据查询操作在SParkSQL中,DiUaFrame的数据查询操作包括条件查询、排序查询、分组查询和连接查询等,实现这些直询操作的常用方法如表3-3所示。表3-3DataFrame数据查询操作的常用方

5、法分类方法说明条件查询IUter(Condition)使用给定条件筛选行,where。是仙CH)的别名.参数condition为筛选条件whcrc(condition)排序直询OnkrBy(*cok.ascending)。也rBy)和SOno方法均可用于排序,两者实现的效果相同,均可按照指定列对整强进行排序.参数cols(可选)表示要按其排序的Column对象列表或列名列表;参数ascending(可选)用于指定排序是升序还是降序,默认值为TrUe(升序)sort(*cols,ascending)分组查询grouBy(*cols)使用指定的列对DalaFrame进行分组.参数Cok表示要分组的

6、列连接直询join(oher.on.how)使用给定的连接表达式与另一个DataFramC进行连接.参数OIher表示要连接的DalaFrame;参数on(可选)表示连接列名的字符串、列名列表、连接表达式(Column)或Column对象列表;参数how(可选)表示连接类型,包括inner%oulerleft-oulerlright-ouler.IeRsemi和cross,默认值为inner其他直询SeleCI(*8IS)直询指定字段的数据信息.参数8k表示指定字段se!ectExpr(*expr)SeleCl()的一z?变体,接受SQL表达式,参数“cxpr是一个可变参数,表示要处理的表达式

7、,该表达式可以是字符串形式的SQL表达式,也可以是Column对象列表limit(num)直询前num行数据【教师】通过例子,帮助学生掌握DataFrame的数据查询操作【例3-8使用filter。方法查询并显示年龄大于20岁的学生信息,如图3-23所示。df.filter=df.filter(age20)df,filter.show()IagecollegenameI211机械学院I张三II22|信息学院I李四II22|人文学院I赵六I图3-23年龄大于20岁的学生信息例3-9使用OrderByo方法分别按照age字段升序和降序排列学生信息,如图3-24所示.|dforderbyasc=df

8、.orderBy(age)df.orderby.asc.show()Iage Collegelnamel升序I 20|信息学院I王二II 21|机械学院I张三II 22|信息学院I李四II 22|人文学院I赵六I降序 df. Orderby desc=df.orderBy(aqe,ascendinq=False) df_orderby_desc. show()Iage collegenameI 22|信息学院I学四I I 22|人文学院I赵六I I 21|机械学院I张三I I 20|信息学院I王二I图3-24按age字段排序的学生信息【例3-10使用即。UPByo方法根据c。IIegC字段对数

9、据进行分组操作,然后按学院统计学生信息, 输出结果如图3-25所示。 df_c rouppy=df . groupBy df_ roubb. covlt(): ShI college)countIAegF,)f6w()- I和川g;IIPByc方法IK4 college字段进行分组I 使用CoUnt()方法按照学院统计学生人数院院院 学学学 械文总 机人信djqrupbymevn(age)ShOW(片I college)avg(age)I使川mean。方法按照学院统计学生的平均年龄I机械学院I21.0I人文学院I22.0I信息学院I21.0使用agg()方法按照学院统计学生的+最小年龄、最大年

10、龄和平均年龄fromDVSDark.salimoortfunctions己SFdf_*oupby.agg(F.min(age).F.max(age).F.avg(age).sho()IColIegelmin(age)ma(age)avg(age)|I机械学院I212121.01I人文学院I222222.0I信息学院I20|22121.0图3-25按学院统计学生信息【高手点拨】groupBy()方法常与agg()、COUnt()、mean。、max()xmin()和SUmO等方法合用,agg()方法用于计算每个分组的聚合结果;COUnt()方法用于计算分组的元素数;mean。、max。、min(

11、)与sum()方法分别用于计算分组中某字段的平均值、最大值、最小值与和。【例3-11使用join。方法根据name字段连接df和df2两个DataFramc,连接直询结果如图3-26所示。df.join=df.join(df2,name).show()InameIageIcollege)phoneI王二I20信息学院15136665211I张三I21|机械学院15136665212I李四I22|信息学院15136665213j赵六I22|人文学院15136665214图3-26辘查询结果【例3-12使用SCIeCto方法查询college和name字段的数据,如图3-27所示。使用IimitO

12、方法查询前两行数据,如图3-28所示。使用SeleCtEXPrO方法将字段名college修改为school,如图3-29所示。df.select=df.select(college,name)deselect,show()df_Ximit=df.limit(2)+-+df_limit.show()I age collegename|Icollegename+-+-+I 20|信息学院I王二II 21|机械学院I张三II信息学院I王二II机械学院I张三II信息学院I李四II人文学院I赵六I+-+图3-27杳询ColIege和name字段的数据图3-28杳询前两行数据df.selectExpr=df.selectExpr(name,age,collegeasschool)df_selectExpr.show()InameIageIschoolI王二I20信息学院II张三I21机械学院II李四I22信息学院II赵六I22人文学院I图3-29修改字段名【学生】聆听、思考、理解、记录1.查询并统计价格超过500元的各类商品信息和数量【教师】介绍“查询并统计价格超过500元的各类商品信息和数量”的大概流程,安排学生扫描微课二维码观看视频“直询并统计价格超过500元的各类商品信

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 计算机应用/办公自动化

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!