Hadoop概述

为什么80%的码农都做不了架构师?>>> hot3.png

一:Hadoop的相关概念 1、Hadoop是一个基于java语言的MapReduce框架。 2、Hadoop的改进: a、Hadoop Streaming--任何命令行脚本都可以通过Streaming调用MapReduce框架。 b、Hadoop Hive:Apache Hive可以把海量数据集放入数据仓库中,用户可以编写类似SQL语句的Hive查询语句来查找数据,Hive引擎把Hive查询语句透明的转换为底层MapReduce任务来执行,高级用户可以使用Java语言来编写用户自定义函数(UDF)。Hive也支持标准的ODBC、JDBC数据库驱动。Hive还可以用来开发商业智能分析程序去处理分析存放在Hadoop中的数据。 c、Pig:过程性语言,是一种探索大规模数据集的脚本语言。用于描述数据流的语言,称为 Pig latin. d、HBse:一个在HDFS上开发的面向列的分布式数据,可以实时的随机访问超大规模数据集。粗体 3、刚开始的时候,Hadoop系统只能做到用户提交任务之后,以先进先出的模式在集群上执行任务。为了解决这样的问题,Hadoop中出现了更加复杂的任务调度器:公平调度器,计算能力调度器。 4、Hadoop 2.x 相较于 1.x解决了扩展性问题。 二:MapReduce编程模型简介 5、MapReduce模型有两个彼此独立的步骤,这两个步骤都是可以配置并需要用户在程序中自定义。 Map:数据初始读取和转换步骤,在这个步骤中,每个独立的输入数据记录都进行并行处理。 Reduce:一个数据整合或者加和的步骤。在这个步骤中,相关联的所有数据记录都要放在一个计算节点来处理。 6、Hadoop系统中的MapReduce核心思路: a、将输入的数据在逻辑上分割成多个数据块,每个逻辑数据块被Map任务单独处理。 b、数据块处理后所得结果会被划分到不同的数据集,且将数据集排序完成。 c、每个经过排序的数据集传输到Reduce任务进行处理。 7、一个Map任务可以在集群的任何节点上运行,多个Map任务可以并行的运行在集群上。Map任务的主要作用是把输入的数据记录转换为一个个键值对。所有Map任务的输出数据都会进行分区,并且将每个分区的数据排序。每个分区对应一个Reduce任务。 三:Hadoop系统的组成 8、Hadoop 1.x守护进程 a、名称节点(NameNode):维护存储在HDFS上的所有文件的元数据。 b、数据节点(DateNode):把真正的数据块存放在本地硬盘上,这些数据块组成了保存在HDFS上的每个文件。 c、作业跟踪器(JobTracker):负责一个任务的整个执行过程。调度各个子任务到各自的计算节点运行,时刻监控任务运行和计算节点的健康情况,对失败的子任务进行重新调度。 d、任务跟踪器(TaskTracker):运行在各个数据节点上,用来启动和管理各个Map/Reduce任务,与作业跟踪器进行通信。 9、Hadoop系统任务分工(1.x): 主节点(Master):NameNode/Secondary NameNode/JobTracker 从节点(Save):DateNode/TaskTracker 10、HDFS系统提供一个统一的文件系统命名空间,用户就像使用一个文件系统一样来存取集群节点上的数据。

11、Hadoop文件的本质是块存储,有3个备份,存储在数据节点上。 12、Hadoop借助一个单独配置的网络拓扑文件实现机架感知能力,这个网络拓扑文件配置了机架到计算节点的域名(DNS)名称之间的映射。 13、名称节点上的关键文件: a、fsimage:保存了最近的一次检查点的HDFS系统元数据的持久化状态信息。 b、edits:保存了最近的一次检查点之后到现在的HDFS系统元数据的状态变化信息。 c、fstime:保存了最近一次检查点的时间戳。 14、任务跟踪器(TaskTracker):接收MapReduce和shuffle这些操作任务的请求,任务跟踪器接受到一个来自作业跟踪器的请求之后,就会启动一个任务,任务跟踪器会为这个任务初始化一个新的JVM。 15、作业跟踪器(JobTracker):启动和监控MapReduce作业。 四:Hadoop 2.x (YARN): 16、组成:全局资源管理器,节点管理器,针对每种应用程序的应用程序管理器,调度器,容器 17、一部分CPU内核和一部分内存构成了一个容器。一个应用程序运行在一个容器内,应用程序管理器的一个实例会向全局资源管理器请求获取资源。调度器会通过每个节点的节点管理器来分配资源(容器)。节点管理器会向全局资源管理器汇报每个容器的使用情况。 18、集群节点与容器之间的关系是:一个节点可以运行多个容器,但一个容器只能运行在一个节点之内。 19、Hadoop 2.x 解决了原先只能使用MapReduce框架的问题,现在可以在2.x系统上运行更多的框架。

转载于:https://my.oschina.net/likeai34/blog/674918

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/261308.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql connection是什么_记一次MySQL出现too many connection

今天中午的时候突然接到报警,MySQL连接数暴增..本来设置的max_conntion6000, 这个数值连接已经够用.接到报警速度连接服务器连接mysql总是报如下错误:[mysqllocalhost ~]$ mysql -u xxxxx -pxxxxxxxxERROR 1040 (HY000): Too many connections本来打算kill杀掉重启搞定解决..但…

WHU 1470 Join in tasks 水题

http://acm.whu.edu.cn/land/problem/detail?problem_id1470 大概是给你一个队列,每次移动队头的数到队尾并减1,如果本身这个数为1就删去. 然后ans 这个数 * (队列长度-1),求最小的ans 只要最小的元素最先删除就能保证结果最小 解法: 先对原数列排序 然后模拟原操作 ...但是…

WebGL起步

本系列文章翻译自:https://developer.mozilla.org/en/WebGL 本文地址:https://developer.mozilla.org/en/WebGL/Getting_started_with_WebGL 翻译说明:水平有限并且不会逐字逐句翻译,只保证符合原文意思。 对于支持WebGL的浏览器来…

神奇的expect

想写自动化脚本的时候,遇到需要交互的,如ssh,scp,就束手无策,直到我知道了expect。 expect 有一系列expect-send对组成,就像聊天一样。 expect A send B expect C send D 先来个例子 #!/usr/bin/expect se…

mysql explain语句_Mysql explain 语句详解

explain 语句详解explain 写在 select 前,如下mysql> explain select * from user_info where id 2\G*************************** 1. row ***************************id: 1select_type: SIMPLEtable: user_infopartitions: NULLtype: constpossible_keys: PRI…

TF-IDF理解及其Java实现

TF-IDF 前言 前段时间,又具体看了自己以前整理的TF-IDF,这里把它发布在博客上,知识就是需要不断的重复的,否则就感觉生疏了。 TF-IDF理解 TF-IDF(term frequency–inverse document frequency)是一种用于资…

结合file和iconv命令转换文件的字符编码类型

http://hi.baidu.com/netwrom/blog/item/8885f31ef0d09ae7e1fe0b1c.html在很多类unix平台上都有一个iconv工具,可以用来转换字符编码;而对于普通的文本文件,file命令可以用来检测某个文件的字符编码类型,结合两者就可以非常方便地…

PostgreSQL 9.2迁移到9.3

Netkiller PostgreSQL 手札 Mr. Neo Chan, 陈景峰(BG7NYT) 中国广东省深圳市龙华新区民治街道溪山美地51813186 1311366889086 755 29812080<netkillermsn.com> 文档始创于2012-11-16 版权 © 2010, 2011, 2012, 2013 Netkiller(Neo Chan). All rights reserved. 版…

mysql no listenter_为什么mysql中用\G表示按列方式显示

关于mysql的错误 - no query specified学习了&#xff1a;http://blog.csdn.net/tenfyguo/article/details/7566941sql语句可以用分号或者\G来结尾&#xff1b;出现这个错误一般是分号多写了&#xff1b;学习了&#xff1a;http://blog.csdn.net/guoqianqian5812/article/detai…

C#原型模式之深复制实现

SYSTEM空间有ICONEALBE接口。。。因为其太常用。 1 /*2 * Created by SharpDevelop.3 * User: home4 * Date: 2013/4/215 * Time: 22:206 * 7 * To change this template use Tools | Options | Coding | Edit Standard Headers.8 */9 using System;10 11 namespace Res…

old header

海纳百川 山不拒土 No Backspace in Real Life. Love Life!【Cloud】【LBS】【GIS】【GPS】【MAPS】【C】【Java】转载于:https://www.cnblogs.com/yqskj/p/3293340.html

python flask框架教程_Flask框架从入门到实战

Flask简介&#xff1a;Flask是一个使用 Python 编写的轻量级 Web 应用框架&#xff0c;基于 WerkzeugWSGI工具箱和 Jinja2模板引擎。使用 BSD 授权。Flask也被称为 “microframework” &#xff0c;因为它使用简单的核心&#xff0c;用 extension 增加其他功能。Flask没有默认使…

js 中英文字符串长度

<script language"javascript"> //判断中英文&#xff1a; function isChinese(str) { var lst /[u00-uFF]/; return !lst.test(str); } if(isChinese("名字")) alert("Yes"); else alert("NO"); </script>…

【COCOS CREATOR 系列教程之二】脚本开发篇事件监听、常用函数等示例整合

本站文章均为 李华明Himi 原创,转载务必在明显处注明&#xff1a; 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/cocos-creator/1959.html【Cocos Creator 】(千人群):432818031 上一篇&#xff0c;介绍了Himi在使用过cc所有组件后的一篇总结&#xff0c;没有…

iphone开发中数据持久化之——属性列表序列化(一)

数据持久化是应用程序开发过程中的一个基本问题&#xff0c;对应用程序中的数据进行持久化存储&#xff0c;有多重不同的形式。本系列文章将介绍在iphone开发过程中数据持久化的三种主要形式&#xff0c;分别是属性列表序列号、对象归档化以及iphone的嵌入式关系数据库SQLite。…

python多个变量与字符串判断_python怎么判断变量是否为字符串

在python中怎么连接变量和字符串&#xff1f;我真的懂你不是喜新厌旧只是我没能在你寂寞的时候伴你左右假设你的变量也是str类型 直接用号就可以a"test"connecta"teststr"也可以使用%s connect"%s teststr"%a Python是一种面向对象、直译式计算机…

对话jQuery之父John Resig:JavaScript的开发之路

在参加完CSDN组织的TUP对话大师系列演讲活动后&#xff0c;27岁的jQuery之父John Resig接受了本刊总编刘江的深度访谈&#xff0c;这篇对话文章&#xff0c;让我们一窥这位著名程序员的人生及技术感悟。 编程初体验 《程序员》&#xff1a;你是如何开始编程的&#xff1f; John…

互联网产品研发的典型流程

这张图是互联网产品研发的一种最佳实践&#xff0c;这张图中没有包含异常流的处理。通常异常出现在进入开发甚至测试阶段了还在变更需求&#xff0c;进入封版发版阶段了还在修改代码&#xff0c;所以在这两个时间点都有需求冻结和代码冻结。 转载于:https://www.cnblogs.com/mo…

智力杠杆

智力杠杆是我在车上看一本财经书时从金融杠杆联想到的; 言归正传&#xff0c;先从金融杠杆开始: 金融杠杆 金融杠杆(leverage)简单地说来就是一个乘号&#xff08;*&#xff09;。 使用这个工具&#xff0c;可以放大投资的结果&#xff0c;无论最终的结果是收益还是损失&#…

vscode 预览图片 插件_真的动手写的VSCode的插件(图片浏览)之1

由于本职工作中经常做图像处理&#xff0c;于时大量的图片浏览是不可避免的。怎么样不离开最近经常使用的VSCode&#xff0c;同时去看大量的图像对我来讲就是个不错的需求&#xff0c;尤其是某个目录下的文件。先谈基本的需求吧&#xff0c;显示一个目标下的所有图像&#xff0…