Hadoop框架
Master.TJ
https://github.com/fengruotj
展开
-
Hadoop详解(一):Hadoop简介
1. Hadoop 起源1.1 Hadoop的身世首先我们介绍一下Nutch的发展情况,Nutch是一个以Lucene为基础实现的搜索引擎系统,Lucene为Nutch提供了文本检索和索引的API,Nutch不仅仅有检索的功能,还有网页数据采集的功能。1.2 Hadopop简介Hadoop本质上起源于Google的集群系统,Google的数据中心使用廉价的Linux PC机组成集群,用其运...原创 2019-01-21 12:03:39 · 3389 阅读 · 1 评论 -
Hadoop详解(十二):Yarn资源调度策略
在Yarn中有三种调度器可以选择:FIFO Scheduler ,Capacity Scheduler,Fair Scheduler。FIFO SchedulerFIFO Scheduler把应用按提交的顺序排成一个队列,这是一个先进先出队列,在进行资源分配的时候,先给队列中最头上的应用进行分配资源,待最头上的应用需求满足后再给下一个分配,以此类推。FIFO Scheduler它并不适用于共...原创 2019-02-19 16:34:19 · 512 阅读 · 0 评论 -
Hadoop详解(十一):Yarn设计理念与基本架构
1. Yarn 产生背景1.1 MRv1 的局限性扩展性差:在MRV1中,jobtracker同时兼备了资源管理和作业控制两个功能,这成为系统的一个最大瓶颈,严重制约了hadoop集群扩展性。资源利用率低:MRV1采用了基于槽位的资源分配模型,槽位是一种粗粒度的资源划分单位,通常一个任务不会用完槽位对应的资源,且其他任务也无法使用这些空闲资源无法支持多种计算框架:随着互联网高速发展,m...原创 2019-02-19 16:07:10 · 809 阅读 · 0 评论 -
Hadoop详解(十):Hadoop 作业调度机制
Hadoop 作为一个分布式计算平台,从集群计算的角度分析,Hadoop可以将底层的计算资源整合后统一分配到集群中的计算节点,从而达到分布式和并行计算的目的,最终完成任务的高效执行。在调度机制中涉及的三个核心问题:计算资源的组织用户作业的选择任务的分配策略在目前的Hadoop 系统中,默认的调度器为FIFO调度,主要适合单队列的批处理作业需求,针对多用户多队列的控制需求,雅虎开发并...原创 2019-01-29 23:37:37 · 2805 阅读 · 0 评论 -
Hadoop详解(九):Hadoop Streaming和Pipes原理和实现
为了保证编程接口的通用性,Hadoop提供了Streaming和Pipes编程框架和接口,Streaming编程框架通过标准的输入/输出作为媒介来和Hadoop框架交换数据,因此任何可以操作的标准输入/输出的编程语言都可以基于Hadoop进行并行应用1. Hadoop Streaming1.1 Streaming 原理浅谈Streaming的原理:通过标准的输入/输出管道让用户的程序和Had...原创 2019-01-29 14:25:44 · 1451 阅读 · 0 评论 -
Hadoop详解(七):YARYN完全分布式环境搭建
1. 前言本文搭建了一个由三节点(master、slave1、slave2)构成的Hadoop完全分布式集群,并通过Hadoop分布式计算的一个示例测试集群的正确性。本文将搭建一个支持Yarn的完全分布式环境2. Hadoop MapReduce架构Hadoop MapReduce使用的是主从架构体系主JobTracker:ResourceManager复杂调度分配每一个任务Task运...原创 2019-01-23 16:52:35 · 466 阅读 · 0 评论 -
Hadoop详解(五):HDFS HA 和 Federation
1. Hadoop 2.0 产生背景Hadoop 1.0中HDFS和MapReduce在高可用、扩展性等方面存在问题HDFS存在的问题NameNode单点故障,难以应用于在线场景 HANameNode压力过大,且内存受限,影扩展性 FederationMapReduce存在的问题响JobTracker访问压力大,影响系统扩展性难以支持除MapReduce之外的计算...原创 2019-01-23 12:15:39 · 1684 阅读 · 0 评论 -
Hadoop详解(八):MapReduce深度分析
1. MapReduce数据流向分析MapReduce是一种并行数据处理框架,首先我们需要关注系统中数据流向问题,也就是从输入到输出过程中的数据传输问题。1)从HDFS到Mpper节点输入文件。在一般情况下,存储数据的节点是Mapper运行的节点,不需要在节点之间进行数据传输,也就是尽量让存储靠近计算。但是由于用户的数据文件往往不是均衡的分布在整个集群中,则MapReduce的计算槽位资源却...原创 2019-01-29 01:55:27 · 799 阅读 · 0 评论 -
Hadoop详解(六):MapReduce计算框架详解
1. Hadoop MapReduce简介Hadoop MapReduce是一个使用简便的软件框架,是Google云计算模型MapReduce的Java开源实现,基于它写出来的应用程序能够运行在由上千万台普通机器注册的大型集群系统中,并以一种可靠地、容错的方式并行处理上T级别的数据集。Hadoop MapReduce基本思想:一个MapReduce作业通常会把输入的数据集合切分为若干独立的数据...原创 2019-01-27 13:34:16 · 4175 阅读 · 0 评论 -
Hadoop详解(四):HDFS shell操作和Java API操作
1. HDFS环境准备1.1 HDFS的格式化与启动HDFS配置完之后就可以对其进行格式化操作。在NameNode所在机器上执行如下命令进行HDFS的格式化操作:hadoop namenode --format在完成hdfs的格式化之后,就可以开始启动HDFS系统了,执行如下命令启动HDFS:bin/start-dfs.sh1.2. HDFS运行检查用户可以使用HDFS的管理...原创 2019-01-21 21:00:14 · 2673 阅读 · 0 评论 -
Hadoop详解(二):HDFS存储系统设计原理
1. 基本概念1.1 NameNodeHDFS采用Master/Slave架构。NameNode就是HDFS的Master架构。HDFS系统包括一个NameNode组件,主要负责HDFS文件系统的管理工作,具体包括名称空间(namespace)管理,文件Block管理。NameNode提供的是始终被动接收服务的server,主要有三类协议接口:ClientProtocol接口,提供给客户...原创 2019-01-21 19:14:38 · 1690 阅读 · 0 评论 -
Hadoop详解(三):HDFS完全分布式环境搭建
1. 前言本文搭建了一个由三节点(master、slave1、slave2)构成的Hadoop完全分布式集群,并通过Hadoop分布式计算的一个示例测试集群的正确性。2. 基础集群的搭建目的:获得一个可以互相通信的三节点集群使用VMware安装master节点(稍后其他两个节点可以通过复制master节点的虚拟机文件创建)。三个节点存储均为30G默认安装,master节点内存大小为1GB...原创 2019-01-21 16:47:59 · 781 阅读 · 0 评论