Fork me on GitHub

Spark笔记1-入门Hadoop

大数据4大特性

  • Volume:大量化
  • Velocity:快速化
  • Variety:多样化
  • Value:价值密度低

关键技术

数据采集、数据存储和管理、数据处理和分析和数据隐私和安全。主要关注点是:

分布式存储

解决数据存储问题,代表:

  • GFS/HDFS
  • Big Table
  • NoSql
  • NewSQL

分布式处理

解决数据高效计算问题,带表

  • MapReduce
  • Spark
  • Flink

大数据计算模式

  • 批处理计算模式:MapReduce

  • 流计算:实时处理,实时做出响应:Storm\Flume\S4

  • 图计算:地理信息系统,社交网络等:Pregel

  • 查询分析计算:google Dremel、Hive、Cassandra

Hadoop

Hadoop中相关组件有

  • HDFS:海量分布式文件管理系统,针对数据存储
  • YARN:资源调度管家,一个集群支持多种框架。管理系统,系统、CPU和内存等,解决开发成本高和集群资源利用率等问题

  • MapReduce:分布式计算框架,针对数据计算

    • 编程容易:屏蔽了底层分布式并行编程细节
    • 分而治之:将大任务分成多个子任务,并行执行任务

  • Hive:数据仓库,查询时候写的SQL语句;编程接口,将SQL语句自动转成HDFS对应的查询分析

  • Pig: 数据流处理,和Hive联合处理

  • Mahout:数据挖掘库,实现分类、聚类和回归等

    • 调用接口,传参数,较少工作量
    • 针对海量数据进行数据挖掘分析
  • Ambari:安装、部署、配置和管理工具

  • Zookeeper:分布式协作服务

  • HBase:分布式数据库,一主多从架构

  • Flume:日志收集分析功能

  • Sqoop:数据库ETL,完成各个组件之间的互联互通功能

Hadoop的缺点是:

  • 表达能力有限:不管应用如何,总是抽象成map和reduce两个函数,降低了分布式应用开发的复杂性
  • 磁盘IO开销大:各种迭代功能
  • 延迟高

Spark

spark(2009年)是一个单纯的计算框架,比MapReduce更佳,取而代之,本身不具备存储能力。火的原因:社区好、企业支持早

优势

操作多样化

Spark中的操作不再仅限于map和reduce两个操作,操作类型多,表达能力更强,操作还包含:

  1. groupby
  2. join
  3. filter

提供内存计算

数据生成之后,将数据写入内存中,下次直接在内存中进行调用即可。

底层架构

底层是spark corespark框架图:

  • spark SQL:分析关系数据,进行查询
  • spark streaming:流计算
  • MLlib:机器学习算法库
  • GraphX:编写图计算应用程序

Apache Flink 是一个分布式大数据处理引擎,2008年诞生,也是一个计算框架。可对有限数据流和无限数据流进行有状态或无状态的计算,能够部署在各种集群环境,对各种规模大小的数据进行快速计算。

spark和Flink对比

Flink更适合做流计算

Beam

Beam是谷歌公司提出来的,想将各种框架统一起来。

本文标题:Spark笔记1-入门Hadoop

发布时间:2019年10月23日 - 15:10

原始链接:http://www.renpeter.cn/2019/10/23/Spark%E7%AC%94%E8%AE%B01-Hadoop%E5%85%A5%E9%97%A8.html

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。

Coffee or Tea