草庐IT

custom-sort

全部标签

hadoop - 配置单元设置 hive.optimize.sort.dynamic.partition

我正在尝试插入具有动态分区的配置单元表。同一查询在过去几天一直运行良好,但现在出现以下错误。DiagnosticMessagesforthisTask:java.lang.RuntimeException:org.apache.hadoop.hive.ql.metadata.HiveException:HiveRuntimeError:Unabletodeserializereduceinputkeyfromx1x128x0x0x46x234x240x192x148x1x68x69x86x50x0x1x128x0x104x118x1x128x0x0x46x234x240x192x148

sorting - 在具有零化简节点的 Mapreduce 中实现简单排序程序时出错

我尝试在mapreduce中实现一个排序程序,以便在map阶段之后我只有排序后的输出,其中排序由hadoop框架在内部完成。为此,我尝试将reducetask的数量设置为零,因为不需要任何减少。现在,当我尝试执行该程序时,我一直在获取校验和错误..我不知道接下来要做什么。当然可以在我的上网本上运行该程序,因为当我将reduce任务设置为一个时,排序工作正常。请帮忙!!以下是我为执行排序而编写的完整代码,供您引用:/**Tochangethistemplate,chooseTools|Templates*andopenthetemplateintheeditor.*//****@auth

sorting - 在向 Hadoop 中的 reducer 发送数据时如何实现负载平衡

我们知道,在hadoop的复制阶段,每个reduceworker进程从所有mapper节点读取数据并对已经排序的数据执行合并(在mapper端的内存排序期间排序)和研究他们的key份额和他们的值(value)。现在,我们也知道,所有对应于一个特定的数据只会去到一个reducer。我的问题是:数据拆分如何传输到reducer,即分区大小是如何决定的,以及它是由什么过程决定的,因为数据是使用拉机制而不是推机制传输的。一个有趣的挑战是确定数据的总体大小,因为数据驻留在多个节点上(我猜作业跟踪器/主进程可能知道所有节点的数据大小和位置,但我也不确定)。如果数据高度倾斜并且其中大部分属于有10个

sorting - 排序(Order by)在Hive中是如何实现的?

我们知道hive在排序作业开始之前不做采样,它只是利用MapReduce的排序机制,在reduce端进行merge-sort,只使用一个reduce,因为reduce收集mapper输出的所有数据在这种情况下,假设一台运行reduce的机器只有100GB的磁盘,如果数据太大而无法放入磁盘怎么办? 最佳答案 Hive的并行排序机制还在开发中,见here.设计良好的数据仓库或数据库应用程序将避免这种全局排序。如果需要,请尝试使用Pig或Terasort(http://hadoop.apache.org/common/docs/curre

sorting - Hadoop 流排序

任何人都可以帮助解决这个hadoop流式排序问题吗?感谢您提前提出任何建议。我是Hadoop新手,需要对500GB制表符分隔的文本文件实现排序功能。下面是一个示例输入,一行中有3个字段,如READA14chr1450989。这里我需要按第2列和第3列进行数字排序,除非我将reducers的数量设置为1,否则我永远不会得到正确的排序结果。示例输入:READA14chr1450989READB18chr18517043READC22chr2288345READD10chr10994183READE19chr19232453READF20chr2042912READF9chr9767396R

sorting - MapReduce 排序迭代器

我正在阅读MapRedcue的源代码,以更深入地了解MapReduce的内部机制。当我试图了解如何合并映射阶段产生的数据并将其发送到减少功能以进行进一步处理时,我遇到了问题。源代码看起来太复杂了,我只想知道它的概念。我想知道的是在传递给reduce()函数之前如何对值(作为参数Iterator)进行排序。在MapTask.runOldReducer()中,它将通过传递RawKeyValueIterator创建ReduceValuesIterator,其中将调用Merger.merge()并执行许多操作(例如收集段)。阅读代码后,在我看来它只尝试按键排序,并且与该键相关的值将被聚合/收集

unit-testing - MR单元 : Tests fail with custom writable

我正在尝试使用MRUnit为我的hadoop作业实现单元测试.对于我自己的Writable,断言在withOutput(K2k2,V2v2)失败。我已经尝试覆盖Object的equals(Objecto)方法,但这没有帮助。当两个Writable实际上相同时,有什么想法可以告诉MRUnit吗? 最佳答案 为了使runTest()成功,必须覆盖inthashCode()。 关于unit-testing-MR单元:Testsfailwithcustomwritable,我们在StackOve

hadoop - 能否自定义 Hadoop 的 Shuffle/Sort(或分区)阶段来执行图形遍历?

我还在学习MapReduce框架,具体由Hadoop实现,我想知道是否可以修改它来执行以下任务:Map()函数将发出(key,value)对,其键是大小为2的数组,比如int[2]。我希望将包含两个共同整数中的任何一个的每一对映射到同一个reducer。例如,如果Map()发出:([2,3],4),([2,4],5),([6,5],2),([5,7],1),那么Reduce1应该接收前两对,Reduce2接收后两对(前两对共享2,后两对共享5)。这可以看作是一个连通分量问题,其中顶点是int[]中的整数,边在同一int[]中的任意两个整数之间共享。 最佳答案

java - Apache 紧缩 : how to create custom counters

我想添加自定义counters到我的ApacheCrunch使用org.apache.hadoop.mapreduce.Reducer.Context.getCounterAPI的作业。有人知道如何从Crunch管道访问上下文吗? 最佳答案 最明显的地方是org.apache.crunch.DoFn#getCounter你猜怎么着?它在那里... 关于java-Apache紧缩:howtocreatecustomcounters,我们在StackOverflow上找到一个类似的问题:

java - 亚马逊电子病历 : Passing java system property to custom jar

AmazonEMR是否允许将系统属性传递给自定义jar,例如hadoopjar-Dkey=valuemyjob.jar?(上面的key,value在应用程序本身的初始化期间使用,而不是属于hadoop的Configuration对象。)相关话题Howtospecifymapredconfigurations&javaoptionswithcustomjarinCLIusingAmazon'sEMR?讨论了仅通过引导操作将系统属性传递给hadoop守护进程的方法,显然,这不允许对java入口点类执行相同的操作。 最佳答案 如果您不想将