joinmap4.10.00 如何保存数据库

我的hadoop初学程序----------------多表连接-----------数据库多表自然连接------MTJoin
输入文件1:
factoryname   addressed
Beijing Red Star 1
Shenzhen Thunder 3
Guangzhou Honda 2
Beijing Rising 1
Guangzhou Development Bank 2
Back of Beijing 1
输入文件2:
addressname
2 Guangzhou
3 Shenzhen
要想得到的输出文件:
factoryname addressname
Beijing Red Star
Beijing Rising
Back of Beijing
Guangzhou Honda
Guangzhou Development Bank
Shenzhen Thunder
       
自己编写的运行正确的map/reduce源码:
import java.io.IOE
import java.util.I
import org.apache.hadoop.conf.C
import org.apache.hadoop.fs.P
import org.apache.hadoop.io.T
import org.apache.hadoop.mapreduce.J
import org.apache.hadoop.mapreduce.M
import org.apache.hadoop.mapreduce.R
import org.apache.hadoop.mapreduce.lib.input.FileInputF
import org.apache.hadoop.mapreduce.lib.output.FileOutputF
import org.apache.hadoop.util.GenericOptionsP
public class MTJoin {
// 对于两个不同的输入文件的处理,前面的文件都是相同格式的,这里的两个文件格式不同,实现的是两个文件的自然连接
public static class MTJoinMap extends Mapper&Object, Text, Text, Text&{
//map做的事是将不同文件中的数据进行处理分发;继承了mapper之后就要实现其中的map方法
public void map(Object key,Text value,Context context) {
//每次执行map函数,就会读取文件中的一行数据给value,要对value进行处理;
String line=new String(value.toString());
String MapKey=new String();
String MapValue=new String();
if (line.contains("factoryname")||line.contains("addressed")||line.contains("addressID")||line.contains("addressname")) {
int len=line.length();
String flag=new String();//记录属于左表还是属于右表;
//每个map任务按行读取文件,将读取的一行数据交给map函数执行处理,即,每一行数据调用一次map函数,
//所以这里的一个tokenizer的容器,包含的数据,在这里只有两个,当读取下一行数据时,就会再次调用一次MTJoinMap的map函数
//------------------------------由此,这里的i的意义就很明显了。
//当每一行数据读进来初始时,i的值均为0,所以当文件为第一个文件,即第二位为ID时,flag="1",当文件为第一个文件时,即第一位为ID,则,i=0,--& flag="2"
String[] record=line.split(" ");
if (len==0) {
if (line.charAt(0) & '0' && line.charAt(0) & '9') {
MapKey=String.valueOf(line.charAt(0));
for (int i = 1; i & record. i++) {
MapValue =MapValue.concat(record[i]).concat(" ");
}else if (line.charAt(len-1) & '0' && line.charAt(len-1) & '9') {
MapKey=String.valueOf(line.charAt(len-1));
for (int i = 0; i & record.length-1; i++) {
if (record[i].equals(" ")) {
MapValue =MapValue.concat(record[i]).concat(" ");
context.write(new Text(MapKey), new Text(flag+"+"+MapValue));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
public static int time=0;
public static class MTJoinReduce extends Reducer&Text, Text, Text, Text&{
public void reduce(Text key,Iterable&Text& values,Context context) {
if (time==0) {
context.write(new Text("factoryname"), new Text("addressname"));
} catch (IOException | InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}//输出表头信息factory name address name
factoryname=new String[10];
int factoryNum=0;
String addressname=new String();
Iterator&Text& iterator=values.iterator();
while (iterator.hasNext()) {
String record= iterator.next().toString();
int len=record.length();//以下这三句不加会报错: Exception closing file /user/xinxin/output/MutiTableJoin_out
if (len==0) {//一定要判定迭代器里面的字符串为空的情况
char flag=record.charAt(0);
if (flag=='1' && record.substring(2).length()!=0) {
factoryname[factoryNum]=record.substring(2);
factoryNum++;
}else if (flag=='2' && record.substring(2).length()!=0)
addressname = record.substring(2);
if (factoryNum!=0 && addressname.length()!=0) {
for (int i = 0; i & factoryN i++) {
context.write(new Text(factoryname[i]), new Text(addressname));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
public static void main(String[] args) throws IOException, ClassNotFoundException, InterruptedException {
Configuration configuration=new Configuration();
String[] otherArgs = new GenericOptionsParser(configuration,args).getRemainingArgs();
if (otherArgs.length !=2) {
System.err.println("Usage: MTJoin &in& &out&");
System.exit(2);
Job job =new Job(configuration, "tracert MTJoin");
job.setJarByClass(MTJoin.class);
job.setMapperClass(MTJoinMap.class);
job.setReducerClass(MTJoinReduce.class);
job.setOutputKeyClass(Text.class);
job.setOutputValueClass(Text.class);
FileInputFormat.addInputPath(job, new Path(otherArgs[0]));
FileOutputFormat.setOutputPath(job, new Path(otherArgs[1]));
System.exit(job.waitForCompletion(true)? 0 : 1);
作者原创,如果转载请注明出处,谢谢
---------------------------------------------------------欣
没有更多推荐了,Joinmap使用说明_文库下载
1亿文档 免费下载
当前位置: &
& Joinmap使用说明
Joinmap使用说明
Word文档免费下载:(下载1-100页,共100页)
总体说来,使用 joinmap 中的极大似然分析的标记之间的距离要比 mapmaker 要大一...(3 ) 、说明个体的数目,位点的数目,缺失值 写入的分别为 200 7 -9 (4 ...Joinmap 的使用 JoinMap3.0 使用简要说明 1、数据录入 loci 文件 要求:纯文本 格式: name = Mydata popt = F2 nloc = 6 nind = 100 marker001 hahhh aha...joinmap使用图文教程_生物学_自然科学_专业资料。joinmap 使用说明 使用例子 使用图文教程 新建new project 点击 dataset 新建 new dataset 设置数据格式和大小 选择...4种软件使用说明-研究生课程_工学_高等教育_教育专区。遗传作图及QTL软件 ...Graphics ―― Tree plot 遗传连锁图谱的构建―― JOINMAP3.0 & MAPCHART 1、...mapqtl中文使用说明书_生物学_自然科学_专业资料。1. 新建一个空白文件,就是最后...第一个是 map 文件,即通过 joinmap 或 mapmaker 软件计算出的各连锁 群上位...6 其它方法 用 joinMap,一个点一个点的查询,不用转坐标,直接就出结果,没有...2015 Baidu 使用百度前必读 JoinMap4.0破解版 FastPCR 5.4 Daemon Tools 4.45.4 mdi jade V5.0 免费绿色...Design-Expert 是最容易使用、功能最 完整、界面最具亲和力的软件。Design-expert...但由于不同研究者使用的作图 群体和标记类型等不尽相同,研究结果之间难以进行...分子标记的记载方法参照 JoinMap 4.0(van Ooijen,2006) 说明书。标记位点直接以...分雌雄株,其余的标记在本 试验材料中均不能使用。...说明 S5.7 和 S9.5 转化成功,而且与 Y 染色体...用 Joinmap4.0 软件计算,D4.3 与性别基因的遗传遗 ...QTL, 说明这些位点可能同时对多个不同的果实表型性状起作用,属于多效位点。 ...使用软件 MAPQTL4.0 对相关性状进行定位。该软件能结合 Joinmap 得到的连锁图谱...GetCustomJoinMap()在 DataSource 中重写 GetCustomJoinMap() 方法 这样在 只要...DataCommand编程―使用上下文关键属性类 名 说明 说明 QueryCon text 属性属性名...Joinmap的使用_百度文库
您的浏览器Javascript被禁用,需开启后体验完整功能,
享专业文档下载特权
&赠共享文档下载特权
&10W篇文档免费专享
&每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
Joinmap的使用
&&JOINMAP的使用
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
你可能喜欢如何处理snp数据 joinmap_百度知道
如何处理snp数据 joinmap
我有更好的答案
在Excel中输入,横向是用到的株系,纵向是marker,主题内容填A或B,保存为.csv(逗号分隔)格式。然后打开写字板,在写字板中打开这个.csv格式文件,另存为.loc格式即可。另外,请问你的joinmap可以传给我吗,我不要你的licence?
为您推荐:
您可能关注的内容
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。

我要回帖

更多关于 如何保存yuv数据 的文章

 

随机推荐