Hadoop, Hadoop涉及到的一些常见概念(分布式与集群、HDFS、MapReduce等),Hadoop怎么用?

简介: Hadoop, Hadoop涉及到的一些常见概念(分布式与集群、HDFS、MapReduce等),Hadoop怎么用?

Hadoop, Hadoop涉及到的一些常见概念(分布式与集群、HDFS、MapReduce等),Hadoop怎么用?

 


Hadoop是什么,有什么用

1,Hadoop是什么?

■   Hadoop是做什么的?目前主流的大数据处理分布式架构之一,Hadoop用于处理大规模数据。【分布式系统架构,用于处理大数据】

■  使用Hadoop构建的应用程序可在分布于商用计算机群集(低成本)的大型数据集上运行。【低成本】

■ Hadoop实现了一个分布式文件系统Hadoop的框架最核心的设计就是:HDFS 和 MapReduce

 HDFS为海量的数据提供了存储,而MapReduce则为海量的数据提供了计算。利用集群进行高速运算和存储

■ 用户可以在不了解分布式底层细节的情况下,开发分布式程序。

 

2,Hadoop 作用:体现在Hadoop对大数据处理的意义;【高效计算和存储】

● 大数据存储:分布式存储

● 日志处理:擅长日志分析

● ETL:数据抽取到oracle、mysql、DB2、mongdb及主流数据库

机器学习: 比如Apache Mahout项目

● 搜索引擎:Hadoop + lucene实现

● 数据挖掘:目前比较流行的广告推荐,个性化广告推荐

Hadoop是专为离线和大规模数据分析而设计的,并不适合那种对几个记录随机读写的在线事务处理模式。

 

ps: hadoop实际应用:

■   Hadoop+HBase建立NoSQL分布式数据库应用

■   Flume+Hadoop+Hive建立离线日志分析系统

■   Flume+Logstash+Kafka+Spark Streaming进行实时日志处理分析

 

3,Hadoop 优点:

■  可扩展性强,Hadoop可以在一组计算机集群当中分配任务完成数据计算,这些集群可以更方便地扩展到数千节点当中

■  高效性,Hadoop的分布式文件系统,能够保证高效的数据交互,通过并行处理加快数据处理速度。

■  可靠性Hadoop的分布式文件系统将数据分块储存,每个数据块在集群节点上依据一定的策略进行冗余储存

  确保能够针对失败的节点重新分布处理,从而保证了数据的可靠性。

 

 

二、Hadoop涉及到的一些常见概念(分布式、集群、HDFS、MapReduce等)


✿ 核心架构

■    Hadoop 的底层是Hadoop Distributed File System(HDFS),HDFS存储了 Hadoop 集群中所有存储节点上的文件。

HDFS的上一层是MapReduce引擎,该引擎由 JobTrackers 和 TaskTrackers 组成。

■  通过对Hadoop分布式计算平台最核心的分布式文件系统HDFS、MapReduce处理过程,

以及数据仓库工具Hive和分布式数据库Hbase的介绍,基本涵盖了Hadoop分布式平台的所有技术核心。

 

Hadoop中涉及到的常见概念:

(1)分布式与集群:

■    集群是个物理形态,分布式是个工作方式。

只要是一堆机器,就可以叫集群,一个程序或系统,将任务分配给不同的机器上,不同机器一起合作完成任务的关系,即分布式。

  • 集群:同一个业务部署在多台机器上,提高系统可用性
  • 分布式:不同的业务模块部署在不同的服务器上或者同一个业务模块分拆多个子业务,部署在不同的服务器上,解决高并发的问题

■    集群(处理机的静态状态)强调的是个体与群体之间的关系,是集合在一起的集群关系,也就是处理机不是单一体,是一个相似的个体组成的群体。

分布式(处理机的动态状态)强调的是对业务在源头上的一种处理方式---分配处理。将任务分发给多个处理机,而非单一处理机进行处理。强调请求和处理直接的分发状况。

 

(2)HDFS(Distributed File System):

HDFS是一个分布式文件系统:引入存放文件元数据信息的服务器Namenode和实际存放数据的服务器Datanode,对数据进行分布式储存和读取。

■ HDFS采用了主从(Master/Slave)结构模型一个HDFS集群是由一个NameNode和若干个DataNode组成的。

其中NameNode(NameNode 可以控制所有文件操作)作为主服务器,管理文件系统的命名空间和客户端对文件的访问操作;

集群中的DataNode管理存储的数据。(hadoop2.x版本,可以存在两个NameNode,解决了单节点故障问题)。

 

(3)MapReduce:

MapReduce是一个计算框架:MapReduce的核心思想是把计算任务分配给集群内的服务器里执行。

通过对计算任务的拆分(Map计算/Reduce计算)再根据任务调度器(JobTracker)对任务进行分布式计算。

 

HDFSMapReduce:

Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。

把HDFS理解为一个分布式的,有冗余备份的,可以动态扩展的用来存储大规模数据的大硬盘。

把MapReduce理解成为一个计算引擎,按照MapReduce的规则编写Map计算/Reduce计算的程序,可以完成计算任务。


三、Hadoop怎么用?


 

3.1、Hadoop集群的搭建

无论是在windows上装几台虚拟机集群)玩Hadoop,还是真实的服务器来玩,

简单讲就是把Hadoop的安装包放在每一台服务器上,改改配置,启动就完成了Hadoop集群的搭建。

 

3.2、上传文件到Hadoop集群

Hadoop集群搭建好以后,可以通过web页面查看集群的情况,还可以通过Hadoop命令来上传文件到hdfs集群,

通过Hadoop命令在hdfs集群上建立目录,通过Hadoop命令删除集群上的文件等等。

 

3.3、编写map/reduce程序

通过集成开发工具(例如eclipse)导入Hadoop相关的jar包,编写map/reduce程序,将程序打成jar包扔在集群上执行,运行后出计算结果。

 

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
目录
相关文章
|
分布式计算 Kubernetes Hadoop
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
532 6
|
分布式计算 资源调度 Hadoop
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
309 2
|
消息中间件 分布式计算 关系型数据库
大数据-140 - ClickHouse 集群 表引擎详解5 - MergeTree CollapsingMergeTree 与其他数据源 HDFS MySQL
大数据-140 - ClickHouse 集群 表引擎详解5 - MergeTree CollapsingMergeTree 与其他数据源 HDFS MySQL
289 0
|
数据采集 分布式计算 Hadoop
使用Hadoop MapReduce进行大规模数据爬取
使用Hadoop MapReduce进行大规模数据爬取
|
分布式计算 Hadoop Unix
Hadoop-28 ZooKeeper集群 ZNode简介概念和测试 数据结构与监听机制 持久性节点 持久顺序节点 事务ID Watcher机制
Hadoop-28 ZooKeeper集群 ZNode简介概念和测试 数据结构与监听机制 持久性节点 持久顺序节点 事务ID Watcher机制
258 1
|
存储 SQL 消息中间件
Hadoop-26 ZooKeeper集群 3台云服务器 基础概念简介与环境的配置使用 架构组成 分布式协调框架 Leader Follower Observer
Hadoop-26 ZooKeeper集群 3台云服务器 基础概念简介与环境的配置使用 架构组成 分布式协调框架 Leader Follower Observer
216 0
|
SQL 分布式计算 关系型数据库
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-24 Sqoop迁移 MySQL到Hive 与 Hive到MySQL SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
353 0
|
SQL 分布式计算 关系型数据库
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
Hadoop-23 Sqoop 数据MySQL到HDFS(部分) SQL生成数据 HDFS集群 Sqoop import jdbc ETL MapReduce
219 0
|
10月前
|
存储 分布式计算 Hadoop
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
507 79
|
存储 分布式计算 大数据
Flume+Hadoop:打造你的大数据处理流水线
本文介绍了如何使用Apache Flume采集日志数据并上传至Hadoop分布式文件系统(HDFS)。Flume是一个高可用、可靠的分布式系统,适用于大规模日志数据的采集和传输。文章详细描述了Flume的安装、配置及启动过程,并通过具体示例展示了如何将本地日志数据实时传输到HDFS中。同时,还提供了验证步骤,确保数据成功上传。最后,补充说明了使用文件模式作为channel以避免数据丢失的方法。
695 4

相关实验场景

更多