- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
定义映射器的帮助是否已执行,如果未执行,可能是出于什么原因。我将读取方式的输出从数据库写入到执行映射器的本地文件系统的文本文件。这里我给个代码
package org.myorg;
import java.io.*;
import java.util.*;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.logging.Level;
import org.apache.hadoop.fs.*;
import org.apache.hadoop.conf.*;
import org.apache.hadoop.io.*;
import org.apache.hadoop.mapred.*;
import org.apache.hadoop.util.*;
public class ParallelIndexation {
public static class Map extends MapReduceBase implements
Mapper<LongWritable, Text, Text, LongWritable> {
private final static LongWritable zero = new LongWritable(0);
private Text word = new Text();
public void map(LongWritable key, Text value,
OutputCollector<Text, LongWritable> output, Reporter reporter)
throws IOException {
Configuration conf = new Configuration();
int CountComputers;
FileInputStream fstream = new FileInputStream(
"/export/hadoop-1.0.1/bin/countcomputers.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
String result=br.readLine();
CountComputers=Integer.parseInt(result);
input.close();
fstream.close();
Connection con = null;
Statement st = null;
ResultSet rs = null;
String url = "jdbc:postgresql://192.168.1.8:5432/NexentaSearch";
String user = "postgres";
String password = "valter89";
ArrayList<String> paths = new ArrayList<String>();
try
{
con = DriverManager.getConnection(url, user, password);
st = con.createStatement();
rs = st.executeQuery("select path from tasks order by id");
while (rs.next()) { paths.add(rs.getString(1)); };
PrintWriter zzz = null;
try
{
zzz = new PrintWriter(new FileOutputStream("/export/hadoop-1.0.1/bin/readwaysfromdatabase.txt"));
}
catch(FileNotFoundException e)
{
System.out.println("Error");
System.exit(0);
}
for (int i=0; i<paths.size(); i++)
{
zzz.println("paths[i]=" + paths.get(i) + "\n");
}
zzz.close();
}
catch (SQLException e)
{
System.out.println("Connection Failed! Check output console");
e.printStackTrace();
}
但是,尽管在其中一个从属节点上,/export/hadoop-1.0.1/bin/readwaysfromdatabase.txt 文件并未创建。从这里是否可以看出,根本没有执行什么映射器?我还将输出带入程序的执行文件
args[0]=/export/hadoop-1.0.1/bin/input
13/04/22 14:00:53 WARN mapred.JobClient: Use GenericOptionsParser for parsing the arguments. Applications should implement Tool for the same.
13/04/22 14:00:53 INFO mapred.FileInputFormat: Total input paths to process : 0
13/04/22 14:00:54 INFO mapred.JobClient: Running job: job_201304221331_0003
13/04/22 14:00:55 INFO mapred.JobClient: map 0% reduce 0%
13/04/22 14:01:12 INFO mapred.JobClient: map 0% reduce 100%
13/04/22 14:01:17 INFO mapred.JobClient: Job complete: job_201304221331_0003
13/04/22 14:01:17 INFO mapred.JobClient: Counters: 15
13/04/22 14:01:17 INFO mapred.JobClient: Job Counters
13/04/22 14:01:17 INFO mapred.JobClient: Launched reduce tasks=1
13/04/22 14:01:17 INFO mapred.JobClient: SLOTS_MILLIS_MAPS=9079
13/04/22 14:01:17 INFO mapred.JobClient: Total time spent by all reduces waiting after reserving slots (ms)=0
13/04/22 14:01:17 INFO mapred.JobClient: Total time spent by all maps waiting after reserving slots (ms)=0
13/04/22 14:01:17 INFO mapred.JobClient: SLOTS_MILLIS_REDUCES=7983
13/04/22 14:01:17 INFO mapred.JobClient: File Output Format Counters
13/04/22 14:01:17 INFO mapred.JobClient: Bytes Written=0
13/04/22 14:01:17 INFO mapred.JobClient: FileSystemCounters
13/04/22 14:01:17 INFO mapred.JobClient: FILE_BYTES_WRITTEN=21536
13/04/22 14:01:17 INFO mapred.JobClient: Map-Reduce Framework
13/04/22 14:01:17 INFO mapred.JobClient: Reduce input groups=0
13/04/22 14:01:17 INFO mapred.JobClient: Combine output records=0
13/04/22 14:01:17 INFO mapred.JobClient: Reduce shuffle bytes=0
13/04/22 14:01:17 INFO mapred.JobClient: Reduce output records=0
13/04/22 14:01:17 INFO mapred.JobClient: Spilled Records=0
13/04/22 14:01:17 INFO mapred.JobClient: Total committed heap usage (bytes)=16252928
13/04/22 14:01:17 INFO mapred.JobClient: Combine input records=0
13/04/22 14:01:17 INFO mapred.JobClient: Reduce input records=0
我还在一个虚拟机上成功执行程序的文件中带了一个输出
12/10/28 10:41:14 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
12/10/28 10:41:14 WARN mapred.JobClient: Use GenericOptionsParser for parsing the arguments. Applications should implement Tool for the same.
12/10/28 10:41:14 INFO mapred.FileInputFormat: Total input paths to process : 1
12/10/28 10:41:15 INFO mapred.JobClient: Running job: job_local_0001
12/10/28 10:41:15 INFO mapred.Task: Using ResourceCalculatorPlugin : null
12/10/28 10:41:15 INFO mapred.MapTask: numReduceTasks: 1
12/10/28 10:41:15 INFO mapred.MapTask: io.sort.mb = 100
12/10/28 10:41:15 INFO mapred.MapTask: data buffer = 79691776/99614720
12/10/28 10:41:15 INFO mapred.MapTask: record buffer = 262144/327680
12/10/28 10:41:15 INFO mapred.MapTask: Starting flush of map output
12/10/28 10:41:16 INFO mapred.JobClient: map 0% reduce 0%
12/10/28 10:41:17 INFO mapred.MapTask: Finished spill 0
12/10/28 10:41:17 INFO mapred.Task: Task:attempt_local_0001_m_000000_0 is done. And is in the process of commiting
12/10/28 10:41:18 INFO mapred.LocalJobRunner: file:/export/hadoop-1.0.1/bin/input/paths.txt:0+156
12/10/28 10:41:18 INFO mapred.Task: Task 'attempt_local_0001_m_000000_0' done.
12/10/28 10:41:18 INFO mapred.Task: Using ResourceCalculatorPlugin : null
12/10/28 10:41:18 INFO mapred.LocalJobRunner:
12/10/28 10:41:18 INFO mapred.Merger: Merging 1 sorted segments
12/10/28 10:41:18 INFO mapred.Merger: Down to the last merge-pass, with 1 segments left of total size: 199 bytes
12/10/28 10:41:18 INFO mapred.LocalJobRunner:
12/10/28 10:41:19 INFO mapred.JobClient: map 100% reduce 0%
12/10/28 10:41:19 INFO mapred.Task: Task:attempt_local_0001_r_000000_0 is done. And is in the process of commiting
12/10/28 10:41:19 INFO mapred.LocalJobRunner:
12/10/28 10:41:19 INFO mapred.Task: Task attempt_local_0001_r_000000_0 is allowed to commit now
12/10/28 10:41:19 INFO mapred.FileOutputCommitter: Saved output of task 'attempt_local_0001_r_000000_0' to file:/export/hadoop-1.0.1/bin/output
12/10/28 10:41:21 INFO mapred.LocalJobRunner: reduce > reduce
12/10/28 10:41:21 INFO mapred.Task: Task 'attempt_local_0001_r_000000_0' done.
12/10/28 10:41:22 INFO mapred.JobClient: map 100% reduce 100%
12/10/28 10:41:22 INFO mapred.JobClient: Job complete: job_local_0001
12/10/28 10:41:22 INFO mapred.JobClient: Counters: 18
12/10/28 10:41:22 INFO mapred.JobClient: File Input Format Counters
12/10/28 10:41:22 INFO mapred.JobClient: Bytes Read=156
12/10/28 10:41:22 INFO mapred.JobClient: File Output Format Counters
12/10/28 10:41:22 INFO mapred.JobClient: Bytes Written=177
12/10/28 10:41:22 INFO mapred.JobClient: FileSystemCounters
12/10/28 10:41:22 INFO mapred.JobClient: FILE_BYTES_READ=9573
12/10/28 10:41:22 INFO mapred.JobClient: FILE_BYTES_WRITTEN=73931
12/10/28 10:41:22 INFO mapred.JobClient: Map-Reduce Framework
12/10/28 10:41:22 INFO mapred.JobClient: Reduce input groups=4
12/10/28 10:41:22 INFO mapred.JobClient: Map output materialized bytes=203
12/10/28 10:41:22 INFO mapred.JobClient: Combine output records=4
12/10/28 10:41:22 INFO mapred.JobClient: Map input records=1
12/10/28 10:41:22 INFO mapred.JobClient: Reduce shuffle bytes=0
12/10/28 10:41:22 INFO mapred.JobClient: Reduce output records=4
12/10/28 10:41:22 INFO mapred.JobClient: Spilled Records=8
12/10/28 10:41:22 INFO mapred.JobClient: Map output bytes=189
12/10/28 10:41:22 INFO mapred.JobClient: Total committed heap usage (bytes)=321527808
12/10/28 10:41:22 INFO mapred.JobClient: Map input bytes=156
12/10/28 10:41:22 INFO mapred.JobClient: Combine input records=0
12/10/28 10:41:22 INFO mapred.JobClient: Map output records=4
12/10/28 10:41:22 INFO mapred.JobClient: SPLIT_RAW_BYTES=98
12/10/28 10:41:22 INFO mapred.JobClient: Reduce input records=0
@ChrisWhite 我在命令的帮助下运行了程序
./hadoop jar /export/hadoop-1.0.1/bin/ParallelIndexation.jar org.myorg.ParallelIndexation /export/hadoop-1.0.1/bin/input /export/hadoop-1.0.1/bin/output -D mapred.map.tasks=1 1> resultofexecute.txt 2&>1
我在一个集群中有 4 个节点,其中一个主节点,一个用于 secondarynamenode 和 2 个从属节点。
最佳答案
为您的作业安排了多少个 map task ,您的集群有多大?如果说您的作业仅运行 4 个映射任务和一个具有 32 个节点的集群,那么 28/32 个节点可能不会有任何输出(因为没有映射任务在这些节点上运行)。
您可以通过 Job Tracker Web UI 查看有关构成您的作业的 map task 数量以及这些作业计划在何处运行的信息。
奇怪的是,您的第一次运行转储没有显示任何已启动的 map 作业,只是减少了任务:
13/04/22 14:01:17 INFO mapred.JobClient: Launched reduce tasks=1
而且 map 输入/输出记录也没有计数器,因此您运行此作业的方式有些奇怪 - 您能否分享您用于启 Action 业的完整命令行以及可能的驱动程序代码配置并运行作业?
关于java - mapper执行的判断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16145189/
from sqlalchemy import * from sqlalchemy import create_engine, ForeignKey from sqlalchemy import Col
我使用 MR1 API(hadoop-core-1.2.1.jar) 编写了一个示例字数统计程序。映射器类定义如下, public interface Mapper extends JobConfi
创建maven项目,修改pom.xml文件,如下: ? 1
问题最终得到解决在底部查看我的解决方案 最近我正在尝试运行 Mahout in Action 的第 6 章( list 6.1 ~ 6.4)中的推荐系统示例。但是我遇到了一个问题,我已经用谷歌搜索了但
如果有人知道在 .NET 中执行此操作的更多方法,您对这些方法有何看法?您选择哪种方法,为什么? 下面是.NET中对象拷贝不同方式的测试。 与此原始线程相关的测试:How to copy value
我能看出参数个数的不同,但我不知道实现上的不同。 每种方法的行为是否存在重要差异? 最佳答案 第一个填充您传入的现有对象。第二个为您创建一个新对象。这是“项目”和“填充”之间的语义差异。 关于c# -
我正在将一个项目从 Glass Mapper v2 (Glass.Mapper.Sitecore) 升级到 v4 (Glass.Mapper.Sc),我遇到了一个问题,我们的解决方案是使用 Insta
我正在实现一些 hadoop 应用程序。我的编码部分几乎完成了。但是想在阅读“Lin & Chris Dryer”的映射器设计模式书后改进编码器。至于这种方法的有效实现,需要在 map 函数中保留状态
当我尝试访问该页面时发生此错误。我在创建表时没有遇到错误,但似乎仍然存在问题。 模型是这样的: class User(UserMixin, db.Model): id = db.Column(
我创建了一个使用 SQLAlchemy 的类: class DbAbsLayer(object): def __init__(self): self.setConnection
我试图在我的 MVC - Sitecore - 7.1 中的 v4.0.30319 项目中使用 Glass Mapper。 以下是我安装的 Glass Mapper 版本 Glass Mapper 版
我在尝试使用 org.apache.hadoop.mapred.lib.IdentityMapper 作为 Hadoop Streaming 1.0.3 中 -mapper 的参数时遇到了问题。 “猫
这是我的mybatis配置。这是我的pom.xml。。当我运行项目时,它显示了错误的原因:org/mybatis/spring/mapper/MapperScannerConfigurer.有没有人能
背景: 1.在数据库中有一个通知表 可以看到其中的 gmt_create、 notifier_name、 outer_title 这三个字段是有下划线的 2.这张表
hadoop配置对象仅允许在set方法中将字符串作为值 set(字符串名称,字符串值) 是否有一种简单的方法来设置任何其他对象类型?我想在映射器中检索这些对象。 我注意到在0.15左右的版本中,有一个
我要开发的更大目标如下: a)仪表板,除其他功能外,用户还可以上传文档(.pdf,.txt,.doc)。所有这些文档都转到特定目录。 b)用户还可以查询所有带有特定关键字标记的文档。 现在,我希望使用
2016-10-20 18:03:51.253 WARN 17216 --- [restartedMain] .s.c.a.CommonAnnotationBeanPostProcessor:在名为“
我正在尝试同时使用映射器和缩减器来运行作业,但映射器运行缓慢.. 如果对于相同的输入我禁用 reducers,映射器将在 3 分钟内完成而对于 mapper-reducer 作业,即使在 30 分钟后
由于一些数据在所有 map() 函数之间共享,我无法在 setup() 中生成它们,因为每个 setup() 对应于每个map() 函数,而我想做的是预先生成一些数据并将其存储在可实现的地方,然后在每
我正在使用 Hadoop,我想使用静态变量来减少必须进行的方法调用次数。以下是我如何使用静力学: public class Mapper extends Mapper { protected
我是一名优秀的程序员,十分优秀!