zoukankan      html  css  js  c++  java
  • 寒假学习笔记01

    1. Spark

    Spark是个通用的集群计算框架,通过将大量数据集计算任务分配到多台计算机上,提供高效内存计算。如果你熟悉Hadoop,那么你知道分布式计算框架要解决两个问题:如何分发数据和如何分发计算。Hadoop使用HDFS来解决分布式数据问题,MapReduce计算范式提供有效的分布式计算。类似的,Spark拥有多种语言的函数式编程API,提供了除map和reduce之外更多的运算符,这些操作是通过一个称作弹性分布式数据集(resilient distributed datasets, RDDs)的分布式数据框架进行的。

      2.Spark的核心组件

    • Spark Core:包含Spark的基本功能;尤其是定义RDD的API、操作以及这两者上的动作。其他Spark的库都是构建在RDD和Spark Core之上的。
    • Spark SQL:提供通过Apache Hive的SQL变体Hive查询语言(HiveQL)与Spark进行交互的API。每个数据库表被当做一个RDD,Spark SQL查询被转换为Spark操作。对熟悉Hive和HiveQL的人,Spark可以拿来就用。
    • Spark Streaming:允许对实时数据流进行处理和控制。很多实时数据库(如Apache Store)可以处理实时数据。Spark Streaming允许程序能够像普通RDD一样处理实时数据。
    • MLlib:一个常用机器学习算法库,算法被实现为对RDD的Spark操作。这个库包含可扩展的学习算法,比如分类、回归等需要对大量数据集进行迭代的操作。之前可选的大数据机器学习库Mahout,将会转到Spark,并在未来实现。
    • GraphX:控制图、并行图操作和计算的一组算法和工具的集合。GraphX扩展了RDD API,包含控制图、创建子图、访问路径上所有顶点的操作。

      

      3.编写一个Spark应用

    编写Spark应用与通过交互式控制台使用Spark类似。API是相同的。首先,你需要访问<SparkContext,它已经由<pyspark自动加载好了。

    使用Spark编写Spark应用的一个基本模板如下:

    ## Spark Application - execute with spark-submit
     
    ## Imports
    from pyspark import SparkConf, SparkContext
     
    ## Module Constants
    APP_NAME = "My Spark Application"
     
    ## Closure Functions
     
    ## Main functionality
     
    def main(sc):
        pass
     
    if __name__ == "__main__":
        # Configure Spark
        conf = SparkConf().setAppName(APP_NAME)
        conf = conf.setMaster("local[*]")
        sc   = SparkContext(conf=conf)
     
        # Execute Main functionality
        main(sc)

    这个模板列出了一个Spark应用所需的东西:导入Python库,模块常量,用于调试和Spark UI的可识别的应用名称,还有作为驱动程序运行的一些主要分析方法学。在ifmain中,我们创建了SparkContext,使用了配置好的context执行main。我们可以简单地导入驱动代码到pyspark而不用执行。注意这里Spark配置通过setMaster方法被硬编码到SparkConf,一般你应该允许这个值通过命令行来设置,所以你能看到这行做了占位符注释。

    使用<sc.stop()或<sys.exit(0)来关闭或退出程序。

    Spark的下载地址:

    http://spark.apache.org/downloads.html

    迷失在灿烂之中 消失在万里晴空
  • 相关阅读:
    python之re模块
    python之shell
    python之zip打包
    shell 处理解析json
    shell 中的传参-字符串传参,dict传参
    xshell 快速复制粘贴设置
    openstack 块存储服务 cinder
    win10系统中安装java环境
    mac上安装pip
    解决 谷歌浏览器报欧呦 崩溃了
  • 原文地址:https://www.cnblogs.com/wxy2000/p/12260564.html
Copyright © 2011-2022 走看看