我正在尝试从群集外部运行MapReduce作业.
例如,Hadoop集群正在Linux机器上运行.我们在Windows机器上运行一个Web应用程序.我们希望从这个远程Web应用程序运行hadoop作业.我们想要检索hadoop输出目录并将其显示为Graph.
我们编写了以下代码:
Configuration conf = new Configuration();
Job job = new Job(conf);
conf.set("mapred.job.tracker", "192.168.56.101:54311");
conf.set("fs.default.name", "hdfs://192.168.56.101:54310");
job.setJarByClass(Analysis.class) ;
//job.setOutputKeyClass(Text.class);
//job.setOutputValueClass(IntWritable.class);
job.setMapperClass(Map.class);
job.setReducerClass(Reduce.class);
//job.set
job.setInputFormatClass(CustomFileInputFormat.class);
job.setOutputFormatClass(TextOutputFormat.class);
FileInputFormat.addInputPath(job, new Path(args[0]));
FileOutputFormat.setOutputPath(job, new Path(args[1]));
job.setMapOutputKeyClass(Text.class);
job.setMapOutputValueClass(IntWritable.class);
job.setOutputKeyClass(Text.class);
job.setOutputValueClass(IntWritable.class);
job.waitForCompletion(true);
Run Code Online (Sandbox Code Playgroud)
这就是我们得到的错误.即使我们关闭hadoop 1.1.2集群,错误仍然是相同的.
14/03/07 00:23:37 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
14/03/07 00:23:37 ERROR security.UserGroupInformation: PriviledgedActionException as:user cause:java.io.IOException: Failed to set permissions of path: \tmp\hadoop-user\mapred\staging\user818037780\.staging to 0700
Exception in thread "main" java.io.IOException: Failed to set …Run Code Online (Sandbox Code Playgroud) 我是hadoop的新手,我也有同样的问题.
这就是我在hadoop中所理解的.
1)当在hadoop中写入任何文件时,它以块的形式存储在所有数据节点上(默认为64MB)
2)当我们运行MR作业时,将从该块创建拆分,并在每个数据节点上处理拆分.
3)从每个拆分记录读取器将用于在映射器侧生成键/值对.
问题:
1)一个数据节点一次可以处理多个拆分吗?如果数据节点容量更大怎么办?
我认为这是MR1的限制,而MR2 YARN我们有更好的资源利用率.
2)是否会在数据节点以串行方式读取拆分,还是可以并行处理以生成键/值对?[通过随机访问数据节点拆分中的磁盘位置]
3)map/reduce架构中的'slot'术语是什么?我正在阅读其中一篇博客,并表示YARN将在Datanode中提供更好的插槽利用率.
球队.
有谁知道如何在extjs文本字段中添加图像
基本上我有文本字段,我默认显示空文本,除此之外我想放一个图像(图像应该在文本字段内.)有任何方法可以做到这一点.