草庐IT

reduce_dim

全部标签

hadoop - Map Reduce Job 在一个时间窗口中找到流行的项目

我在面试中被问到这个问题,我不确定我是否给出了正确的答案,所以我想了解一些见解。问题:存在用户和项目流。每分钟,我都会收到一个元组列表(用户、项目),表示用户u消费了项目i。我需要找到过去一小时内前100个热门商品,即计算每个商品有多少用户消费并排序。这里的技巧是,在过去的一个小时内,如果同一个用户多次消费同一个商品,则只考虑消费1次。不允许同一用户重复消费。面试官说我应该想大点,每小时有几百万的消费。因此,他建议我做一个map-reduce工作或每分钟可以处理如此大量数据的工作。我想出的解决方案:我说我可以维护一个列表(或者矩阵,如果你愿意的话)消耗的用户-项目-时间戳元组,就好像有

memory - 为TaskTracker子进程配置内存的不同方式(Mapper和Reduce Tasks)

设置mapred.job.map.memory.mb有什么区别?和mapred.child.java.opts使用-Xmx来控制Mapper和Reduce任务使用的最大内存?哪个优先? 最佳答案 -Xmx指定分配的jvm的最大堆空间。这是为对象分配保留的空间,由garbagecollector管理。.另一方面,mapred.job.map.memory.mb指定最大值virtualmemoryHadoop任务子进程允许的。如果超过最大堆大小,JVM会抛出OutOfMemoryException。JVM可能使用比最大堆大小更多的内存,

javascript - 浏览器/JS : reduce on an object

我的javascript应用程序在firefox和chrome上运行良好。但它在InternetExplorer(IE8)上似乎会被破坏。我没有在控制台日志中收到错误消息。通过调试我注意到的代码,应用程序在以下行中断:series.reduce(visit,[]);此时整个函数退出。我知道,reduce适用于数组,但是console.info(typeof(series))告诉:对象但是这个对象看起来确实像一个数组——而且它适用于FF/Chrome。这可能是为什么IE在此时停止处理该功能的原因吗?并且:如何在IE中处理这个问题?谢谢。 最佳答案

java - NPE on java stream reduce操作

最近,在处理Java8流时,我在处理以下测试用例时遇到了关于reduce操作的NullPointerException:privatestaticfinalBinaryOperatorsum=(a,b)->{if(a==null)returnb;if(b==null)returna;returnInteger.sum(a,b);};Lists=newArrayList();s.add(null);s.add(null);s.add(null);Integeri=s.stream().reduce(sum).orElse(null);//throwsNPEIntegeri=s.strea

c++ - 在 Shift/Reduce 解析器生成器中指定 C++11 语法操作函数?

我正在使用C++11开发移位/归约解析器生成器,但我不确定如何指定输入产生式和归约操作函数的接口(interface)类型,以便它们保存我想要输入的信息他们。我想静态指定语法但使用C++类型(不是单独的构建工具)。对于每个符号(终端和非终端),用户提供一个字符串名称和一个类型。然后每个产品指定一个头部符号名称和一个或多个body符号名称。对于每个产生式,用户(硬部分)提供一个Action函数,该函数返回头部非终结符类型并具有与产生式主体符号(其相应类型)相对应的参数。主要问题是将这些action函数的参数类型和返回类型静态绑定(bind)到对应的symbol类型上例如:假设我们有非终结

c++ - 可能返回值也可能不返回值的函数的 Iterator-reducer 模式

以下函数在每个元素上应用仿函数并减少返回值:templateRED::TYPEforAllElements(FCTfunctor,REDreducer){for(/*alleleminelements*/){reducer(functor(elem));}returnreducer.value;}现在,有时我可能希望只对所有元素调用functor,而不减少任何东西。基本上,我想要这样的东西:classFunctorThatReturnsNothing{voidoperator()(Eleme){//dosomething,returnnothing...}}classDummyRedu

c++ - 在类似功能的 reduce 函数中转发和返回类型

我需要创建一个类似于std::reduce的reduce函数,但此函数不应处理容器,而应处理可变参数。这是我目前拥有的:templateconstexprdecltype(auto)reduce(F&&,T&&t){returnstd::forward(t);}templateconstexprdecltype(auto)reduce(F&&f,T1&&t1,T2&&t2,Args&&...args){returnreduce(std::forward(f),std::forward(f)(std::forward(t1),std::forward(t2)),std::forward(

IOS:UITabbar item click again and it is reducing the UITabbar button item size in IOS 7

我在其中使用了Tabbarviewcontroller,我添加了5项并且我给出的图像昆虫是(24,0,0,6)。xib中添加了所有按钮图片[在Bar项下-->image]请帮助。谢谢。 最佳答案 在这里添加一个类似的答案:iOSTabBariconskeepgettinglarger不确定这是否是iOS7的错误,但我注意到图像插入需要平衡。您已经为顶部和右侧指定了insets,但是:如果你设置了topinset,为了平衡它,你需要将它的负值设置为bottominset如果你设置了一个rightinset,为了平衡它,你需要将它的负值

hadoop - mapred.job.reduce.markreset.buffer.percent 的含义

运行一些Pig作业,我注意到日志中有以下行:[main]INFOorg.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobControlCompiler-mapred.job.reduce.markreset.buffer.percentisnotset,settodefault0.3但是,Google搜索并未显示有关参数mapred.job.reduce.markreset.buffer.percent的任何含义。有人知道它的用途吗? 最佳答案 来自mapred

java - 一个mapreduce代码的优化(reduce side join)

我需要你的帮助来优化我的map代码。我在MapReduceDesignPattern这本书中使用了reducesidejoin的设计模式。一切正常,但我尝试改进代码以在连接期间不复制键连接。其实keyjoin在第二张表的value里,所以想去掉。这就是为什么,我拆分我的值并尝试删除第一个元素。但我认为这种方法并不是最好的,而且成本很高。这是我的映射器类:publicclassMapTable2extendsMapper{privateTextoutKey=newText();privateTextoutValue=newText();privateStringtab[];private