spark-01 小试牛刀:用spark shell一句话实现简单的wordcount

本文通过一系列步骤展示了如何使用Spark Shell处理大数据。首先,通过Linux命令生成和增大数据文件,然后创建HDFS数据文件夹并上传文件。接着,启动Spark Shell,并指定master节点和资源参数。在Shell中,执行WordCount操作,最后查看HDFS上的结果文件。
摘要由CSDN通过智能技术生成

1、准备数据

961M -rw-r--r--. 1 root root 644M Nov  2 07:43 wcdata.txt

利用linux:

[root@spark01 ~]# echo hello kerry tom jerry cat big data helo hadoop keery kerry jerry dog tom >> 1.txt
 #先增加到约1M或10M

[root@spark01 ~]# for i in {1..10000}; do cat 1.txt>>words.txt;done
#再增加到1G

[root@spark01 ~]# for i in {1..100}; do cat words.txt>>wcdata.txt;done

2、创建HDFS数据文件夹并上传文件

[root@spark01 ~]# hdfs dfs -mkdir /data
[root@spark01 ~]# hdfs dfs -put wcdata.txt  /data

3、启动spark shell

启动时必须指定--master及地址它才会提交到集群中运行

 ./spark-shell --master spark://spark01:7077 

也可以根据任务的运算量手工指定内存及CPU资源:(多个master时加,号分隔)

如下:指定spark01、spark02运行,内存8G,CPU为16核

  ./spark-shell --master spark://spark01:7077,spark02:7077 --executor-memory 8g --total-executor-cores 16 

4、开始任务

sc.textFile("hdfs://spark01:8020/data").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).sortBy(_._2,false).saveAsTextFile("hdfs://spark01:8020/out-wc") 

(注意:HDFS的端口要和hadoop中的端口一致,不一定是8020,具体看配置) 

5、查看结果

[root@spark01 ~]# hdfs dfs -ls /out-wc
Found 4 items
-rw-r--r--   3 root supergroup          0 2020-11-02 08:00 /out-wc/_SUCCESS
-rw-r--r--   3 root supergroup          0 2020-11-02 08:00 /out-wc/part-00000
-rw-r--r--   3 root supergroup         49 2020-11-02 08:00 /out-wc/part-00001
-rw-r--r--   3 root supergroup        121 2020-11-02 08:00 /out-wc/part-00002 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

pub.ryan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值