IDEA 使用Maven创建Spark WordCount经典案例

打开IDEA,

 

package com.atguigu.wordcount

import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}

object ScalaWorkCount {
  def main(args: Array[String]): Unit = {
    //创建spark配置,设置应用程序名字
    val conf = new SparkConf().setAppName("ScalaWordCount")
    //创建spark执行的入口
    val sc = new SparkContext(conf)
    //指定以后从哪里读取数据创建RDD(弹性分布式数据集)
//    sc.textFile(args(0)).flatMap(_.split(" ")).map((_,1)).reduceByKey(_ +_).sortBy(_._2,false).saveAsTextFile(args(1))
    val line:RDD[String] = sc.textFile(args(0))
    //切分压平
    val words:RDD[String] = line.flatMap(_.split(" "))
    //将单词和一组合
    val wordAndOne:RDD[(String,Int)] = words.map((_,1))
    //按key进行集合
    val reduced:RDD[(String,Int)] = wordAndOne.reduceByKey(_ + _)
    //排序
    val sorted = reduced.sortBy(_._2,false)
    //将结果保存到HDFS中
    sorted.saveAsTextFile(args(1))
    sc.stop()

  }
}

/*计算过程分析 
* line.flatMap(_.split(" ")) 或写成flatMap(line => line.split(" "))按安空格拆分文件中单词 
* words.map((_,1)) 或者将每个词映射成 (word,1),word是重复的 
* wordAndOne.reduceByKey(_ + _)或写成reduceByKey((x, y) => x + y) 将key相同的单词相加得到,word不重复 
* sortBy(_._2,false) 按词数量排序 
* 
*
*/

写完后

export 生成jar 包导入集群

执行

/opt/module/spark-2.1.1/bin/spark-submit\

--master \

spark://hadoop02:7077,hadoop03:7077 \

--class com.atguigu.wordcount.ScalaWorkCount \

/home/hadoops/spark-wordcount-1.0-SNAPSHOT.jar \

hdfs://s202:9000/wc hdfs://s202:9000/wcount20190105

com.atguigu.wordcount.ScalaWorkCount :类名

/home/hadoops/spark-wordcount-1.0-SNAPSHOT.jar:jar所在目录

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Hadoop和Spark是目前最流行的大数据处理框架,它们可以用于处理海量数据,进行数据分析和挖掘。以下是一些Hadoop和Spark数据分析案例: 1. 电商网站用户行为分析:通过Hadoop和Spark对电商网站的用户行为数据进行分析,可以了解用户的购买习惯、喜好等信息,从而优化产品推荐、促销策略等。 2. 金融风险管理:通过Hadoop和Spark对金融数据进行分析,可以识别潜在的风险和异常情况,帮助金融机构进行风险管理和预测。 3. 医疗数据分析:通过Hadoop和Spark对医疗数据进行分析,可以发现疾病的规律和趋势,提高医疗服务的质量和效率。 4. 航空公司客户分析:通过Hadoop和Spark对航空公司的客户数据进行分析,可以了解客户的旅行习惯、偏好等信息,从而优化航班安排、服务等。 5. 社交媒体分析:通过Hadoop和Spark对社交媒体的数据进行分析,可以了解用户的兴趣、情感等信息,从而优化广告投放、内容推荐等。 这些案例只是Hadoop和Spark数据分析的冰山一角,随着大数据技术的不断发展,将会有更多的应用场景涌现。 ### 回答2: 随着大数据时代的到来,数据分析成为了各个企业所关注的重点。而在数据分析中,hadoop和spark的应用是不可避免的。hadoop是一种分布式计算平台,可以帮助企业轻松地实现大规模数据的存储和处理;而spark则是一种基于内存计算的框架,可以快速地进行数据处理和分析。下面,我们将分别介绍hadoop和spark在数据分析中的应用,并提供相应的案例。 Hadoop在数据分析中的应用 1. 数据仓库 hadoop是一种分布式计算平台,可以轻松地实现大规模数据的存储和处理。因此,hadoop非常适合用作数据仓库。通过hadoop的分布式存储技术和MapReduce计算框架,可以将数据存储在分布式文件系统HDFS中,并使用Hive进行数据仓库的建设。通过这种方式,企业可以将各个业务系统中的数据进行整合,便于进行多维度数据分析和数据挖掘。 2. 实时数据分析 hadoop不仅适用于离线数据分析,还可以用于实时数据分析。企业可以通过hadoop的基于流的处理框架Storm进行实时数据处理。Storm可以帮助企业处理流式数据,进行实时的数据过滤、转换、聚合和分析。 Spark在数据分析中的应用 1. 机器学习 machine learning是数据分析领域的一个热门方向,而spark作为一种高性能的计算框架,可以帮助企业快速地进行机器学习模型的训练和应用。通过Spark的机器学习库MLlib,企业可以使用spark实现各种机器学习算法,并在大规模数据上进行训练和应用。例如,在电商领域,可以利用MLlib进行用户画像、商品推荐等个性化服务。 2. 数据挖掘 Spark可以帮助企业进行数据挖掘,提取数据中的关键信息。例如,在金融领域,可以利用Spark进行欺诈检测和预测;在航空领域,可以利用Spark进行飞行数据的分析和预测,提高飞行安全性。 以上描述的案例只是hadoop和spark在数据分析中的一个小部分应用,实际上hadoop和spark的应用场景非常广泛,各个领域的企业都可以根据自己的业务需求选择适当的技术。 ### 回答3: Hadoop和Spark是当今世界上最流行的开源大数据处理框架,它们被广泛应用于处理、存储和分析以往难以处理的大数据集。下面我们来说一说Hadoop Spark数据分析案例。 Hadoop是一个开源的分布式文件系统和处理框架,用于处理大规模数据集,这里我们来讲解一下Hadoop的案例。 1. 零售行业客户购物行为数据分析 Hadoop用于分析零售行业客户购物行为。基于Hadoop分布式框架,可以有效地进行数据导入、数据处理、结果分析和数据可视化等功能。借助Hive和Pig,可以实现更加复杂的数据分析。 2. 银行信用卡交易监控分析 Hadoop可以分析银行信用卡交易数据,从而提供关键的商业洞察力。通过挖掘海量数据,可以揭示模式和趋势,帮助银行识别潜在问题和机会,改善客户体验和提高利润率。 现在来说一说Spark案例Spark是一个快速通用的开源处理引擎,提供了内置的数据处理API、图形处理API和机器学习API。这里我们来讲一下Spark的分类和语音处理案例。 1. 分类建模 Spark MLlib提供了各种算法和机器学习工具,可以适用于各种类型的分类建模,例如预测客户流失、预测贷款偿还率等。 2. 语音处理 Spark可以用于语音处理,例如从音频中提取有用的特征,以支持语音识别、情感分析等其他用途。近年来,很多国际大厂商都在利用Spark进行语音处理,例如IBM Watson等。 总之,Hadoop和Spark在大数据处理和分析领域均有着极大的助益。Hadoop被广泛应用于处理海量数据,Spark则更趋向于统一的数据处理引擎。在实际应用场景中,两者可以相互搭配和协调使用,提供更加完整和高效的解决方案。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值