【读书笔记】大数据原理与应用:大数据处理架构Hadoop

简介: 【读书笔记】大数据原理与应用:大数据处理架构Hadoop

简 介:这本书的名字为大数据技术原理与应用,该书的作者为厦门大学著名的研究大数据方向的林子雨老师。顾名思义,概述讲述了大数据的相关知识,包含一些分布式系统以及各种流计算等大数据技术。本书讲述的非常棒,通俗易懂。下面是我在读这本书的时候的记录并加上自己的理解。本文意在记录自己近期学习过程中的所学所得,如有错误,欢迎大家指正。

 

关键词:Hadoop、MapReduce、大数据生态

一、Hadoop简介

Hadoop是Apache旗下的一个开源分布式计算平台,为广大用户提供了分布式基础架构。Hadoop的两大核心就是HDFS和MapReduce。HDFS就是分布式文件系统,它是将谷歌的GFS进行了开源实现,它支持大规模数据的分布式存储。而MapReduce是用来进行整个HDFS上的数据,使集群中的每个机器进行并行操作,保证处理数据的高效性。

二、Hadoop的特点

Hadoop本身是一种分布式计算框架,具有可靠、高效等特性。

  1. 高效性:Hadoop是分布式计算平台,它有效地利用了分布式存储和分布式并行处理两大核心技术,大大提高了数据处理的效率
  2. 可扩展性:因为Hadoop是建立在大的集群之上,所以它可以扩展很多个节点
  3. 可靠性:因为是集群形式,尽管存在一台机器宕机,但是集群中的其它机器仍然可以进行服务
  4. 高容错性:Hadoop的HDFS采用的是副本机制,同样的数据存储在多个机器中,有多个副本,一旦某台机器的数据丢失,其它的机器仍然可以提供丢失的数据
  5. 成本低:集群方式使得我们可以使用很多廉价的机器进行运转任务

三、Hadoop的生态系统

现在已经有很多成熟的框架支持并建立在Hadoop的系统之上,比如Hive、HBase、Spark等大数据组件。

上图可以观察到HDFS是很多大数据框架依赖的基础,因为我们的数据全部都是要存储到分布式文件系统中,然后利用现有的大数据组件进行分析处理、存储等操作。

1.HDFS:

HDFS的全名为Hadoop Distributed File System,它显著的有点就是可以运行在很多廉价的服务器上,而且由于集群的原因,它保证了用户数据的可靠性。而且它的吞吐率很高,这也就是为什么它适合大数据的原因。

2.HBase:

HBase是大数据生态系统中的一个数据库,但是它不同于mysql这些,它是NoSQL,底层是以列进行存储,可以很好的存储非结构化数据,采用rowKey进行区分每条数据。HBase其实就是谷歌曾经的一篇论文BigTable的开源实现。

3.MapReduce

MapReduce简单来说它不是一种技术,它是一种编程思想,就是可以理解为将我们很多的数据进行切分,一系列的任务进行切分,统一的抽象成两个阶段,分别为Map阶段和Reduce阶段,Map阶段就是将我们的数据进行切分,然后Reduce阶段,将我们的中间结果进行聚合处理。最直白来说,MapReduce的核心思想就是分而治之,它会将一个大的任务分成多个小任务放到集群中多个服务器上去运行,最终整合所有服务器的结果。

4.Hive

Hive是一个基于Hadoop的数据仓库,可以理解为就是存储数据的仓库,这么说好像和数据库差不都,都属用来存数据的,虽说都可以存储数据,但是数据仓库往往是用来存历史数据或者是大型数据,以便于日后进行分析计算等。Hive提供了类SQL的语言进行编程(HQL),大大降低了学习难度,而且书写HQL可以将它转化为MR任务进行执行。

5.Zookeeper

Zookeeper是一种高可靠的协同工作系统,方便我们进行集群管理,以及分布式应用的配置管理等。

6.Flume

Flume是一个可以采集海量日志的工具,它可以实时的检测数据的产生将其采集到我们的数仓,然后进行分析,它的优点是我们可以自定向进行数据的转移。

,它可以实时的检测数据的产生将其采集到我们的数仓,然后进行分析,它的优点是我们可以自定向进行数据的转移。


相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
目录
相关文章
|
XML 存储 分布式计算
【赵渝强老师】史上最详细:Hadoop HDFS的体系架构
HDFS(Hadoop分布式文件系统)由三个核心组件构成:NameNode、DataNode和SecondaryNameNode。NameNode负责管理文件系统的命名空间和客户端请求,维护元数据文件fsimage和edits;DataNode存储实际的数据块,默认大小为128MB;SecondaryNameNode定期合并edits日志到fsimage中,但不作为NameNode的热备份。通过这些组件的协同工作,HDFS实现了高效、可靠的大规模数据存储与管理。
1626 70
|
8月前
|
存储 SQL 分布式计算
MaxCompute 聚簇优化推荐原理
基于历史查询智能推荐Clustered表,显著降低计算成本,提升数仓性能。
480 4
MaxCompute 聚簇优化推荐原理
|
存储 分布式计算 Hadoop
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
699 79
|
12月前
|
Cloud Native 大数据 Java
大数据新视界--大数据大厂之大数据时代的璀璨导航星:Eureka 原理与实践深度探秘
本文深入剖析 Eureka 在大数据时代分布式系统中的关键作用。涵盖其原理,包括服务注册、续约、发现及自我保护机制;详述搭建步骤、两面性;展示在大数据等多领域的应用场景、实战案例及代码演示。Eureka 如璀璨导航星,为分布式系统高效协作指引方向。
|
机器学习/深度学习 数据采集 分布式计算
大数据分析中的机器学习基础:从原理到实践
大数据分析中的机器学习基础:从原理到实践
746 3
|
存储 分布式计算 Hadoop
MPP 架构与 Hadoop 架构技术选型指南
MPP架构与Hadoop架构是处理海量数据的两大选择。MPP通过大规模并行处理实现快速查询响应,适用于企业级数据仓库和OLAP应用;Hadoop则以分布式存储和计算为核心,擅长处理非结构化数据和大数据分析。两者各有优劣,MPP适合结构化数据和高性能需求场景,而Hadoop在扩展性和容错性上表现更佳。选择时需综合考虑业务需求、预算和技术能力。
1642 14
|
存储 分布式计算 大数据
Flume+Hadoop:打造你的大数据处理流水线
本文介绍了如何使用Apache Flume采集日志数据并上传至Hadoop分布式文件系统(HDFS)。Flume是一个高可用、可靠的分布式系统,适用于大规模日志数据的采集和传输。文章详细描述了Flume的安装、配置及启动过程,并通过具体示例展示了如何将本地日志数据实时传输到HDFS中。同时,还提供了验证步骤,确保数据成功上传。最后,补充说明了使用文件模式作为channel以避免数据丢失的方法。
882 4
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第27天】在大数据时代,数据湖技术凭借其灵活性和成本效益成为企业存储和分析大规模异构数据的首选。Hadoop和Spark作为数据湖技术的核心组件,通过HDFS存储数据和Spark进行高效计算,实现了数据处理的优化。本文探讨了Hadoop与Spark的最佳实践,包括数据存储、处理、安全和可视化等方面,展示了它们在实际应用中的协同效应。
715 2
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第26天】本文详细探讨了Hadoop与Spark在大数据处理中的协同作用,通过具体案例展示了两者的最佳实践。Hadoop的HDFS和MapReduce负责数据存储和预处理,确保高可靠性和容错性;Spark则凭借其高性能和丰富的API,进行深度分析和机器学习,实现高效的批处理和实时处理。
632 1
|
8月前
|
机器学习/深度学习 传感器 分布式计算
数据才是真救命的:聊聊如何用大数据提升灾难预警的精准度
数据才是真救命的:聊聊如何用大数据提升灾难预警的精准度
571 14