大数据零碎笔记

  1. 大数据关键技术:

    1. 数据采集
    2. 数据存储与管理
    3. 数据处理与分析
    4. 数据隐私与安全
  2. 大数据核心技术:

    1. 分布式存储技术
    2. 分布式处理技术
  3. 大数据计算模式及相关框架

  4. Hadoop生态

    1. Hadoop生态组件图:

    2. YARN:在没有YARN之前,由于多种计算框架在资源调度机制方面的不同,为了避免各框架之间互相抢夺资源,只能一个集群部署一种框架,大大浪费了集群资源。而YARN恰是一套资源调度框架,可以根据需求对多种计算框架进行资源调度,从而实现了”一个集群多种框架”,提高了资源利用率。

    3. Hive 与 HBase的区别:

      1. HIVE是一种计算工具,在封装Map Reduce的基础上使用SQL方式实现离线处理,可以简单认为是一套SQL翻译语言,只不过翻译为MapReduce计算,HIVE本质上还是依靠MapReduce执行离线批量处理。HIVE目的是处理分析,所以仅支持查询及插入,不支持更改和删除。
      2. HBase是一种面向列的key/value数据库,是把hdfs的数据整理后形成的非关系型数据库,可以做到随机实时访问。HBase本质是数据库,支持增删改查,Hbase使用方式并不是SQL方式,其不支持SQL。

        参考链接:Hive和Hbase各自的应用场景

    4. Zookeeper:分布式应用程序协调服务框架,提供配置维护、域名服务、分布式同步、组服务。
    5. Sqoop:ETL工具,支持Hadoop与关系型数据库之间的数据转移。
    6. Ambari:hadoop集群的集中监控、供应、管理工具,支持Web UI。
  5. Spark vs Hadoop MapReduce核心对比

    1. Hadoop的三大缺陷:表达力差(仅支持Map和Reduce)、延迟高(使用磁盘IO)、链式过程(必须map计算结果写入磁盘后才可以开始reduce操作)
    2. Spark针对上述三点提出了改进:支持多种运算(比如groupBy、filter等)、基于内存计算(中间结果保存到内存)、基于DAG(有向无环图)的调度执行机制。
    3. Spark和MapReduce都需要依赖于HDFS
  6. Spark vs Flink核心对比

    1. 计算模型: Spark基于RDD(弹性数据集)进行小批量处理,是一种微批处理机制,flink是一种基于操作符的连续的流处理模型
    2. spark处理流处理的延迟比flink高,spark的流处理延迟在秒级别,而flink的流处理延迟在毫秒级别。
    3. Spark和Flink都同时支持批处理、流处理、图处理和查询分析计算。