草庐IT

group_value

全部标签

hadoop - 在 Hive 中导入带有 key=value 对的平面文件

我在HDFS中有格式为原始文件name=ABCage=10Location=QWERTYname=DEFage=15Location=IWIORS如何将这些平面文件中的数据导入到仅包含“名称”和“位置”列的Hive表中。 最佳答案 您可以执行以下操作。在表声明中,使用:ROWFORMATDELIMITED        FIELDSTERMINATEDBY''--space        MAPKEYSTERMINATEDBY'='此外,您的表将有一个数据类型为Map的列。因此,当您可以使用键从单个列中删除数据时。其他选项:编写自己

hadoop - 解释 "There can be many keys (and their associated values) in each partition, but the records for any given key are all in a single partition"

“每个分区中可以有许多键(及其相关值),但任何给定键的记录都在一个分区中。”这是一本著名的hadoop教科书的一行。我没有理解它的第二部分的全部含义,即“但是任何给定键的记录都在一个分区中。”这是否意味着单个键的所有记录都应该在单个分区或其他地方。 最佳答案 buttherecordsforanygivenkeyareallinasinglepartition如果您有一个键,则该键及其相关联的值必须位于单个分区上。有时该值可能相当大。但这是对值大小的限制。它必须足够小以适合单个分区。请注意,键和值上可能还有其他常量,具体取决于您用于

hadoop - 如何使用 Hive、Pig 或 MapReduce 处理 "insert into values"?

我是hadoop和大数据概念的新手。我正在使用Hortonworks沙箱并尝试操作csv文件的值。所以我使用文件浏览器导入文件并在配置单元中创建一个表来做一些查询。实际上我想要一个“插入值”查询来选择一些行,更改列的值(例如将字符串更改为二进制0或1)并将其插入到新表中。SQLLIKE查询可能是这样的:Insertintotable1(id,name,'01')selectid,name,graduatedfromtable2whereuniversity='aaa'不幸的是,hive无法插入(常量)值(不从文件导入),我不知道如何使用hive、pig甚至mapreduce脚本来解决这

hadoop - Hadoop 中的 (key,value) 对总是 ('text' ,1) 吗?

我是Hadoop新手。你能说说(键/值)对吗?值总是一个吗?reduce步骤的输出总是一个(键/值)对吗?如果是,该(键/值)数据将如何进一步使用?请帮帮我。 最佳答案 我猜你问的是由于wordcount导致的(key,values)对的“一个”值Hadoop教程中的示例。所以,答案是否定的,它并不总是“一个”。MapReduce的Hadoop实现通过在整个工作流中传递(键,值)对来工作,从输入到输出:映射步骤:一般来说(还有其他特殊情况,取决于输入格式),映射器逐行处理分配给它们的拆分内的数据;这些行作为(key,value)对传

sql - Spark : Group RDD Sql Query

我有3个RDD需要加入。valevent1001RDD:schemaRDD=[eventtype,id,location,date1][1001,4929102,LOC01,2015-01-2010:44:39][1001,4929103,LOC02,2015-01-2010:44:39][1001,4929104,LOC03,2015-01-2010:44:39]valevent2009RDD:schemaRDD=[eventtype,id,celltype,date1](不按id分组,因为我需要4个日期,具体取决于celltype)[2009,4929101,R01,2015-01

mysql - GROUP BY 和加入 HIVE

我怎样才能在HIVE中做这样的事情:表1:IDNameFriends1Tom5表2:IDNameDOB1Jerry10/10/19991KateNull1Peter02/11/19831RobertNull1Mitchell09/09/2000我想做的是:对于表1中的每个ID,找出num个不为空的DOB,然后除以Friends我写了一个查询:SELECTt.ID,t.Friends,COUNT(s.DOB)/t.FriendsfromTable1tjoinTable2son(t.ID=s.ID)GROUPBYt.ID当我这样做时,我收到错误消息,因为FRIENDS不是GROUPBYKe

Java Mapreduce group by compositekey 和排序

我有一个mapreduce作业,它进行一些处理并生成city:fruit的复合键(实现WritableComparable)以及相关计数。现在我想将它与辅助mapreduce作业链接起来,该作业确定每种水果类型数量最多的城市。mapreduce作业1的复合键输出示例:+---------------------+-------+|city:fruitcomposite|count|+---------------------+-------+|london:apples|3|+---------------------+-------+|london:bannanas|2|+-----

Hadoop MapReduce : Two values as key in Mapper-Reducer

如何使用两个组件构建key?这样做的原因是我有一个无向图。如果A和B通过通信关联(方向无关),则两个节点A和B之间存在边。此通信有一个数字参数。所以我想实现的是有一个将A和B组合在一起作为一个集合的key,这样A到B和B到A的通信就可以被认为是等价的,并且可以被加起来得到统计数据说:AB5BA10键在语义上应该是“A或B在一起”,这样包含A和B作为键的集合的值应该是5+10=15。wordcount示例将特定单词作为关键字。就我而言,我想将包含两个组件的集合作为关键。在map和reduce阶段,只要满足AtoB或BtoA就求和。谢谢! 最佳答案

java - 多重就业和全局值(value)

我正在处理多个作业,我需要使用一个全局数组值。我在函数设置(Mapper)中使用了数组,我需要在函数清理(Reducer)中更改它。在创建作业之前,我读取了一个包含此值的序列文件,然后我使用了conf.setInt()。在Cleanup(Reducer)中,我用新数组编写了一个序列文件。我面临这个问题:13/11/1910:58:23INFOmapred.JobClient:TaskId:attempt_201311190929_0005_m_000015_0,Status:FAILEDjava.lang.Throwable:ChildErroratorg.apache.hadoop.

hadoop - 为什么 DISTINCT 在 Pig 中比 GROUP BY/FOREACH 快

我不知道为什么DISTINCT在Pig中比GROUPBY/FOREACH快,它们在MapReduceFramework中应该是相同的,但请引用:http://pig.apache.org/docs/r0.10.0/perf.html#distinctPigwiki说“要从关系中的列中提取唯一值,您可以使用DISTINCT或GROUPBY/GENERATE。DISTINCT是首选方法;它更快、更高效。”为什么?实现方式不同吗? 最佳答案 distinct的输出是一种关系,它仅包含您对其进行区分的列,因此Map作业仅输出指定列的值作为键