谁能解释我在hadoop中如何进行二次排序?
为什么必须使用GroupingComparator它以及它在hadoop中如何工作?
我正在浏览下面给出的链接,并怀疑groupcomapator如何工作.
任何人都可以解释一下分组比较器的工作原理吗?
http://www.bigdataspeak.com/2013/02/hadoop-how-to-do-secondary-sort-on_25.html
嗨,我想知道jobconf和job对象之间的基本区别,目前我正在提交我的工作
JobClient.runJob(jobconf);
Run Code Online (Sandbox Code Playgroud)
我看到了提交这样的工作的其他方式
Configuration conf = getConf();
Job job = new Job(conf, "secondary sort");
job.waitForCompletion(true);
return 0;
Run Code Online (Sandbox Code Playgroud)
如何使用jobconf为作业指定sortcomparator类?
任何人都可以向我解释这个概念吗?
嗨,我想学习如何在hadoop.i中按值排序单词计数.知道hadoop对排序键的排序,而不是值.
我知道要对值进行排序,我们必须有一个分区器,分组比较器和一个排序比较器
但我有点困惑在于将这些概念应用于一起按值排序单词计数.
我们是否需要另一个地图减少作业以实现相同或者组合器来计算出现次数然后在这里排序并将它们发送到减速器?
任何人都可以解释如何按值排序单词计数示例?
我想从unix系统获取一个文件到我的本地系统,这是在Windows上使用java.我对这个概念非常陌生.关于如何做到的任何想法?哪个是最适合此任务的Java API?
嗨,我非常喜欢蜂巢,我已经通过hadoop行动中的桶概念,但未能理解下面的行.任何人都可以帮助我吗?
SELECT avg(viewTime)
FROM page_view TABLESAMPLE(BUCKET 1 OUT OF 32);
Run Code Online (Sandbox Code Playgroud)
TABLESAMPLE的一般语法是TABLESAMPLE(BUCKET x OUT OF y)
查询的样本大小约为1/y.此外,y需要是表创建时为表指定的桶数的倍数或因子.例如,如果我们将y更改为16,则查询变为
SELECT avg(viewTime)
FROM page_view TABLESAMPLE(BUCKET 1 OUT OF 16);
Run Code Online (Sandbox Code Playgroud)
然后,样本大小包括每16个用户中的大约1个(因为桶列是用户ID).该表仍有32个桶,但Hive尝试通过一起处理桶1和17来满足此查询.另一方面,如果y被指定为64,则Hive将对一个桶中的一半数据执行查询.x的值仅用于选择要使用的存储桶.在真正的随机抽样下,它的价值无关紧要.
我有一个叫做Employee实现Comparable接口的类.
现在Employee我的列表中有5个对象,每个对象都有自己的salary属性.我想找到所有Employee具有最高工资的对象.
我可以使用单个对象
Employee employee = Collections.max(employeeList);
Run Code Online (Sandbox Code Playgroud)
但是这只返回一个Employee,而我正在尝试检索具有相同最大值的所有对象的数组或列表.我怎样才能做到这一点?
我现在正在学习分区概念.任何人都可以解释下面的代码.我很难理解
public class TaggedJoiningPartitioner extends Partitioner<TaggedKey,Text> {
@Override
public int getPartition(TaggedKey taggedKey, Text text, int numPartitions) {
return taggedKey.getJoinKey().hashCode() % numPartitions;
}
}
Run Code Online (Sandbox Code Playgroud)
这个taggedKey.getJoinKey().hashCode()%numPartitions如何确定要为密钥执行哪个reducer?
任何人都能解释一下这个吗?
我想知道如何在MongoDB中执行JavaScript文件.
这是我的JS文件中存在的简单代码:
function loadNames() {
print("name");
}
Run Code Online (Sandbox Code Playgroud)
从命令提示符我尝试执行这样的文件
mongo test.js
Run Code Online (Sandbox Code Playgroud)
但它显示错误:
意外标识符
任何人都可以向我解释我哪里出错了?
hadoop ×5
mapreduce ×5
bigdata ×3
java ×2
collections ×1
comparable ×1
hive ×1
javascript ×1
jsch ×1
list ×1
mapper ×1
max ×1
mongodb ×1
nosql ×1
partitioner ×1
reducers ×1
unix ×1
windows ×1