草庐IT

sum_numbers

全部标签

hadoop - 没有在 pig 中使用 SUM() 获得计算值

我的命令如下:Z=LOAD'/..file_path'USINGPigStorage(',')AS(name:CHARARRAY,gpa:int,salary:int);y=GROUPZBYgpa;R=FOREACHyGENERATESUM(Z.salary);我正在获取的输出DUMPR;作为:{all,()};请指导我。TIA。 最佳答案 您需要使用GROUPALL而不是GROUPBY来获取SUM.Z=LOAD'/..file_path'USINGPigStorage(',')AS(name:CHARARRAY,gpa:int,s

java - Hadoop map reduce over totient sum

我很难使用Hadoopmapreduce来计算两个值之间的总和。例如,我想计算[1,15000]的总和。但据我所知,map-reduce处理具有共同点(标签)的数据。我设法理解了该数据的架构:doctor23doodle34doctor2doodle5那些是在给定文本中找到的单词的出现。使用mapreduce将链接给定单词的值,如下所示:doctor[(232)]doodle[(345)]然后计算这些值的总和。但是关于总和,我们从来没有像上面例子中的绳索那样的共同点。鉴于该数据集:DS1:12345.....15000是否可以使用mapreduce架构计算列表中所有totient的总和

sql - hadoop 配置单元使用 row_number()

我有一个包含许多重复ID的数据集。我只想做一个row_number()并取第一个。如果我让table1离开与table2的连接并且只使用table2.rownumber=1,它就可以工作。但是,如果我在没有表连接的情况下进行独立操作,则不会。我有以下代码:选择ID,姓名,身份证,ROW_NUMBER()OVER(PARTITIONBYIDORDERBYID)作为RNK从表1其中RNK=1;错误消息显示RNK不是有效的表列或别名等。如有任何帮助,我们将不胜感激。谢谢。 最佳答案 您必须使用子查询或CTE来引用用于过滤的列别名:SELE

hadoop - 如何在 PigLatin 的 SUM 中计算乘法

我有一只像这样的pig描述:DESCRIBEB;B:{group:chararray,A:{name:chararray,age:int,gpa:float}}我想计算∑B.A.gpa2在pig身上但是如果我写:FOREACHB{out=SUM(A.gpa*A.gpa);}它抛出这样的异常:[main]ERRORorg.apache.pig.tools.grunt.Grunt-ERROR1039:(Name:MultiplyType:nullUid:null)incompatibletypesinMultiplyOperatorlefthandside:bag:tuple(gpa:fl

hadoop - 自定义分区程序 : N number of keys to N different files for word count

您好,我正在学习hadoop,我想要一个关于如何使用自定义partioner解决字数统计问题的示例。我希望将缩减器设置为26,以便所有以“A”开头的字符都将转到第一个缩减器,所有字符“B”将转到第二个缩减器,依此类推....公共(public)类PersonPartitioner扩展了Partitioner{@OverridepublicintgetPartition(Textkey,IntWritableVal,intnumOfReducer){Stringline=key.toString();String[]splits=line.trim().replaceAll("[0-9]

Hadoop reducer : How to ensure the reducers are evenly running over a number of nodes

我有一个场景,我不确定减少处理器的位置。i)我有一个输入文本文件,它有1到4之间平衡范围内的1000个整数。ii)让我们假设有一个4节点集群,每个节点有12个槽,其中4个分配为reducer-总共有16个reduce槽iii)我在驱动程序中设置了reducer的数量:jobConf.setNumReduceTasks(4);iii)最后我有一个分区方法是publicclassMyPartitionerextendsPartitioner{@OverridepublicintgetPartition(Textkey,Textvalue,intnumPartitions){returnIn

hadoop - pig 脚本 : Find sum of items in a group

这是我要运行的行counts=FOREACHz{sum=SUM(B::counter);GENERATEgroupasA::month,sum;};但是我收到以下错误:Invalidfieldprojection.Projectedfield[B::counter]doesnotexistinschema:group:chararray,y:bag{:tuple(A::id:chararray,A::month:chararray,B::counter:int)}.如何对这样一个包含基于一列分组的元组包的模式进行求和聚合? 最佳答案

hadoop - Pig 脚本中的 SUM 函数

我是一名学生,正在学习如何使用hortonworks沙箱使用Pig脚本。我的问题是我无法正确使用SUM函数。我已经成功地分离了防火墙日志的字段,并且我能够执行多个查询并使用计数函数......但是在一个案例中我真正需要的SUM函数没有运气。我在下面使用的这段代码:A=FOREACHlogs_baseGENERATEdevice_id,src,src_port,dst,dst_port,tran_ip,tran_port,service,duration,sent,rcvd,sent_pkt,rcvd_pkt,SN,user,group1,REGEX_EXTRACT(date,'\\d{

java - Hadoop 字数 : receive the total number of words that start with the letter "c"

这是Hadoop字数统计javamap和reduce源代码:在map函数中,我已经可以输出所有以字母“c”开头的单词以及该单词出现的总次数,但我想做的只是输出以字母“c”开头的单词总数,但我在获取总数时遇到了一些问题。非常感谢任何帮助,谢谢。例子我得到的输出:可以2可以3类别5我想要得到的:c-总计10publicstaticclassMapClassextendsMapReduceBaseimplementsMapper{privatefinalstaticIntWritableone=newIntWritable(1);privateTextword=newText();publi

Hadoop 数据节点 : why is there a magic "number" for threshold of data blocks?

专家,我们可能会看到我们的hadoop集群中的block数增长。“太多”block会导致数据节点堆需求增加、执行速度下降、GC次数增多等后果。当block数超过某个“阈值”时,​​我们应该引起注意。我见过不同的阈值静态数字,例如200,000或500,000——“神奇”数字。它不应该是节点内存的函数(DataNode的Java堆大小,以字节为单位)吗?其他有趣的相关问题:高block数表示什么?一种。小文件太多?b.产能不足?是(a)还是(b)?如何区分两者?什么是小文件?大小小于block大小(dfs.blocksize)的文件?每个文件是否在磁盘上占用一个新的数据block?还是与