Hadoop中一些重要概念简要总结
Hadoop是一个利用大规模计算机集群,可处理大量数据的分布式并行框架。
Hadoop 官网
Hadoop的核心设计包括HDFS和MapReduce。
HDFS
HDFS(Hadoop Distributed File System)是一种分布式文件系统。
主要特点:1.高容错性;2.高吞吐量访问;3.线性扩展(扩充容量只是增加DataNode数量,可在不停止系统的情况下做扩展)
HDFS架构图:

一篇优秀的介绍HDFS原理的blog:HDFS的运行原理
MapReduce
MapReduce是一种分布式计算框架,被用于并行计算海量数据。其核心步骤包括Map(任务处理)和Reduce(结果汇总)两部分。

上图来自知乎用户流通回答。用于海量处理的计算机分为两种,一种是Master,负责调度;另一种是Worker,包括Map和Reduce,Map将数据处理完毕后,将结果传送给Reduce汇总,如上图。
Pig
Pig是构建在MapReduce之上的一种SQL-like的高级查询语言。
Hive
Hive是构建在Hadoop集群之上的数据仓库应用,可以将结构化的数据文件映射为一张数据库表,其提供了SQL-like的HQL作为数据访问接口。

介绍Hive的一篇blog:hive介绍
Mahout
Mahout是一个分布式机器学习算法集合。包括分布式协调过滤的实现,分类和聚类等。是一种很强大的数据挖掘工具。
介绍Mahout的blog:Mahout学习
HBase
HBase是一种构建在HDFS之上的分布式、面向列的key-value存储系统(可以称为key-value数据库)。用于解决Hadoop只能批量处理,并且以顺序方式访问数据的问题。HBase提供快速随机访问海量结构化数据。
HBase教程
Sqoop
Sqoop是一种用于Hadoop与传统数据库(如Mysql)之间进行数据传递的工具。
Flume
Flume,日志系统,是一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统。
Chukwa
类似于Flume,另一种Hadoop日志系统。有篇blog比较了hadoop的一些日志系统:开源日志系统比较:scribe、chukwa、kafka、flume
Hadoop中一些重要概念简要总结的更多相关文章
- Hadoop中的各种排序
本篇博客是金子在学习hadoop过程中的笔记的整理,不论看别人写的怎么好,还是自己边学边做笔记最好了. 1:shuffle阶段的排序(部分排序) shuffle阶段的排序可以理解成两部分,一个是对sp ...
- hadoop中Text类 与 java中String类的区别
hadoop 中 的Text类与java中的String类感觉上用法是相似的,但两者在编码格式和访问方式上还是有些差别的,要说明这个问题,首先得了解几个概念: 字符集: 是一个系统支持的所有抽象字符的 ...
- python 中面向对象的概念
原文 域和作用空间 本地域,函数域(nonlocal)和 全局域(global) def scope_test(): def do_local(): spam = "local spam&q ...
- Hadoop中Writable类之二
1.ASCII.Unicode.UFT-8 在看Text类型的时候,里面出现了上面三种编码,先看看这三种编码: ASCII是基于拉丁字母的一套电脑编码系统.它主要用于显示现代英语和其他西欧语言.它是现 ...
- 浅析 Hadoop 中的数据倾斜
转自:http://my.oschina.net/leejun2005/blog/100922 最近几次被问到关于数据倾斜的问题,这里找了些资料也结合一些自己的理解. 在并行计算中我们总希望分配的每一 ...
- 在HADOOP中使用MRUNIT进行单元测试
在HADOOP中使用MRUNIT进行单元测试 前提 1. 了解JUnit4.x的使用. 2. 了解Mock的概念在单元测试中的应用. 3. 了解Hadoop中MapReduce的编程模型. 如果您对J ...
- Hadoop 中HDFS、MapReduce体系结构
在网络环境方面,作为分布式系统,Hadoop基于TCP/IP进行节点间的通信和传输. 在数据传输方面,广泛应用HTTP实现. 在监控.通知方面,Hadoop等分布式大数据软件则广泛使用异步消息队列等机 ...
- Hadoop 中利用 mapreduce 读写 mysql 数据
Hadoop 中利用 mapreduce 读写 mysql 数据 有时候我们在项目中会遇到输入结果集很大,但是输出结果很小,比如一些 pv.uv 数据,然后为了实时查询的需求,或者一些 OLAP ...
- WebLogic 中的基本概念
完全引用自: WebLogic 中的基本概念 WebLogic 中的基本概念 上周参加了单位组织的WebLogic培训,为了便于自己记忆,培训后,整理梳理了一些WebLogic的资料,会陆续的发出来, ...
随机推荐
- scala读写文件 comparing values of types Unit and Int using `!=' will always yield true
由于scala没有对写入文件的支持,所以写文件时通常借助java进行IO操作 //方式一(小文件) /* val s1 = Source.fromFile("D:\\inputword\\h ...
- 【BZOJ 1017】 [JSOI2008]魔兽地图DotR
[题目链接]:http://www.lydsy.com/JudgeOnline/problem.php?id=1017 [题意] [题解] 设f[i][j][k] 表示第i个节点以下的总花费为j, 然 ...
- 编程算法 - 背包问题(三种动态规划) 代码(C)
背包问题(三种动态规划) 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 题目參考: http://blog.csdn.net/caroline_wen ...
- WPF 等距布局
原文:WPF 等距布局 本文告诉大家如何使用 WPF 的自定义布局做等距布局. 实际做的效果很简单,因为在开发我容易就用到了等距的控件.等距控件就是在指定的宽度下,平均把控件放在水平的地方,这样相等于 ...
- Diffie-Hellman Key Exchange – A Non-Mathematician’s Explanation
The Complete Diffie-Hellman Key Exchange Diagram The process begins when each side of the communicat ...
- 强大的 pdf 编辑器 —— Acrobat
菜单栏中的 [编辑](Edit)⇒ [编辑文本和图像](Edit Text & Images) 可以随意地编辑当前 pdf 中的文本信息,和图像信息: pdf 格式的转换,更是不在话下. 转 ...
- Linux经常使用的命令(21) - find参数具体解释
一.使用name选项: 文件名称选项是find命令最经常使用的选项.要么单独使用该选项,要么和其它选项一起使用. 能够使用某种文件名称模式来匹配文件,记住要用引號将文件名称模式引起来. 无论当前路 ...
- oracle授权grant
alter any cluster 修改任意簇的权限 alter any index 修改任意索引的权限 alter any role 修改任意角色的权限 alter any sequence 修改任 ...
- 向西项目管理工具Git一片
前言 Git 这个词相信大家并不陌生,做开发的童鞋们每天都离不开它.当然,假设你的项目中没实用到分布式,那么,你可能从未用过 Git,当然也可能没听过.只是,这不是重点,重点是这一篇文章,我们将一起谈 ...
- AvalonDock的基本用法
原文:AvalonDock的基本用法 AvalonDock是优秀的开源项目,用于创建可停靠式布局,能够在WPF中方便开发出类似VS2010的软件界面.对于复杂的软件系统,大量控件的使用 ...