欢迎光临散文网 会员登陆 & 注册

基于SQL和DSL的WordCount经典案例编程实战(附代码)

2023-03-15 16:03 作者:ingemar-  | 我要投稿

SparkSQL WordCount 基于DSL编程步骤

使用SparkSession加载文本数据,封装到Dataset/DataFrame中,调用API函数处理分析数据(类似RDD中API函数,如flatMap、map、filter等),编程步骤:

第一步、构建SparkSession实例对象,设置应用名称和运行本地模式;

第二步、读取HDFS上文本文件数据;

第三步、使用explode将单列扩展成多行,比如select explode(subordinates) from employees;

SparkSQL WordCount 基于SQL编程编程步骤

也可以实现类似HiveQL方式进行词频统计,直接对单词分组group by,再进行count即可,步骤如下:

第一步、构建SparkSession对象,加载文件数据,分割每行数据为单词;

第二步、将DataFrame/Dataset注册为临时视图(Spark 1.x中为临时表);

第三步、编写SQL语句,使用SparkSession执行获取结果;

第四步、控制台打印结果数据和关闭SparkSession;


完整代码


代码实现:通过RDD转换为DF,通过SQL和DSL分别实现WordCount

代码实现:通过explode函数完成统计操作: DSL   SQL  以及 DSL+SQL混用




基于SQL和DSL的WordCount经典案例编程实战(附代码)的评论 (共 条)

分享到微博请遵守国家法律