草庐IT

java - hadoop 中用于映射器和组合器的不同上下文类型

您好,我正在尝试实现javahadoop应用程序。我想制作的映射器(因此映射器的输出将是NaicsAreaPair作为键,LongWritable作为值)。然后我需要Combiner像这样输入与映射器输出是正确的,但组合器输出与映射器输出不同。我在主类中有这个配置:publicstaticvoidmain(String[]args)throwsException{Configurationconf=newConfiguration();Jobjob=Job.getInstance(conf,"NYstatistics");job.setJarByClass(NYStatisticsOw

sql - 如何在 Hive SQL 中将与时间相关的事件组合在一起

我有一个看起来像这个代表性数据集的数据集(它是来自thisquery的结果集):time2012-02-0123:43:16.9088243结果包含数百万行,所以现在我们需要一种方法来细化它,以便我们可以对其进行分析。如果你注意到,上面示例的前三行彼此相差在千分之一秒以内,但接下来的三行相隔十分之一秒,接下来的三行也相隔千分之一秒十分之一秒。我添加了空白行(不在原始数据中)来说明这一点。我需要一个查询来识别那些与前一个时间戳相差超过千分之一秒的时间戳。结果输出(假设第一组三个也是十分之一秒第二个远离前一个)将是:2012-02-0123:43:16.90882432012-02-012

configuration - Hadoop 配置 - 映射器/组合器是否受 io.sort.factor 和 io.sort.mb 影响?

如果我修改io.sort.factor和io.sort.mb,在map端发生的本地排序是否使用这些变量,或者它们是否仅由在reducer端完成的排序使用? 最佳答案 是的,它们也用在map端(不管你有没有组合器):MapTask.javaio.sort.factor-第1695行io.sort.mb-第932-944行 关于configuration-Hadoop配置-映射器/组合器是否受io.sort.factor和io.sort.mb影响?,我们在StackOverflow上找到一个

java - Hadoop 如何拆分和组合其输出数据?

我认为我的问题最好用一个例子来解释。假设您要将图像存储在HDFS上。该图像足够大,可以在HDFS上拆分为四个独立的较小文件。当您执行返回该图像的操作时,Hadoop会返回那4个可以组合回原始图像的小文件吗?还是Hadoop会自动将这4个小文件重新组合成原来的样子?谢谢! 最佳答案 Hadoop分布式文件系统(HDFS)将每个文件存储在一个或多个block中(每个block被复制一次或多次)。对于每个文件,您可以配置文件block大小和复制因子(如果未提供,则使用默认值)。当您执行任何基于文件的操作时,您正在处理数据流,名称节点是将文

hadoop - 基于字段组合元组?

假设我有这样的结构{1001,{{id=1001,count=20,key=a},{id=1001,count=30,key=b}}}{1002,{{id=1002,count=40,key=a},{id=1001,count=50,key=b}}}我想把它变成{id=1001,a=20,b=30}{id=1002,a=40,b=50}我可以使用哪些Pig命令来执行此操作? 最佳答案 不确定您的起始关系的确切格式是什么,但对我来说它看起来像(int,bag:{tuple:(int,int,chararray)})?如果是这样,这应该

hadoop - 实时数据集成 Kafka、Hadoop、Avro、HDFS是如何组合在一起的,数据集成有哪些架构

我正在尝试了解实时数据集成的架构以及所有部分如何组合在一起。我尝试在互联网上进行研究,但找不到好的资源。谁能解释一下如何使用例如hadoopkafka和其他组件进行实时数据集成。如果可能,您能否提供使用实时数据集成的位置。任何用例。如果您知道任何资源/教程,如果您分享它们,我将非常高兴提前致谢 最佳答案 如果我可以谦虚地提供我在这方面所做的两次谈话。从概念上讲,关于实时集成我们可以做些什么以及为什么这样做:https://talks.rmoff.net/said0W/the-changing-face-of-etl-event-dr

java - 用于文本的 Hadoop 组合器类

我仍在尝试获得关于何时使用Hadoop组合器类的直觉(我看过几篇文章,但它们对我的情况没有特别帮助)。我的问题是,当pair的值为Text类时,使用组合器类是否合适?例如,假设我们有来自映射器的以下输出:fruitapplefruitorangefruitbanana...veggiecarrotveggiecelery...我们可以在这里应用一个组合器类吗:fruitappleorangebanana...veggiecarrotcelery...甚至在它到达reducer之前? 最佳答案 组合器通常适用于对数据执行某种形式的聚合

Java + Hadoop + NoSql(使用什么组合)

我是新手,我的要求如下:我想处理带有电影评级(文本格式)的庞大文本数据集,并将它们存储在一些NoSQL数据库中,然后进行一些处理并推荐给定一部特定电影的电影。所以我需要速度-我认为Hadoop会在这方面帮助我,而将数据保存在NoSQL数据库中会进一步帮助提高速度。我想知道其他一些方法是否广为人知以及Java使用了哪些组合谢谢 最佳答案 有多大才算大?您可能想查看ApacheMahout.它具有非常有效的数据结构,正是为了这个目的——为协同过滤算法存储和处理稀疏数据。它将在中等规模的机器上处理大约1000万个评级的数据集+如果您的数据

hadoop - 在 hadoop streaming mapreduce 中使用组合器(使用 mrjob)

当我学习mapreduce时,其中一个关键组件是组合器。它是映射器和缩减器之间的一个步骤,本质上是在映射阶段结束时运行缩减器,以减少映射器输出的数据行数。随着我需要处理的数据量的增加(数TB规模),reduce步骤变得异常缓慢。我和我的一个friend谈过,他说这也是他的经验,他没有使用组合器,而是使用散列函数对其reduce键进行分区,该函数减少了reduce步骤中每个键的值数量.我试过了,它奏效了。有没有其他人有过组合器步骤不能很好地扩展的经验,为什么我找不到这个问题的任何文档以及解决方法?如果有办法使组合器步进缩放,我宁愿不使用解决方法。[编辑]这是我friend建议的解决方法的

java - MapReduce 中的函数组合

假设我们有2个文件f1和f2,它们的键值对表示数学意义上的函数。使用MapReduce找到它们的组合的最简单方法是什么?什么是最有效的方法?例如,给定:f1a->bx->ys->tf2b->ct->rf1.f2(compositionoff1andf2)wouldbea->cs->r 最佳答案 将f1反转为f1'同时对f1'和f2进行映射缩减。对于f2中的每个x->v2,以及对于f1'中的所有x->k1(如果有的话)),输出k1->v2。这仅在f1具有相当大的范围时才有效。如果太多的k1映射到同一个v1,那么对应的mapworker