Spark Python API 学习(1)

来源:互联网 发布:科比生涯总数据 编辑:程序博客网 时间:2024/06/14 05:49

初识Spark

    最近刚刚接触Spark,想写一些学习笔记,记录自己每天的学习过程,顺便激励自己的,写的不一定对,只是自己对Spark的一些理解,如有错误,恳请大神批评指正,第一次写博客,不足之处请大家见谅。
    个人对Spark的理解就是一个并行计算框架,代替了Hadoop生态环境中的Mapruduce(基于硬盘),因为Spark是基于内存的,所以运算速度是Mapreduce的100倍,因此个人觉得大数据的时代Spark才是未来。
    Spark:所操作的对象是RDD(可以理解为一种数据结构,从本地文件读取后成为RDD),Spark所有的操作都是对RDD进行转化或者计算。用Python编写Spark平台的程序其实就是用Python的基本语法,然后调用Spark平台的API对RDD进行操作,对RDD的操作包括两种:转换操作和行动操作。Spark是惰性计算,在转换操作的时候cpu实际是不进行运算的,只有到了行动操作cpu才进行运算。将写完的Python程序通过spark-submit命令提交到spark处理。
Python版的spark程序结构主要包含五部分内容:
    1.初始化SparkContext(不用管是什么,就是下边的三行代码,放在程序的开头)

from pyspark import SparkConf,SparkContextconf = SparkConf().setMaster("local").setAppName("My App")sc = SparkContext(conf = conf)

    2.读取本地文件中的数据创建RDD
    3.对创建的RDD进行转换操作(调用SparkAPI)
    4.对转换完的RDD进行行动操作(调用SparkAPI)
    5.将结果保存到本地文件中
难点:主要是对创建的RDD结构的把握以及第三步和第四步SparkAPI的使用

0 0
原创粉丝点击