草庐IT

do_iterations

全部标签

java - Hadoop Iterator 在第一次迭代时跳过方法调用

我有一个MapReduce程序,在Reducer类中,我的方法在第一次迭代中没有被调用。我想要实现的是在迭代器的每2个连续值之间生成一些新行。(对像:(1,2),(2,3),(3,4)......)。我错过了什么?而且我还测试了我有我需要的对,看起来不错,但似乎第一对没有调用我的方法..generate()-将在每2个连续行之间生成新行(填补时间间隔)输入:X、Y、00:00:00、908X、Y、00:00:05、122X、Y、00:00:07、123期望的输出:X、Y、00:00:00、908X、Y、00:00:01、908X、Y、00:00:02、908X、Y、00:00:03、9

hadoop - yarn : Do we need nodemanager on namenode?

我们是否需要在名称节点节点上启动节点管理器,即我不会将其设为数据节点?我将在一台机器上启动namenode和resourcemanager。由于我不会在这台机器上启动datanode,我想我也不需要启动nodemanager?感谢 最佳答案 这取决于你。您可以选择在未安装Datanode服务的节点上保留Nodemanager,在这种情况下,如果由该Nodemanager执行,数据将通过网络传输以执行任务。但是如果你想减少主节点的负载,那么你应该避免在它上面安装如此繁重的进程(Datanode和NodeManager)。在许多情况下,

java - Apache Hadoop : Can it do "time-varying" input?

即使经过一些谷歌搜索,我也没有找到答案。我的输入文件是由一个进程生成的,当文件达到1GB时,该进程将它们分块。现在,如果我要运行一个处理dfs中的输入目录的mapreduce作业,我如何确保该作业在hadoop作业运行时获取添加到同一输入目录的文件?我觉得这几乎是不可能的,因为当hadoop作业运行时,它会计算剩余时间和所有这些东西,所以当我的输入不断堆积或换句话说是“可变的”时,Hadoop不会知道如何管理它-这是我的猜测。我想知道您对此的看法以及对此的最佳替代方法!感谢您的帮助。 最佳答案 您描述的用例不是Hadoop设计用来处

java - 在 reducer 的 for 循环中获取编译错误 "Can only iterate over an array or an instance of java.lang.Iterable"

在reducer的for循环中出现编译错误“Canonlyiterateoveranarrayoraninstanceofjava.lang.Iterable”。publicvoidreduce(Textkey,Iteratorvalues,OutputCollectorOutput,Reporterarg3)throwsIOException{//TODOAuto-generatedmethodstubintsum=0;for(IntWritableval:values){sum+=val.get();在上面的代码中,在“for(IntWritableval:values)”处出现编

Python 和 MapReduce : beyond basics -- how to do more tasks on one database

我有一个巨大的txt数据存储,我想在其中收集一些统计数据。使用Hadoop流和Python我知道如何实现MapReduce以在单个列上收集统计信息,例如计算100个类别中的每个类别有多少条记录。我创建了一个简单的mapper.py和reducer.py,并将它们分别作为-mapper和-reducer插入到hadoop-streaming命令中。现在,我对如何实际处理更复杂的任务有点不知所措:除了上述类别(例如地理位置、类型、日期等)之外,还收集各种其他列的各种统计数据。所有这些数据都在同一个txt文件中。我是否将mapper/reducer任务链接在一起?我是否传递最初很长的键值对(

scala - 如何在 spark-scala 中将 Iterable[String] 保存到 hdfs

valordersRDD=sc.textFile("/user/cloudera/sqoop_import/orders");valordersRDDStatus=ordersRDD.map(rec=>(rec.split(",")(3),1));valcountOrdersStatus=ordersRDDStatus.countByKey();valoutput=countOrdersStatus.map(input=>input._1+"\t"+input._2);如何将Iterable[String]的输出保存到spark-scala中的hdfs。可迭代[字符串]注意:ouput

hadoop - HDFS 加密 : User:hdfs not allowed to do 'DECRYPT_EEK' on 'hdfskey'

我正在尝试在HDP2.4上使用RangerKMS设置HDFS加密。我能够部署和配置KMS服务。我已经创建了一个key和一个访问策略,以授予hdfs用户使用此key进行操作的所有权限。我可以创建一个加密区域sudo-uhdfshdfsmkdir/data_encsudo-uhdfshdfscrypto-createZone-keyNamehdfskey-path/data_enc但是,当我尝试将文件放入目录时,出现此错误:sudo-uhdfshdfsdfs-put/tmp/file.txt/data_enc/...User:hdfsnotallowedtodo'DECRYPT_EEK'o

sql - 黑斑羚 : argument of type 'NoneType' is not iterable

我已经从MySQL导入了一个表到Hive,该表有1000万行,现在在Impala中执行一些操作以检查功能和性能。现在,当我发出以下查询时,出现错误argumentoftype'NoneType'isnotiterable。selectcount(id)frommy_table_name;导入数据后我需要做些什么来解决这个问题吗?我打算主要将Impala用于分析目的,因此它涉及很多SUM和COUNT函数。 最佳答案 尝试使用refresh命令。这是来自Cloudera文档的引用:Syntax:REFRESH[db_name.]tabl

hadoop - Cloudera 管理器 : Where do I put Java ClassPath for MapReduce jobs?

我已经让Hadoop-Lzo在我的本地伪集群上愉快地工作,但是第二次我在生产中尝试相同的jar文件时,我得到:java.lang.RuntimeException:native-lzolibrarynotavailable库已验证在DataNode上,所以我的问题是:我在什么屏幕/设置中指定native-lzo库的位置? 最佳答案 对于MapReduce,您需要将条目添加到MapReduce客户端环境安全阀。您可以通过转到配置下的查看和编辑选项卡找到MapReduceClientSafety。然后在那边添加这些行:HADOOP_CL

php - 开始 oop php 问题 : do constructors take the place of getter?

我正在完成本教程:http://www.killerphp.com/tutorials/object-oriented-php/php-objects-page-3.php首先他让你在类中创建一个setter和getter方法:name=$new_name;}functionget_name(){return$this->name;}}php?>然后创建对象并回显结果:set_name("StefanMischook");$jimmy->set_name("NickWaddles");echo"ThefirstObjectnameis:".$stefan->get_name();ech