• Spark初识


    Spark初识

     spark是一个快速的统一的引擎,基于内存的运算
     spark有一个高级的DAG(有向无环图)引擎,支持循环的数据流和基于内存的计算
     spark支持的开发语言JavaScalaPythonR
     spark提供了80多种算子操作
     在一个应用中可以无缝整合spark组件
     spark可运行在任何环境yarn、Mesos、standalone(调度的资源框架不同)
     可以访问各种各样的数据资源HDFS HiveCassandraHBaseS3(亚马逊)

    资源调度

      Yarn:粗力度的资源调度框架(给足够的资源),底层是java

      Mesos:可粗可细(合理分配资源)底层是C++

    存储

      HDFS基于磁盘

      Tachyan基于内存

    计算

      Spark core

    Hadoop慢的原因
    大量的IO、额外的复制、序列化

    大量的IO:
    每个Job都要将数据从HDFS中读出,处理完后,再将数据写入HDFS中。
    额外的复制
    每个HDFS文件有三个副本,第一个副本存储在当前机器,第二个副本存储在不同机架上的机器,第三个副本和第二个同机架

    Spark快的原因(基于内存、高效的DAG)
    迭代计算,第一次计算读数据从HDFS读,计算之后结果存在内存,如果内存不够,经过配置,可落地到磁盘,保证数据不丢失。第二次计算时数据直接从内存读取。
    也有副本机制,存在不同机器的内存中。

    Spark的运行模式
    Local 多用于测试
    Standalone Spark自带的,独立的环境,可抛开Hadoop生态体系,有自己的资源管理(cluster resource manager)
    Mesos 用的不多
    Yarn 用的最多

  • 相关阅读:
    java编码过滤器
    DAO设计模式
    常用的SQL语句
    IO流总结
    IO流的登录与注册
    设计模式之模板方法模式(Template Method)详解及代码示例
    设计模式之享元模式(Flyweight)详解及代码示例
    设计模式之桥接模式(Bridge)详解及代码示例
    设计模式之组合模式(Composite)详解及代码示例
    设计模式之外观模式(Facade)详解及代码示例
  • 原文地址:https://www.cnblogs.com/EnzoDin/p/8552214.html
Copyright © 2020-2023  润新知