• Spark和Hadoop的联系和区别


    首先我们来看看Hadoop的相关简短回顾:

      1. Hadoop是由Java语言编写,在分布式集群上存储海量数据并运行分布式分析应用框架

      2. HDFS为其存储数据的分布式文件系统

      3.  分布式计算框架为MapReduce

      4. HBase一个基于HDFS的分布式非关系型数据库

      5. Yarn作为分布式资源调度框架

    再来看看Spark:

      1. 开发语言 为 Scala

      2. 基础于核心  ==  Spark Core

      3. Spark SQL 用来操作结构化数据的组件。可以通过使用 SQL 语言来查询数据

      4. Spark Streaming 针对实时数据进行流式计算的组件

      5. 还有 Spark MLlib 和 Spark Graphx 分别是机器学习算法库 、面向图计算提供的框架与算法库

    选择 Spark  还是选 Hadoop(MR)???

      · Spark在MR的基础上,进行了计算过程的优化,利用其RDD计算模型(适合并行计算和重复使用)

      · Hadoop基于磁盘进行数据通信,而Spark多个作业之间的通信是基于内存

      · Spark Task 启动时间快,采用的是fork线程的方式;而Hadoop采用创建新的进程的方式

      · Spark只有在shuffle 的时候将数据写到磁盘(进行磁盘IO),而Hadoop多个MR之间的胡数据交互都要依赖于磁盘交互

      · Spark 的缓存机制 比 HDFS的缓存机制 更为高效(Spark中的 cache & checkpoint)

    由于Spark基于内存, 所以在实际环境中, 会受内存限制

    Spark 相比于 MR更有优势 但是不能完全替代 MR

  • 相关阅读:
    多屏共享
    md5-linux_shell
    2017年会所得
    linux无线网络配置_转
    (转)台式机华硕主板双显卡切换,怎么舒服怎么来
    Apache FtpServer 实现文件的上传和下载
    (转载)Windows 上搭建Apache FtpServer
    Eclipse常用设置
    博客园文章样式修改
    黑马公社学习
  • 原文地址:https://www.cnblogs.com/joey-413/p/14085970.html
Copyright © 2020-2023  润新知