zoukankan      html  css  js  c++  java
  • Spark学习之基础相关组件(1)

    Spark学习之基础相关组件(1)

    1. Spark是一个用来实现快速而通用的集群计算的平台。

    2. Spark的一个主要特点是能够在内存中进行计算,因而更快。

    3. RDD(resilient distributed dataset弹性分布式数据集)表示分布在多个计算节点上可以并行操作的元素的集合,是Spark的主要编程抽象。

    4. Spark是一个大一统的软件栈:

    4.1 Spark core实现了Spark的基本功能,包括任务调度、内存管理、错误恢复、与存储系统交互等模块。Spark Core中还包含了对弹性分布式数据集的API定义。
    4.2 Spark Streaming是Spark提供的对实时数据进行流式计算的组件。
    4.3 Mlib机器学习(ML),提供了很多的机器学习算法,包括分类、回归、聚类、协同过滤等,还包括模型评估、数据导入等额外支持功能。
    4.4 Graph是用来操作图的程序库,可以进行并行的图计算。
    4.5 集群管理器(cluster manager),包括自带的独立调度器,还有支持Hadoop YARN、Apache Mesos。
    

    5. Spark的存储层,包括HDFS(分布式文件系统)、本地文件、亚马逊S3、Cassandra、Hive、Hbase等。

    6. spark是用Scala写的,运行在Java虚拟机)(JVM)上。

    7. 独立应用,在独立应用程序中使用Spark需要自行初始化SparkContext。

    7.1. 初始化SparkContext:
        完成与Spark的连接后,接下来需要导入Spark包并且创建SparkContext。可以通过先创建一个SparkConf对象来配置应用,然后基于这个SparkConf创建一个SparkContext对象。
        在Python中初始化Spark
    
            from pyspark import SparkConf,SparkContext
    
            conf = SparkConf().setMaster("local").setAppname("My App")
            sc = SparkContext(conf = conf)
    7.2 使用方法(如使用文本文件)来创建RDD并操控它们。
    7.3 最后关闭Spark调用SparkContext的stop()方法,或者直接退出应用(System.exit(0)或者sys.exit())。
    

    8. 构建独立应用:1)java、Scala、Python创建应用2)stb、maven打包3)stb、maven运行

  • 相关阅读:
    浅谈MSSQL2012中的列存储索引(columnstore indexes)
    《高性能SQL调优精要与案例解析》新书样章
    关系库执行计划中三种最常用连接方式的伪码实现
    python基础-字符串
    python基础-文件和目录
    python基础-列表
    python基础-对象
    python基础-入门
    python算法-二叉树广度优先遍历
    Python算法-二叉树深度优先遍历
  • 原文地址:https://www.cnblogs.com/lanzhi/p/6467813.html
Copyright © 2011-2022 走看看