今日内容:
-
1- Spark的入门案例
-
2- Spark on Yarn环境配置
-
3- Spark程序 与 pyspark交互流程
-
4- Spark-Submit相关参数配置
1. 基于Pycharm完成PySpark入门案例
1.1 从HDFS上读取文件并实现排序
-
1- 上传一个words.txt文件到HDFS中
vim words.txt
输入i 进入插入模式
添加以下相关内容:
hadoop hadoop hadoop hive hive
hive hadoop hive sqoop sqoop
hadoop hue hue sqoop hive
hive hive sqoop hue zookeeper
zookeeper hive sqoop oozie
oozie oozie hive hive
上传words.txt
hdfs dfs -put words.txt /
注意: 提前开启Hadoop集群, 开启后, 必须记得要进行校验工作(jps + 页面查看)
-
2- 从HDFS上读取文件, 完成WordCount案例实现
from pyspark import SparkContext, SparkConf
import os
# 锁定远端版本地址, 确保环境统一
os.environ['SPARK_HOME'] = '/export/server/spark'
os.environ['PYSPARK_PYTHON'] = '/root/anaconda3/bin/python3'
os.environ['PYSPARK_DRIVER_PYTHON'] = '/root/anaconda3/bin/python3'
if __name__ == '__main__':
print("spark的入门案例: 从HDFS上读取文件, 实现WordCount案例")
# 1. 创建SparkContext对象
conf = SparkConf().setAppName("wd_02").setMaster('local[*]')
sc = SparkContext(conf=conf)
# 2. 执行相关的操作
# 2.1 读取外部文件的数据
rdd_init = sc.textFile(name='hdfs://node1:8020/words.txt')
"""
得到数据:
[
'hadoop hadoop hadoop hive hive',
'hive hadoop hive sqoop sqoop',
'hadoop hue hue sqoop hive',
'hive hive sqoop hue zookeeper',
'zookeeper hive sqoop oozie',
'oozie oozie hive hive'
]
执行Map函数后的返回的内容:
[
['hadoop', 'hadoop'