
hadoop
fkbush
这个作者很懒,什么都没留下…
展开
-
第一章 遇见hadoop 第一节 数据(hadoop:the definitive guide)
在拓荒时代,人们使用牛来拉重物,当一头牛移不动一根木头时,他们不是努力养一头更大的牛。我们不应该试图创建更大的电脑,而是用更多的计算机系统。翻译 2016-02-23 09:50:41 · 528 阅读 · 0 评论 -
第三章 第二节 HDFS概念
Block(前文翻译的“块”,术语翻译成中文总是感觉很别扭,以后术语还是使用原文) 磁盘有block大小,它是可以读写的最小量的数据。单一磁盘文件系统处理这些block中的数据,它通常是磁盘block大小的整数倍。文件系统的block大小通常是几kb,而磁盘block通常是512b。这对于只是简单读写任意长度文件的文件系统使用者来说是透明的。尽管如此,还是有一些工具来维护文件系翻译 2016-03-25 14:23:22 · 799 阅读 · 0 评论 -
第三章 第三节 命令行接口
我们通过与命令行与HDFS交互来了解它。HDFS还有许多其它接口,但是对开发者来说,命令行是最简单的,也是最熟悉的。 我们将在一台机器上运行HDFS,所以首先根据附录A来搭建HADOOP伪分布式模式。以后我们会看如何在集群上运行HDFS并提供可靠性及容错处理。 在伪分布式的配置中,有两个属性需要我们进一步解释。第一个是fs.defaultFS,设翻译 2016-03-28 09:54:50 · 675 阅读 · 0 评论 -
第三章 第四节 HADOOP文件系统
HADOOP有一个文件系统的抽象概念,HDFS只是它的一个实现。JAVA抽象类org.apache.hadoop.fs.FileSystem表示客户端到HADOOP文件系统的接口,还有其它几个具体实现。HADOOP经常用的如表3-1所示: HADOOP提供了许多文件系统的接口,它经常使用URI来选择正确的文件系统来交互。例如,上一节中我们遇到的操作H翻译 2016-03-28 11:59:35 · 604 阅读 · 0 评论 -
第三章 第七节 使用distcp并行拷贝
到现在为止我们看到的HDFS访问模式都是单线程访问。它可以操作一组文件----例如定义file glob----但是要高效并行处理这些文件,你需要自己写一个程序。HADOOP自带了一个有用的程序叫distcp用来并行拷贝文件到/从HADOOP文件系统。 distcp的一个作用是有效代替hadoop fs -cp。例如,你可以拷贝一个文件到另一文件:% hadoop d翻译 2016-04-11 10:14:19 · 1529 阅读 · 0 评论 -
第四章 YARN 第一节 YARN应用运行分析
Apache YARN(Yet Another Resource Negotiator)是一个HADOOP集群资源管理系统。YARN在HADOOP2中引入,但是它足够通用,也支持其它的分布式计算程序。 YARN提供了用于请求和使用集群资源的API,但是这些API不是直接由用户代码使用的。用户写更高级的由分布式计算框架提供的API,这些框架是建立在YARN之上的,对用户隐藏翻译 2016-04-20 11:03:33 · 953 阅读 · 0 评论 -
第四章 第三节 YARN调度
在理想国度,YARN应用发送的请求可以立即得到响应。在现实世界中,资源是有限的,在一个繁忙的集群上,一个应用经常需要等待它的一些请求处理完成。翻译 2016-05-04 15:50:37 · 3050 阅读 · 0 评论 -
第六章 第二节 建立开发环境
建立MapReduce开发环境翻译 2016-05-12 11:35:30 · 484 阅读 · 0 评论 -
第五章 HADOOP I/0 第一节 数据完整性
HADOOP 数据完整性翻译 2016-05-05 15:16:51 · 904 阅读 · 0 评论 -
使用MRUnit写一个单元测试
MapReduce的map和reduce函数可以很容易的分别测试。MRUnit是一个测试库,可以翻译 2016-05-17 11:31:23 · 894 阅读 · 0 评论 -
第六章 开发一个MapReduce应用 第一节 配置
在第二章中,我们介绍了MapReduce模式。在本章中,我们看看在实际中开发一个MapReduce应用。 写一个MapReduce程序要遵循一个特定的模式。开始时你要写map和reduce函数,最好把单元测试也写上,确保程序做了你想做的。然后你写一个驱动程序来运行一个job,它可以使用数据的一小部分在你的集成开发环境中运行以检查它是否正常工作。如果失败,你需要使用你的翻译 2016-05-09 14:36:18 · 655 阅读 · 0 评论 -
第三章 第六节 数据流
读取文件解析 为了了解客户端与HDFS、namenode、datanode交互的数据流,仔细查看图3-2,它展示了读取文件时的主要事件序列。 客户端通过调用FileSystem对象的open()方法来打开它想读取的文件,对于HDFS来说,它就是一个DisributedFileSystem实例(图3-2的第一步)。DisributedFileSyste翻译 2016-04-08 14:16:37 · 1237 阅读 · 0 评论 -
第三章 第五节 JAVA接口
在这一节中,我们研究HADOOP FileSystem类:与HADOOP文件系统交互的API。尽管我们主要关注的是HDFS实现DistributedFileSystem,通常你应该努力自己写抽象类FileSystem的实现,以在不同文件系统间保持可移植性。这在你测试你的程序时是非常有用的,例如,你可以使用你本地的数据来快速测试。从HADOOP URL读取数据翻译 2016-04-06 14:31:54 · 775 阅读 · 0 评论 -
第三章 HADOOP分布式文件系统 第一节 HDFS设计
当数据过大而不适用于单独一台机器的存储容量时,把它分到许多独立的机器上就很必要了。管理网络计算机存储的文件系统叫分布式文件系统。由于它是基于网络的,所有复杂的网络程序问题接踵而至,使分布式文件系统比普通的硬盘文件系统更复杂。例如,最大的挑战是使文件系统可以处理节点失败而不至于数据丢失。 HADOOP自带了一个分布式文件系统叫HDFS,即HADOOP Distributed F翻译 2016-03-23 10:57:12 · 442 阅读 · 0 评论 -
第一章 遇见HADOOP 第二节 数据存储与分析(hadoop:the definitive guide)
问题很简单:尽管近年来硬盘的存储量已经大量增加,访问速度--从硬盘上读取数据的速度--却没有跟上硬盘容量的增长节奏。1990年一个标准的硬盘可以存储1370MB的数据,传输速度是4.4MB/s,所以你可以在大约5分钟内读取所有数据。20年之后,1TB的硬盘已经很常见了,但是翻译 2016-02-23 11:02:15 · 422 阅读 · 0 评论 -
第一章 遇见HADOOP 第三节 查询你所拥有的所有数据
MapReduce采用的方式看起来很暴力。前提是整个数据集合--至少大部分--可以被查询处理。但是这就是它的能力。MapReduce是一个批处理查询处理器,并且在一个合理的时间内得到查询结果。它改变了你对数据的想象方式,把以前存放在磁带和硬盘上的数据解放出来。他给了人们一个与数据一起创新的机会。 例如,Mailtrust,Rackspace(全球三大云计算中心之一)的邮件部门翻译 2016-02-23 14:17:22 · 378 阅读 · 0 评论 -
Appache hadoop安装(hadoop:the definitive guide 附录A)
在单机上安装Hadoop是非常简单的。(在集群上安装,参见第十章) 在这个附录中,我们将介绍如何使用Apache软件基金会发布的二进制压缩包来安装Hadoop Common,HDFS,MapReduce和YARN。其它项目的安装包含在这本书相关的章节开头部分。 下面的说明适用于基于UNIX的系统,包括MAC OS X(用来开发而不是发布产品的平台)。前提翻译 2016-02-22 15:12:34 · 437 阅读 · 0 评论 -
第一章 遇见HADOOP 第四节 超越批处理(hadoop:the definitive guide)
MapReduce根本上是一个批处理系统,它并不适用于交互式分析。你不可能在几秒或更少的时间内得到查询结果。典型的查询需要耗时几分钟甚至更长,所以它最好是线下使用,不需要一个人坐在那里等循环处理的结果。 尽管如此,由于它的独创性,HADOOP比批处理更好。其实,HADOOP有时候是指一个大的项目生态系统,而不仅仅指HDFS和MapReduce,它们都在分布式计算和大数据处翻译 2016-02-24 09:37:25 · 783 阅读 · 0 评论 -
第二章 第三节 使用HADOOP分析数据
为了利用HADOOP提供的并行处理,我们需要把我们的查询表达成一个MapReduce。在小规模的本地化测试后,我们可以在一个集群上运行它。Map and Reduce MapReduce把处理分成两个阶段:map阶段和reduce阶段。每一阶段都有一个键值对作为输入和输出,键值的类型可以由程序员选择。程序员同时指定两个函数:map函数和reduce函数。map阶段翻译 2016-03-21 16:03:23 · 441 阅读 · 0 评论 -
第二章 第二节 使用UNIX工具分析数据
数据集中在记录的每一年地球上最高的温度是多少?我们先不使用HADOOP来回答这个问题,因为这个信息可以提供效率的底线,也是校验我们的结果的一个有用方法。 处理面向行的数据的经典工具是awk。Example2-2是一个计算每年最高温度的小脚本。翻译 2016-03-21 10:12:40 · 565 阅读 · 0 评论 -
第二章 MapReduce 第一节 气象数据
MapReduce是一个数据处理的编程模型。这个模型很简单,但是以程序表达出来并不是那么简单。HADOOP可以运行各种语文写的Mapreduce程序;本章中,我们研究同样的程序,用Java,Ruby,Python表达。最重要的是,MapReduce本身就是并行的,它把大数据分析转变为任何人有足够可支配的机器。MapReduce在大的数据集方面有它的特长,让我们开始吧。 一份气翻译 2016-02-29 11:09:05 · 849 阅读 · 0 评论 -
第六节 HADOOP发展简史
HADOOP是由Doug Cutting创造的,他也是Lucene的创造者,Lucene是一个广泛使用的文本搜索库。HADOOP由Apache Nutch项目发展而来,Nutch是一个开源的网络搜索引擎,本身是Lucene项目的一部分。 HADOOP名称由来。HADOOP不是组合字,它是一个自创的名称。这个项目的创造者Doug Cutting解释了这个名称是怎么来的:翻译 2016-02-26 10:16:09 · 626 阅读 · 0 评论 -
第一章 第七节 本书包含哪些内容?
本书分为5个主要部分:第一到第三部分主要是关于HADOOP核心,第四部门包括HADOOP生态系统相关的项目,第五部分包含HADOOP案例学习。你可以按顺序阅读本书,也可以跳过不需要读的章节看后面的内容。 第一部分由五章组成,包含了HADOOP的基本组件,应该在后面章节之前阅读。第一章(本章)是概括介绍HADOOP.第二章介绍了MapReduce。第三章是关于HADOOP的翻译 2016-02-26 11:12:12 · 531 阅读 · 1 评论 -
第二章 第四节 扩大规模
我们已经看到MapReduce是如何在小规模输入上工作;现在是时候从总体上看一下这个系统以及大规模输入下的数据流。简单起见,目前为止使用的例子都是使用本地的文件系统。尽管如此,为了扩大规模,我们需要把数据存储在分布式文件系统中(典型的如HDFS,下一章中我们会学习它)。它允许HADOOP把MapReduce计算移到到每一个保存了部分数据的机器上,使用HADOOP资源管理系统,名翻译 2016-03-22 16:39:35 · 413 阅读 · 0 评论 -
使用测试数据在本地运行
现在我们已经有了mapper和reducer,下一步是写一个job驱动并在开发机器上的测试数据上运行它。在本地运行Job 本单第一节中介绍了Tool接口的使用,写一个驱动来运行我们的mapreduce job来找到每一年的最大气温很容易(见例6-10)。import org.apache.hadoop.conf.Configured;import org翻译 2016-05-20 10:38:54 · 621 阅读 · 0 评论