恢复HDFS误删数据
摘要:【恢复HDFS误删数据】 HDFS会为每一个用户创建一个回收站目录:/user/用户名/.Trash/,每一个被用户通过Shell删除的文件/目录,在系统回收站中都一个周期,也就是当系统回收站中的文件/目录在一段时间之后没有被用户回复的话,HDFS就会自动的把这个文件/目录彻底删除,之后,用户就永远也找不回这个文件/目录了。 根据上面的介绍,用户通过命令行即HDFS的shell命令删除某个文件,这个文件并没有立刻从HDFS中删除。相反,HDFS将这个文件重命名,并转移到操作用户的回收站目录中(如/user/hdfs/.Trash/Current, 其中hdfs是操作的用户名)。如果用户的回..
阅读全文
BloomFilter
摘要:[BloomFilter] 错误率估计、最优哗哈希函数个数、位数组的大小 尚未细看。以看补上。 参考:http://blog.csdn.net/jiaomeng/article/details/1495500
阅读全文
Hadoop Pipes
摘要:【Hadoop Pipes】 1、MapContext的getInputSplit()可以用于获取当前mapper所对象的文件路经,也就是Pipes中,没有InputSplit接口/对象。 2、在Pipes中,不需要也没法自实现InputFormat及InputSplit。我们所能做的只有,实现一个RecordReader(用以把自己定义文件数据转换成为Key&value),需要在构造函数中根据MapContext获取文件名(路径),然后打开读取,并实现RecordReader接口。 注意: 1)TextInputFormatis the defaultInputFormat. 2).
阅读全文
Hadoop Streaming:aggregate
摘要:【Hadoop Streaming:aggregate】 1、实例1 测试文件test.txt mapper程序: 运行: $hadoop streaming -input /app/test.txt -output /app/test -mapper ./mapper-reducer aggregate-file mapper -jobconf mapred.reduce.tasks=1 -jobconf mapre.job.name="test" 输出: a 142 b 20 c 30 d 16 参考:http://blog.csdn.net/yfkiss/ar...
阅读全文
启动JAR Hadoop任务
摘要:【启动JAR Hadoop任务】 一般情况下,我们会使用下面的命令来运行一个hadoop任务: 这个命令实际上是转化成下面的命令来运行的 在RunJar中,会读取abc.jar文件,然后尝试从manifest中提取"Main-Class"作为mainClass,如果manifest中没有指定,则把abc.jar之后的下一个参数当成mainClass。 参考:http://blog.iamzsx.me/show.html?id=185002
阅读全文
MapReduce Notes
摘要:【MapReduce Notes】 1、一个Map/Reduce 作业的输入和输出类型如下所示: 2、Shuffle & Sort &Secondary Sort Reducer的输入就是Mapper已经排好序的输出。在这个阶段,框架通过HTTP为每个Reducer获得所有Mapper输出中与之相关的分块。 框架将按照key的值对Reducer的输入进行分组 (因为不同mapper的输出中可能会有相同的key)。Shuffle和Sort两个阶段是同时进行的;map的输出也是一边被取回一边被合并的。 如果需要中间过程对key的分组规则和reduce前对key的分组规则不同,那么可
阅读全文
HDFS Architecture Notes
摘要:【HDFS Architecture Notes】 1、Moving Computation is Cheaper than Moving Data A computation requested by an application is much more efficient if it is executed near the data it operates on. This is especially true when the size of the data set is huge. This minimizes network congestion and increases .
阅读全文
HDFS设计理念
摘要:[HDFS设计理念]1. 读取整个数据集的时间延迟比读取第一条记录的延迟更重要. 2. HDFS以高延迟为代价,要求低时间延迟数据访问的应用,不适合在HDFS上运行.3. namenode决定了集群的容量.4. HDFS中的文件只支持单写入者,仅支持在尾部写入.
阅读全文
mapreduce of hadoop
摘要:[mapreduce of hadoop] 1. MapReduce作业(Job)是客户端想要执行的一个作单元, 它包括: 输入数据, MapReduce程序, 配置信息. 2. Hadoop将作业成若干个小任务来执行其中包括类任务: map任务, reduce任务. 3. tracker: 4. 输入分片 5. 数据本地化优化 6. reduce 7. 多个reduce
阅读全文
JobTracker和TaskTracker
摘要:[JobTracker和TaskTracker] 1、JobTracker 对应于 NameNode,TaskTracker 对应于 DataNode。 2、JobTracker是一个master服务,软件启动之后JobTracker接收Job,负责调度Job的每一个子任务task运行于TaskTracker上,并监控它们,如果发现有失败的task就重新运行它。一般情况应该把JobTracker部署在单独的机器上。 参考:http://blog.sina.com.cn/s/blog_4fb88d6c0100z25m.html
阅读全文
MapReduce
摘要:[MapReduce] 1、Google三宝:分别是03年SOSP的GFS,04年OSDI的MapReduce,和06年OSDI的BigTable 2、Hadoop实际上就是谷歌三宝的开源实现,Hadoop MapReduce对应Google MapReduce,HBase对应BigTable,HDFS对应GFS。HDFS(或GFS)为上层提供高效的非结构化存储服务,HBase(或BigTable)是提供结构化数据服务的分布式数据库,Hadoop MapReduce(或Google MapReduce)是一种并行计算的编程模型,用于作业调度。 3、什么是MapReduce? 如果我想统计下过.
阅读全文