Spark:快速的通用的分布式计算框架


  概述和特点:

    1) Speed,(开发和执行)速度快。基于内存的计算;DAG(有向无环图)的计算引擎;基于线程模型;

    2)Easy of use,易用 。 多语言(Java,python,scala,R); 多种计算API可调用;可在交互式模式下运行;

    3)Generality  通用。可以一站式解决多个不同场景的应用业务

      

        Spark Streaming :用来做流处理

        MLlib : 用于机器学习

        GraphX:用来做图形计算的

    4) Runs Everywhere 

      (1)可以运行在Hadoop的yarn,Mesos,standalone(Sprk自带的)这些资源管理和调度的程序之上

      (2) 可以连接包括HDFS,Cassandra,HBase,S3这些数据源 

          

  产生背景:

    1)MapReduce 局限性

      (1)代码繁琐(官网有WordOCunt案例)

      (2)效率低下:

          a) 有结果写入磁盘,降低效率;

          b) 通过进程模型,销毁创建效率低

      (3)只能支持map和reduce方法

      (4) 不适合迭代多次,交互式,流水的处理

    2) 框架的多样化

      (1)批处理(离线):MapReduce,Hive,Pig

      (2)流式处理(实时):Storm,Jstorm

      (3)交互式计算 :Impala

    综上: 框架的多样化导致生产时所需要的框架繁多,学习运维成本较高,那么有没有一种框架,

      既能执行效率高,学习成本低,还能支持批处理和流式处理与交互计算呢?

    结论:Spark诞生

  Spark与Hadoop对比:

      Hadoop生态系统

          

          Hive:数据仓库

          R:数据分析

          Mahout:机器学习库

          pig:脚本语言,跟Hive类似

          Oozie:工作流引擎,管理作业执行顺序

          Zookeeper:用户无感知,主节点挂掉选择从节点作为主的

          Flume:日志收集框架

          Sqoop:数据交换框架,例如:关系型数据库与HDFS之间的数据交换

          Hbase : 海量数据中的查询,相当于分布式文件系统中的数据库

     BDAS:Berkeley Data Analytics Stack(伯克利数据分析平台)

      

      

     Spark与Hadoop生态圈对比

      

    注意:在对实时的查询来说,Spark只是一个快速的分布式计算框架,所以没有存储的框架,但是可以连接多个存储的数据源

    Hadoop与Spark对比

      

    MapReduce与Spark对比:

        MapReduce:若进行多次计算,MP则需要将上一次执行结果写入到磁盘,叫做数据落地

        Spark:直接将存储在内存中的结果拿来使用,没有数据落地

        

  Spark与Hadoop的协作性

    

Spark概述和与Hadoop对比

    

     

Spark环境搭建(五)-----------Spark生态圈概述与Hadoop对比的更多相关文章

  1. Hive On Spark环境搭建

    Spark源码编译与环境搭建 Note that you must have a version of Spark which does not include the Hive jars; Spar ...

  2. Spark环境搭建(上)——基础环境搭建

    Spark摘说 Spark的环境搭建涉及三个部分,一是linux系统基础环境搭建,二是Hadoop集群安装,三是Spark集群安装.在这里,主要介绍Spark在Centos系统上的准备工作--linu ...

  3. 分布式计算框架-Spark(spark环境搭建、生态环境、运行架构)

    Spark涉及的几个概念:RDD:Resilient Distributed Dataset(弹性分布数据集).DAG:Direct Acyclic Graph(有向无环图).SparkContext ...

  4. Spark学习进度-Spark环境搭建&Spark shell

    Spark环境搭建 下载包 所需Spark包:我选择的是2.2.0的对应Hadoop2.7版本的,下载地址:https://archive.apache.org/dist/spark/spark-2. ...

  5. 大数据学习系列之六 ----- Hadoop+Spark环境搭建

    引言 在上一篇中 大数据学习系列之五 ----- Hive整合HBase图文详解 : http://www.panchengming.com/2017/12/18/pancm62/ 中使用Hive整合 ...

  6. 4.Spark环境搭建和使用方法

    一.安装Spark spark和Hadoop可以部署在一起,相互协作,由Hadoop的HDFS.HBase等组件复制数据的存储和管理,由Spark负责数据的计算. Linux:CentOS Linux ...

  7. 学习Spark——环境搭建(Mac版)

    大数据情结 还记得上次跳槽期间,与很多猎头都有聊过,其中有一个猎头告诉我,整个IT跳槽都比较频繁,但是相对来说,做大数据的比较"懒"一些,不太愿意动.后来在一篇文中中也证实了这一观 ...

  8. Spark环境搭建(六)-----------sprk源码编译

    想要搭建自己的Hadoop和spark集群,尤其是在生产环境中,下载官网提供的安装包远远不够的,必须要自己源码编译spark才行. 环境准备: 1,Maven环境搭建,版本Apache Maven 3 ...

  9. Spark环境搭建(四)-----------数据仓库Hive环境搭建

    Hive产生背景 1)MapReduce的编程不便,需通过Java语言等编写程序 2) HDFS上的文缺失Schema(在数据库中的表名列名等),方便开发者通过SQL的方式处理结构化的数据,而不需要J ...

随机推荐

  1. (Python3 自定义函数实现数字金字塔 代码

    def kzkz(ceng): for i in range(1,ceng+1): print(" "*(ceng-i),end='') n=i while(n>=1): p ...

  2. 运维工作笔记--------------mongodb无法启动问题

    1.根据编译的脚本检查脚本内的服务启动路径是否正确 2.更改完成后删除pid文件 3.重启mongod

  3. 开发一个项目之ES2015+

    变量的解构赋值 任何部署了 Iterator 的对象都可 for of 循环(数组.Set.Map.某些类似数组的对象(arguments对象.DOM NodeList 对象).Generator 对 ...

  4. flask学习(二)

    一.蓝图 作用:给开发者提供目录结构 功能:1.自定义模板.静态文件目录 2.给一类url加前缀    3.给一类url添加before_request 目录结构 from flask_werkzur ...

  5. PostgreSQL学习笔记(二)-安装pgAdmin

    继上篇安装PostgreSQL后,我们需要安装一个PostgreSQL的图形化管理工具. pgadmin管理工具 创建Python的虚拟环境 cd /root/venv python -m venv ...

  6. L2-008 最长对称子串 (25 分) (模拟)

    链接:https://pintia.cn/problem-sets/994805046380707840/problems/994805067704549376 题目: 对给定的字符串,本题要求你输出 ...

  7. 使用ansible实现轻量级的批量主机管理

    作者:邓聪聪 查看ansible配置文件下的hosts的文件 [root@ansible-server scripts]# cat /etc/ansible/hosts [test] 172.16.1 ...

  8. WPF实战之一 桌面消息框(右下角消息弹出框)

    此版本是根据别人的项目改造的,记录下笔记 原文:https://blog.csdn.net/catshitone/article/details/75089069 一.即时弹出 1.创建弹出框 新建一 ...

  9. 统计信息不准导致sql性能下降

    某局的预生产系统一条sql语句20分钟执行完,上线以后2个小时没执行出来,在预生产执行计划是hash join在生产是nested loop,通过awr基表wri$_optstat_tab_histo ...

  10. appium 与 selenium python解决python 'WebElement' object does not support indexing 报错问题问题

    再用selenium编写测试脚本时,发现出现python 'WebElement' object does not support indexing 报错问题问题,再找一些解决方法时,发现Appium ...