`
zhaohuafei
  • 浏览: 26860 次
文章分类
社区版块
存档分类
最新评论
文章列表
Mapreduce 包 你需从发布页面获得MapReduce tar包。若不能,你要将源码打成tar包。 $ mvn clean install -DskipTests $ cd hadoop-mapreduce-project $ mvn clean install assembly:assembly -Pnative 注意:你需要安装有protoc 2.5.0。忽略本地建立mapreduce,你可以在maven中省略-Pnative参数。tar包应该在target/directory。
学习Hadoop也有一段时间了。起先从Hadoop-1.2.1开始,略会写点MapReduce,还是想要跟上Hadoop发展的步伐,虽说现在官方已经发布2.4.0版本了,但是稳定版还是2.2.0。在机器上跑了一下,发现2.x比起1.x,变化还是很大的,更加模块化了。决定从官网的文档开始入手,现在也略有些时间,就一边学习一边将其翻译成中文好了,不过英文比较烂。大概每天翻译一节吧。 ----------------------------------------------------------------------------------------------- Apache H ...
可以用bin/hadoop fs -ls 来读取HDFS某一目录下的文件列表及属性信息。 也可以采用HDFS的API来读取。如下:import java.net.URI; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.fs.FileStatus; import org.apache.hadoop.fs.FileUtil; public class ...
可以用bin/hadoop fs -ls 来读取HDFS上的文件属性信息。 也可以采用HDFS的API来读取。如下: import java.net.URI; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.fs.FileStatus; public class FileInfo { public static void main(String[] ...
用这个命令bin/hadoop fs -cat 可以将HDFS上的文件内容读取到控制台。 也可以采用HDFS的API来读取。如下: import java.net.URI; import java.io.InputStream; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.IOUtils; public class FileCat { ...
用命令行bin/hadoop fs -rm(r) 可以删除hdfs上的文件(夹) 用HDFS的API也是可以的。如下: import java.net.URI; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; public class FileDelete { public static void main(String[] args) throws Exception { if(args ...
下面两个命令是把文件从HDFS上下载到本地的命令。 get 使用方法:hadoop fs -get [-ignorecrc] [-crc] <src> <localdst> 复制文件到本地文件系统。可用-ignorecrc选项复制CRC校验失败的文件。使用-crc选项复制文件以及CRC信息。 示例: hadoop fs -get /user/hadoop/file localfile hadoop fs -get hdfs://host:port/user/hadoop/file localfile 返回值:
在Hadoop中用作文件操作的主类位于org.apache.hadoop.fs包中。基本的文件操作有open、read、write和close。实际上,Hadoop的文件API是通用的,可用于HDFS以外的文件系统。 Hadoop文件API的起点是FileSystem类,这是一个与文件系统交互的抽象类,存在不同的具体实现子类来处理HDFS和本地文件系统,可以通过调用factory方法FileSystem.get(Configuration conf)来得到所需的FileSystem实例。Configuration类适用于保留键/值配置参数的特殊类。它的默认实例化方法是以HDFS系统的资源配置为 ...
Bloom Filter:是一个比特数组,表示具有一定误报率的集合。主要优势在于其大小(比特位个数)为常数且在初始化时被设置,增加更多的元素到一个Bloom Filter 中不会增加它的大小,仅增加误报的概率。一般包含两个方法:add(),contains()。 误报率: r = (1-exp(-kn/m))k ,k = ln(2) * (m/n) , r = 0.6185*(m/n) ——k,散列函数个数 ——m,比特个数 ——n,被添加的元素个数 比如,存储一千万条URL的集合(n = 10 000 000),每个URL分配8个比特(m/n = 8),将 ...
发现百度云平台,可以在线执行hadoop MapReduce程序,很欣喜,摸索了一下,可以使用。大概想这才叫做云计算啊,我把计算任务给你,你把计算结果还给我。 首先要有百度账号。 从平台入口进入:http://openresearch.baidu.com/activity/platform.jspx。 会看到如下的界面,其实就是把linux系统的控制台搬到了浏览器上。可用的命令这里已经有了说明。
Hadoop数据类型 为了让键/值对可以在集群上移动,MapReduce框架提供了一种序列化键/值对的方法。因此,只有那些支持这种序列化的类能够在框架中充当键/值。 实现Writable接口的类可以是值; 实现WritableComparable<T>接口的类可以是键/值。 键/值对经常使用的数据类型列表。这些类均用于实现WritableComparable接口。 BooleanWritable 标准布尔变量的封装
//书非借不能读也,今早从图书馆新书阅览室借来《Hadoop in Action》,最长借期7天。整理读书笔记并留下电子版以供以后方便复习。 Hadoop是一个开源的框架,可编写和运行分布式应用处理大规模数据。专为离线处理和大规模数据分析而设计,避免耗时的数据传输问题,适合一次写入,多次读取。 特性:方便、健壮、可扩展、简单。 MapReduce 分为两个阶段:mapping 和 reducing 每阶段定义一个数据处理函数,称为mapper和reducer 在mapping阶段,MapReduce获取输入数据并将数据单元装入mapper 在ruducing阶段,re ...
//书非借不能读也,今早从图书馆新书阅览室借来《Hadoop in Action》,最长借期7天。整理读书笔记并留下电子版以供以后方便复习。 Hadoop是一个开源的框架,可编写和运行分布式应用处理大规模数据。专为离线处理和大规模数据分析而设计,避免耗时的数据传输问题,适合一次写入,多次读取。 特性:方便、健壮、可扩展、简单。 MapReduce 分为两个阶段:mapping 和 reducing 每阶段定义一个数据处理函数,称为mapper和reducer 在mapping阶段,MapReduce获取输入数据并将数据单元装入mapper 在ruducing阶段,re ...
可以分拆成多个函数来做,每个函数计算一种长度的组合。两位数字相加时,只能是1-9之间的数,加上10-19之间的数。以此类推。 package test; public class Sum20 { public static void main(String[] args) { sum2num(); System.out.println("----------------"); sum3num(); System.out.println("----------------"); sum4num(); System.out.p ...
可以分拆成多个函数来做,每个函数计算一种长度的组合。两位数字相加时,只能是1-9之间的数,加上10-19之间的数。以此类推。 package test; public class Sum20 { public static void main(String[] args) { sum2num(); System.out.println("----------------"); sum3num(); System.out.println("----------------"); sum4num(); System.out.p ...
Global site tag (gtag.js) - Google Analytics