Spark编程基础(Python版)
Spark简介
Spark是一种安全的、经正式定义的编程语言,被设计用来支持一些安全或商业集成为关键因素的应用软件的设计。
Spark具有如下几个主要特点:
运行速度快
容易使用
通用性
运行模式多样
RDD是什么
弹性分布式数据集(RDD,Resilient Distributed Datasets),它具备像MapReduce等数据流模型的容错特性,并且允许开发人员在大型集群上执行基于内存的计算
SparkContext的概念
SparkContext是整个spark的入口,相当于程序的main函数。在我们启动spark的时候,spark已经为我们创建好了一个SparkContext的实例,命名为sc,我们可以直接访问到。
创建RDD也需要基于sc进行
RDD(弹性的分布式数据集)创建
RDD可以通过两种方式创建:
(1)从本地文件系统中加载数据创建RDD
# 从本地文件系统中加载数据
lines = sc.textFile("file:///usr/local/spark/mycode/rdd/word.txt")
# 从HDFS文件系统中加载数据
lines = sc.textFile("hdfs://localhost:9000/user/hadoop/word.txt")
lines = sc.textFile("/user/hadoop/word.txt")
lines = sc.textFile("word.txt")
(2)调用SparkContext的parallelize方法,通过并行集合(列表)创建ADD
nums = [1,2,3,4,5]
rdd = sc.parallelize(nums)
RDD支持两种操作,一种叫做转化操作(transformation)一种叫做行动操作(action)
转换操作
顾名思义