[转]Hadoop MapReduce 二次排序原理及其应用

转载自:《Hadoop MapReduce 二次排序原理及应用》

关于二次排序主要涉及到这么几个东西:

0.20.0以前使用的是

  • setPartitionerClass
  • setOutputkeyComparatorClass
  • setOutputValueGroupingComparator

0.20.0以后使用是

  • job.setPartitionerClass(Partitioner p);
  • job.setSortComparatorClass([......]

    继续阅读

svn add后的数据如何 恢复/取消/还原

转载自:《svn add后的数据如何取消-svn revert??》

有时候你发现svn add后,这个提交的数据又不需要了。这时候需要有svn revert来处理了。

比如

A testcase/perday.php

如何取消呢?

svn revert testcase/perday.php

会出现下面的提示:

已恢复“testcase/perday.php”

说明脚本已经恢复了到原来的状态,不受SVN 版本控制了。

如何恢复整个目录??有[......]

继续阅读

如何在Hadoop中控制map的个数

转载自:如何在hadoop中控制map的个数

hadoop提供了一个设置map个数的参数mapred.map.tasks,我们可以通过这个参数来控制map的个数。但是通过这种方式设置map的个数,并不是每次都有效的。原因是mapred.map.tasks只是一个hadoop的参考数值,最终map的个数,还取决于其他的因素。
为了方便介绍,先来看几个名词:
block_size : hdfs的文件块大小,默认为64M,可以通过参数dfs.block.size设置
total_size[......]

继续阅读

[转载]Hive 窗口函数、分析函数 应用场景

Hive 0.12后,支持了窗口函数、分析函数 (具体见官方wiki)

转载自《HIVE 窗口及分析函数 应用场景》

窗口函数应用场景:

(1)用于分区排序
(2)动态Group By
(3)Top N
(4)累计计算
(5)层次查询

一、分析函数
用于等级、百分点、n分片等。
函数 说明
RANK() 返回数据项在分组中的排名,排名相等会在名次中留下空位
DENSE_RANK() 返回数据项在分组中的排名,排名相等会在名次中不会留下空位
NTILE([......]

继续阅读