zoukankan      html  css  js  c++  java
  • Spark生态圈概述

    Spark是一个快速且通用的集群计算平台

    1、Spark概述及特点

    1) Speed: 速度。执行速度快,开发速度提高了很多。

           Spark扩充了流行的MapReduce计算模型

      Spark是基于内存的计算。

    2) Ease of User: 易用。支持多种语言,如Python,Java,Scala等

    3) Generality: 通用性,解决多个框架学习成本和运维成本

    4) Run Everywhere: 运行在很多地方

    2、Spark产生背景

    1 ) MapReduce局限性,使用过程繁琐。

          A、代码繁琐

          B、只能支持map和reduce方法

      C、执行效率低下

      D、不适合迭代多次、交互式、流式的处理

    2) 框架的多样化

      A、批处理(离线): MapReduce、Hive、Pig

      B、流式处理(实时): Storm,JStorm

      C、交互式计算:Impala

    学习、运维成本无形中都提高了很多。

    3、Spark发展历史

    4、Spark生态圈

     Related  External Project: 灰色为外部工程。

    5、Spark的组件

    1) Spark Core:

      包含Spark的基本功能,包含任务调度,内存管理,容错机制等

      内部定义了RDDs(弹性分布式数据集)

      提供了很多APIs来创建和操作这些RDDs

      应用场景,为其他组件提供底层的服务

    2) Spark SQL:

       是Spark处理结构化数据的库,就像Hive SQL,Mysql一样

      应用场景,企业中用来做报表统计

    3) Spark Streaming:

      是实时数据流处理组件,类似Storm

      Spark Streaming提供了API来操作实时流数据

      应用场景,企业中用来从Kafka接收数据做实时统计

    4) MLlib:

           一个包含通用机器学习功能的包,Machine learning lib

           包含分类,聚类,回归等,还包括模型评估和数据导入。

      MLlib提供的上面这些方法,都支持集群上的横向扩展。

      应用场景,机器学习。

    5) Graphx:

      是处理图的库(例如,社交网络图),并进行图的并行计算。

      像Spark Streaming,Spark SQL一样,它也继承了RDD API。

      它提供了各种图的操作,和常用的图算法,例如PangeRank算法。

      应用场景,图计算。

    6) Cluster Managers:

      就是集群管理,Spark自带一个集群管理是单独调度器。

      常见集群管理包括Hadoop YARN,Apache Mesos

    6、Hadoop生态圈对比Spark BDAS

    7、Hadoop与Spark对比

    8、MapReduce与Spark对比

    9、Spark和Hadoop的协作性

    作者:Work Hard Work Smart
    出处:http://www.cnblogs.com/linlf03/
    欢迎任何形式的转载,未经作者同意,请保留此段声明!

  • 相关阅读:
    PHP中的数据库一、MySQL优化策略综述
    LINUX下的PHP
    JS实现别踩白块小游戏
    网页实时聊天之js和jQuery实现ajax长轮询
    PHP用mb_string函数库处理与windows相关中文字符
    PHP正则中的捕获组与非捕获组
    PHP递归创建多级目录(一道面试题的解题过程)
    PHP模拟发送POST请求之五curl基本使用和多线程优化
    PHP模拟发送POST请求之四、加强file_get_contents()发送POST请求
    PHP模拟发送POST请求之三、用Telnet和fsockopen()模拟发送POST信息
  • 原文地址:https://www.cnblogs.com/linlf03/p/14358805.html
Copyright © 2011-2022 走看看