草庐IT

mapReduce

全部标签

Hadoop MapReduce : Custom Input Format

我有一个文件,其中包含文本和“^”之间的数据:一些文字^在这里^还有一些^更多到这里我正在编写自定义输入格式以使用“^”字符分隔行。即映射器的输出应该是这样的:一些文字去这里还有一些更多内容在这里我编写了一个扩展FileInputFormat的自定义输入格式,还编写了一个扩展RecordReader的自定义记录阅读器。下面给出了我的自定义记录阅读器的代码。我不知道如何处理这段代码。在WHILE循环部分使用nextKeyValue()方法时遇到问题。我应该如何从拆分中读取数据并生成自定义键值?我正在使用所有新的mapreduce包而不是旧的mapred包。publicclassMyRec

hadoop - mapreduce hadoop中输入分割数与映射器数之间的关系

我是hadoop和mapreduce模型的新手,正在努力弄清楚这些概念。我首先想了解输入拆分的概念和正确的映射器数量。我正在运行mapreducewordcount程序,以下是我的问题。1)输入拆分是如何确定的?我在具有2个不同大小输入的同一个集群上运行同一个程序。file1:size48mb.=>igotnumberofsplits:1inlog.file2:size126mb=>numberofsplits:1file2:size126mb(executedineclipseIDE)=>numberofsplits:4对于126mb的文件,分割数不应该等于2吗?因为我读过block

python - Pyspark 从数据框中的列中删除空值

我的数据框如下所示ID,FirstName,LastName1,Navee,Srikanth2,,Srikanth3,Naveen,现在我的问题陈述是我必须删除行号2,因为名字为空。我正在使用下面的pyspark脚本join_Df1=Name.filter(Name.col(FirstName).isnotnull()).show()我得到的错误是File"D:\0\NameValidation.py",line13,injoin_Df1=filter(Name.FirstName.isnotnull()).show()TypeError:'Column'objectisnotcall

java - 如何在 Hadoop 中共享全局序列号生成器?

现在我正在使用Hadoop来处理最终将加载到同一个表中的数据。我需要一个共享的序列号生成器来为每一行生成id。现在我使用以下方法生成唯一编号:1)在HDFS中创建一个文本文件,例如test.seq,用于保存当前序号。2)我使用锁文件“.lock”来控制并发。假设我们有两个任务来并行处理数据。如果task1想要获取号码,它会检查锁文件是否存在。如果是,则说明task2正在从test.seq中取数,task1必须等待。当task2获取到号码后,返回时加1覆盖旧号码,并删除锁文件“.lock”。当task1看到.lock消失时,task1会先创建一个“.lock”文件,然后以同样的方式获取序

hadoop - 如何在 hadoop mapreduce 中进行 lzo 压缩?

我想使用lzo来压缩map输出,但我无法运行它!我使用的Hadoop版本是0.20.2。我设置:conf.set("mapred.compress.map.output","true")conf.set("mapred.map.output.compression.codec","org.apache.hadoop.io.compress.LzoCodec");当我在Hadoop中运行jar文件时,它显示无法写入映射输出的异常。我必须安装lzo吗?我必须做什么才能使用lzo? 最佳答案 LZO的许可证(GPL)与Hadoop(Apa

hadoop - 用于处理大数据的 MySQL Cluster 与 Hadoop

我想知道使用MySQL集群和使用Hadoop框架的优点/缺点。什么是更好的解决方案。我想听听您的意见。我认为使用MySQL集群的优点是:高可用性良好的可扩展性高性能/实时数据访问您可以使用商用硬件而且我看不出有什么缺点!有没有Hadoop没有的缺点?Hadoop和Hive的优点是:也有很好的可扩展性您也可以使用商用硬件在异构环境中运行的能力使用MapReduce框架进行并行计算使用HiveQL的Hive缺点是:没有实时数据访问。分析数据可能需要几分钟或几小时。所以在我看来,对于处理大数据,MySQL集群是更好的解决方案。为什么Hadoop是处理大数据的chalice?你怎么看?

Hadoop mapreduce 与级联,在比较基础处理时间时哪个更好?

我也使用过级联以及M/R,与M/R相比,级联作业看起来很慢。看起来我慢了25%到50%。是真的还是我需要在级联中挖掘更多以进行优化。 最佳答案 我无法将Cascading作业的开销与手绘原始MapReduce作业进行比较,因为它实际上取决于工作负载的复杂性、Cascading的版本、您编写每个作业的方式、Amazon内部的天气或您的网络,等等也就是说,Cascading是对MapReduce的抽象,会有一些开销。但作为一种抽象,它有机会更有效地做事(例如,1.2将在排序期间延迟反序列化数据,原始MR开发人员需要通过Comparato

xml - Hadoop 会为我带来更多好处吗?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我使用Clojure每小时提取十个XML文件,每个文件大约10MB。此脚本在服务器计算机上运行。XML文件现在被解析并存储到RDBMS中(所有这些都是使用nativeClojure代码完成的)。考虑到我的情况,如果我使用HadoopMap/Reduce来解析XML文件,我是否会获得更多好处?还是会矫枉过正?

hadoop - 如何使用 Hadoop 开始使用 MapReduce?

我听说过Hadoop,但我还可以用什么来开始这个主题...还有哪些其他API?一般需要什么来开始在这里编程?你推荐什么来学习这个有趣的问题 最佳答案 转到homepage的项目,尽可能多地阅读它,在你的本地机器上设置它。按照thissite中的说明进行操作用于设置它。如果你想更深入,我推荐这两本书:Hadoop:ThedefinitiveguideProhadoop 关于hadoop-如何使用Hadoop开始使用MapReduce?,我们在StackOverflow上找到一个类似的问题:

hadoop - 从 pig 身上连续获得最大值

从pig身上获得最大值(value):学生(rollno,标记)rollno.marks124226350430535输出要求:最大分数卷号。输出:350假设A包含student表的值如何获取rollno。满分我试过这个:B=GROUPABYrollnoC=foreachBgenerategroup,max(A.marks);但是它导致所有记录都可以在pig中帮助我 最佳答案 最易读的方法是ORDER您的数据,然后选择带有LIMIT1的顶部记录:A=LOAD'input'AS(rollno,marks);B=ORDERABYmark