1
hadoopフレームワークを使用してJavaでアプリケーションを作成しています。これは、サイズ、iteam_sizeとして定義された項目、合計値を3か月定義します。私は自分の書き込み可能なクラスを実装しています。私のコードという名前ですが、私は別の出力を与えてくれます。ここに私のコードは次のとおりです。 -Hadoopフレームワークを使用してJavaで異なる出力が発生する
Mycode(カスタム書き込み可能)
package com.some.writable;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.io.WritableComparable;
public class Mycode implements WritableComparable<Mycode> {
Text first;
Text second;
public Mycode(Text first, Text second) {
set(first, second);
}
public Mycode() {
set(new Text(), new Text());
}
public Mycode(String first, String second) {
set(new Text(first), new Text(second));
}
public Text getFirst() {
return first;
}
public Text getSecond() {
return second;
}
public void set(Text first, Text second) {
this.first = first;
this.second = second;
}
@Override
public void readFields(DataInput in) throws IOException {
first.readFields(in);
second.readFields(in);
}
@Override
public void write(DataOutput out) throws IOException {
first.write(out);
second.write(out);
}
@Override
public int compareTo(Mycode tp) {
int cmp = first.compareTo(tp.first);
if (cmp != 0) {
return cmp;
}
return second.compareTo(tp.second);
}
@Override
public int hashCode(){
return first.hashCode() + second.hashCode();
}
@Override
public boolean equals(Object o)
{
if(o instanceof Mycode)
{
Mycode tp = (Mycode) o;
return first.equals(tp.first) && second.equals(tp.second);
}
return false;
}
}
mywritablemapper.java(マッパークラス)
package com.some.writable;
import java.io.IOException;
import java.util.StringTokenizer;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Mapper;
public class mywritablemapper extends
Mapper<LongWritable, Text, Mycode, IntWritable>{
static int i=-1;
static int j=-1;
Mycode n=new Mycode();
@Override
public void map(LongWritable key, Text value, Context context)
throws IOException, InterruptedException, NumberFormatException {
String[] iteam= {"NIVEA","CHICKEN","BURGER","JEANS","SHIRT","T-SHIRT","BOOKS","JACKETS","SHOES","MOBILES","PEPSI","PEN"};
String[] months = {"JAN", "FEB", "MAR","APR","MAY","JUN","JUL","AUG","SEP","OCT","NOV","DEC"};
String iteam_size= iteam[j+1];
String size= months[i+1];
String line = value.toString();
StringTokenizer st=new StringTokenizer(line," ");
String agg = new String();
while(st.hasMoreTokens())
{
agg=st.nextToken();
IntWritable a = new IntWritable(Integer.parseInt(agg));
Text z= new Text(size);
Text x =new Text(iteam_size);
n.set(z,x);
context.write(n,a);
System.out.println(n+" "+a);
}
j++;
i++;
}
}
減速クラス: -
package com.some.writable;
import java.io.IOException;
import java.util.StringTokenizer;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Mapper;
import org.apache.hadoop.mapreduce.Reducer;
public class mywritablereducer extends Reducer<Mycode, IntWritable, Text, IntWritable>{
Text ab = new Text();
public void reduce(Mycode key, Iterable<IntWritable> values, Context context)
throws IOException, InterruptedException {
int count=0;
for(IntWritable value: values)
{
count += value.get();
}
ab.set(key.toString());
context.write(ab, new IntWritable(count));
System.out.println(ab+""+count);
}
}
driverclass
package com.some.writable;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
import org.apache.hadoop.util.GenericOptionsParser;
//import com.some.iteams.Iteamreducer;
import com.some.writable.mywritablemapper;
import com.some.writable.mywritablereducer;
public class mywritabledriver {
public static void main(String[] args) throws Exception {
Configuration conf = new Configuration();
String[] programArgs =
new GenericOptionsParser(conf, args).getRemainingArgs();
/*if (programArgs.length != 2) {
System.err.println("Usage: MaxTemp <in> <out>");
System.exit(2);
}*/
Job job = new Job(conf, "MycodeWritable");
job.setJarByClass(mywritabledriver.class);
job.setMapperClass(mywritablemapper.class);
job.setReducerClass(mywritablereducer.class);
job.setMapOutputKeyClass(Mycode.class);
job.setMapOutputValueClass(IntWritable.class);
job.setOutputKeyClass(Text.class);
job.setOutputValueClass(IntWritable.class);
FileInputFormat.addInputPath(job, new Path("/home/biadmin/Record.txt"));
FileOutputFormat.setOutputPath(job, new Path("/home/biadmin/dead"));
System.exit(job.waitForCompletion(true) ? 0 : 1);
}
}
私はミスをやっているところを知らないアウトプット(出力は月の列、項目欄は、合計値のようにする必要があります)
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.job.name is deprecated. Instead, use mapreduce.job.name
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.mapoutput.key.class is deprecated. Instead, use mapreduce.map.output.key.class
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.mapoutput.value.class is deprecated. Instead, use mapreduce.map.output.value.class
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.output.key.class is deprecated. Instead, use mapreduce.job.output.key.class
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.output.value.class is deprecated. Instead, use mapreduce.job.output.value.class
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.input.dir is deprecated. Instead, use mapreduce.input.fileinputformat.inputdir
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.output.dir is deprecated. Instead, use mapreduce.output.fileoutputformat.outputdir
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.reduce.tasks is deprecated. Instead, use mapreduce.job.reduces
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.job.tracker is deprecated. Instead, use mapreduce.jobtracker.address
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.map.tasks is deprecated. Instead, use mapreduce.job.maps
16/12/25 04:04:31 INFO Configuration.deprecation: session.id is deprecated. Instead, use dfs.metrics.session-id
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.job.queue.name is deprecated. Instead, use mapreduce.job.queuename
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.submit.replication is deprecated. Instead, use mapreduce.client.submit.file.replication
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.used.genericoptionsparser is deprecated. Instead, use mapreduce.client.genericoptionsparser.used
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.cache.archives is deprecated. Instead, use mapreduce.job.cache.archives
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.cache.files is deprecated. Instead, use mapreduce.job.cache.files
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.jar is deprecated. Instead, use mapreduce.job.jar
16/12/25 04:04:31 WARN mapred.JobClient: No job jar file set. User classes may not be found. See JobConf(Class) or JobConf#setJar(String).
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.working.dir is deprecated. Instead, use mapreduce.job.working.dir
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.reduce.tasks is deprecated. Instead, use mapreduce.job.reduces
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.min.split.size is deprecated. Instead, use mapreduce.input.fileinputformat.split.minsize
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.max.split.size is deprecated. Instead, use mapreduce.input.fileinputformat.split.maxsize
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.input.pathFilter.class is deprecated. Instead, use mapreduce.input.pathFilter.class
16/12/25 04:04:31 INFO input.FileInputFormat: Total input paths to process : 1
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.map.tasks is deprecated. Instead, use mapreduce.job.maps
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.job.queue.name is deprecated. Instead, use mapreduce.job.queuename
16/12/25 04:04:31 INFO Configuration.deprecation: mapreduce.map.class is deprecated. Instead, use mapreduce.job.map.class
16/12/25 04:04:31 INFO Configuration.deprecation: mapreduce.reduce.class is deprecated. Instead, use mapreduce.job.reduce.class
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.local.dir is deprecated. Instead, use mapreduce.cluster.local.dir
16/12/25 04:04:31 INFO Configuration.deprecation: local.cache.size is deprecated. Instead, use mapreduce.tasktracker.cache.local.size
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.cache.files.timestamps is deprecated. Instead, use mapreduce.job.cache.files.timestamps
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.job.classpath.files is deprecated. Instead, use mapreduce.job.classpath.files
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.cache.archives.timestamps is deprecated. Instead, use mapreduce.job.cache.archives.timestamps
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.job.classpath.archives is deprecated. Instead, use mapreduce.job.classpath.archives
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.cache.localFiles is deprecated. Instead, use mapreduce.job.cache.local.files
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.cache.localArchives is deprecated. Instead, use mapreduce.job.cache.local.archives
16/12/25 04:04:31 WARN mapred.LocalJobRunner: LocalJobRunner does not support symlinking into current working dir.
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.child.tmp is deprecated. Instead, use mapreduce.task.tmp.dir
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.map.tasks is deprecated. Instead, use mapreduce.job.maps
16/12/25 04:04:31 INFO Configuration.deprecation: user.name is deprecated. Instead, use mapreduce.job.user.name
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.job.name is deprecated. Instead, use mapreduce.job.name
16/12/25 04:04:31 INFO Configuration.deprecation: jobclient.output.filter is deprecated. Instead, use mapreduce.client.output.filter
16/12/25 04:04:31 INFO mapred.JobClient: Running job: job_local_0001
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.task.profile is deprecated. Instead, use mapreduce.task.profile
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.task.profile.maps is deprecated. Instead, use mapreduce.task.profile.maps
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.task.profile.reduces is deprecated. Instead, use mapreduce.task.profile.reduces
16/12/25 04:04:31 INFO mapred.LocalJobRunner: OutputCommitter set in config null
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.output.dir is deprecated. Instead, use mapreduce.output.fileoutputformat.outputdir
16/12/25 04:04:31 INFO mapred.LocalJobRunner: OutputCommitter is org.apache.hadoop.mapreduce.lib.output.FileOutputCommitter
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.reduce.tasks is deprecated. Instead, use mapreduce.job.reduces
16/12/25 04:04:31 INFO Counters.deprecation: Group org.apache.hadoop.mapred.Task$Counter is deprecated. Use org.apache.hadoop.mapreduce.TaskCounter instead
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.local.dir is deprecated. Instead, use mapreduce.cluster.local.dir
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.tip.id is deprecated. Instead, use mapreduce.task.id
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.task.id is deprecated. Instead, use mapreduce.task.attempt.id
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.task.is.map is deprecated. Instead, use mapreduce.task.ismap
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.task.partition is deprecated. Instead, use mapreduce.task.partition
16/12/25 04:04:31 INFO Configuration.deprecation: mapred.job.id is deprecated. Instead, use mapreduce.job.id
16/12/25 04:04:31 INFO Configuration.deprecation: hadoop.net.static.resolutions is deprecated. Instead, use mapreduce.tasktracker.net.static.resolutions
16/12/25 04:04:32 INFO Configuration.deprecation: mapred.working.dir is deprecated. Instead, use mapreduce.job.working.dir
16/12/25 04:04:32 INFO Configuration.deprecation: mapred.work.output.dir is deprecated. Instead, use mapreduce.task.output.dir
16/12/25 04:04:32 INFO util.ProcessTree: setsid exited with exit code 0
16/12/25 04:04:32 INFO mapred.Task: Using ResourceCalculatorPlugin : [email protected]
16/12/25 04:04:32 INFO Configuration.deprecation: mapred.skip.on is deprecated. Instead, use mapreduce.job.skiprecords
16/12/25 04:04:32 INFO Configuration.deprecation: io.sort.spill.percent is deprecated. Instead, use mapreduce.map.sort.spill.percent
16/12/25 04:04:32 INFO Configuration.deprecation: io.sort.mb is deprecated. Instead, use mapreduce.task.io.sort.mb
16/12/25 04:04:32 INFO mapred.MapTask: io.sort.mb = 100
16/12/25 04:04:32 INFO mapred.MapTask: data buffer = 79691776/99614720
16/12/25 04:04:32 INFO mapred.MapTask: record buffer = 262144/327680
16/12/25 04:04:32 INFO Configuration.deprecation: mapred.output.key.comparator.class is deprecated. Instead, use mapreduce.job.output.key.comparator.class
16/12/25 04:04:32 INFO Configuration.deprecation: mapred.mapoutput.key.class is deprecated. Instead, use mapreduce.map.output.key.class
16/12/25 04:04:32 INFO Configuration.deprecation: mapred.mapoutput.value.class is deprecated. Instead, use mapreduce.map.output.value.class
16/12/25 04:04:32 INFO Configuration.deprecation: mapred.compress.map.output is deprecated. Instead, use mapreduce.map.output.compress
16/12/25 04:04:32 INFO Configuration.deprecation: min.num.spills.for.combine is deprecated. Instead, use mapreduce.map.combine.minspills
16/12/25 04:04:32 INFO Configuration.deprecation: mapred.linerecordreader.maxlength is deprecated. Instead, use mapreduce.input.linerecordreader.line.maxlength
[email protected] 92
[email protected] 34
[email protected] 100
[email protected] 100
[email protected] 11
[email protected] 399
[email protected] 200
[email protected] 100
[email protected] 23
[email protected] 45
[email protected] 12
[email protected] 89
[email protected] 200
[email protected] 100
[email protected] 200
[email protected] 293
[email protected] 12
[email protected] 200
[email protected] 214
[email protected] 34
[email protected] 45
[email protected] 12
[email protected] 65
[email protected] 29
[email protected] 11
[email protected] 53
[email protected] 39
[email protected] 50
[email protected] 11
[email protected] 39
[email protected] 65
[email protected] 54
[email protected] 53
[email protected] 400
[email protected] 200
[email protected] 300
[email protected] 14
[email protected] 33
[email protected] 34
[email protected] 11
[email protected] 89
[email protected] 100
[email protected] 14
[email protected] 15
[email protected] 83
[email protected] 11
[email protected] 512
[email protected] 499
[email protected] 200
[email protected] 100
[email protected] 32
[email protected] 65
[email protected] 48
[email protected] 22
[email protected] 100
[email protected] 240
[email protected] 45
[email protected] 32
[email protected] 12
[email protected] 25
[email protected] 21
[email protected] 65
[email protected] 300
[email protected] 200
[email protected] 100
[email protected] 65
[email protected] 89
[email protected] 200
[email protected] 189
[email protected] 0
[email protected] 51
[email protected] 23
[email protected] 65
[email protected] 98
[email protected] 0
[email protected] 24
[email protected] 45
[email protected] 12
[email protected] 599
[email protected] 52
[email protected] 13
[email protected] 53
[email protected] 92
com.some.writable.[email protected] 1
[email protected] 143
[email protected] 41
[email protected] 244
[email protected] 43
[email protected] 50
[email protected] 25
[email protected] 100
[email protected] 56
[email protected] 192
[email protected] 52
[email protected] 22
[email protected] 100
[email protected] 41
[email protected] 41
[email protected] 53
[email protected] 55
[email protected] 100
[email protected] 41
[email protected] 21
[email protected] 289
[email protected] 33
[email protected] 15
[email protected] 35
[email protected] 395
[email protected] 11
[email protected] 400
[email protected] 0
[email protected] 14
[email protected] 100
[email protected] 433
[email protected] 200
[email protected] 100
[email protected] 100
[email protected] 100
[email protected] 32
[email protected] 22
[email protected] 0
[email protected] 22
[email protected] 22
[email protected] 11
[email protected] 104
[email protected] 45
[email protected] 11
[email protected] 51
[email protected] 22
[email protected] 150
[email protected] 31
[email protected] 15
[email protected] 24
[email protected] 500
[email protected] 200
[email protected] 53
[email protected] 192
[email protected] 67
[email protected] 240
[email protected] 0
[email protected]6844 100
[email protected] 0
[email protected] 150
[email protected] 29
[email protected] 40
[email protected] 70
[email protected] 0
[email protected] 0
[email protected] 50
[email protected] 200
[email protected] 0
[email protected] 0
[email protected] 0
[email protected] 205
[email protected] 0
[email protected] 100
[email protected] 200
[email protected] 300
[email protected] 0
[email protected] 323
[email protected] 50
[email protected] 0
[email protected] 50
[email protected] 200
[email protected] 100
[email protected] 0
[email protected] 100
[email protected] 23
16/12/25 04:04:32 INFO mapred.MapTask: Starting flush of map output
16/12/25 04:04:32 INFO mapred.MapTask: Finished spill 0
16/12/25 04:04:32 INFO mapred.Task: Task:attempt_local_0001_m_000000_0 is done. And is in the process of commiting
16/12/25 04:04:32 INFO Counters.deprecation: Group FileSystemCounters is deprecated. Use org.apache.hadoop.mapreduce.FileSystemCounter instead
16/12/25 04:04:32 INFO mapred.LocalJobRunner:
16/12/25 04:04:32 INFO mapred.Task: Task 'attempt_local_0001_m_000000_0' done.
16/12/25 04:04:32 INFO Counters.deprecation: Group org.apache.hadoop.mapred.Task$Counter is deprecated. Use org.apache.hadoop.mapreduce.TaskCounter instead
16/12/25 04:04:32 INFO Configuration.deprecation: mapred.map.tasks is deprecated. Instead, use mapreduce.job.maps
16/12/25 04:04:32 INFO mapred.Task: Using ResourceCalculatorPlugin : [email protected]
16/12/25 04:04:32 INFO Configuration.deprecation: mapred.job.tracker is deprecated. Instead, use mapreduce.jobtracker.address
16/12/25 04:04:32 INFO mapred.LocalJobRunner:
16/12/25 04:04:32 INFO Configuration.deprecation: keep.failed.task.files is deprecated. Instead, use mapreduce.task.files.preserve.failedtasks
16/12/25 04:04:32 INFO Configuration.deprecation: io.sort.factor is deprecated. Instead, use mapreduce.task.io.sort.factor
16/12/25 04:04:32 INFO mapred.Merger: Merging 1 sorted segments
16/12/25 04:04:32 INFO mapred.Merger: Down to the last merge-pass, with 1 segments left of total size: 2788 bytes
16/12/25 04:04:32 INFO mapred.LocalJobRunner:
16/12/25 04:04:32 INFO Configuration.deprecation: mapred.output.value.groupfn.class is deprecated. Instead, use mapreduce.job.output.group.comparator.class
16/12/25 04:04:32 INFO Configuration.deprecation: mapred.output.compress is deprecated. Instead, use mapreduce.output.fileoutputformat.compress
16/12/25 04:04:32 INFO Configuration.deprecation: mapred.textoutputformat.separator is deprecated. Instead, use mapreduce.output.textoutputformat.separator
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
[email protected]
16/12/25 04:04:32 INFO mapred.Task: Task:attempt_local_0001_r_000000_0 is done. And is in the process of commiting
16/12/25 04:04:32 INFO Counters.deprecation: Group FileSystemCounters is deprecated. Use org.apache.hadoop.mapreduce.FileSystemCounter instead
16/12/25 04:04:32 INFO mapred.LocalJobRunner:
16/12/25 04:04:32 INFO mapred.Task: Task attempt_local_0001_r_000000_0 is allowed to commit now
16/12/25 04:04:32 INFO output.FileOutputCommitter: Saved output of task 'attempt_local_0001_r_000000_0' to file:/home/biadmin/dead
16/12/25 04:04:32 INFO mapred.LocalJobRunner: reduce > reduce
16/12/25 04:04:32 INFO mapred.Task: Task 'attempt_local_0001_r_000000_0' done.
16/12/25 04:04:32 INFO Configuration.deprecation: job.end.notification.url is deprecated. Instead, use mapreduce.job.end-notification.url
16/12/25 04:04:32 INFO mapred.JobClient: map 100% reduce 100%
16/12/25 04:04:32 INFO mapred.JobClient: Job complete: job_local_0001
16/12/25 04:04:32 INFO mapred.JobClient: Counters: 20
16/12/25 04:04:32 INFO mapred.JobClient: File System Counters
16/12/25 04:04:32 INFO mapred.JobClient: FILE: BYTES_READ=4452
16/12/25 04:04:32 INFO mapred.JobClient: FILE: BYTES_WRITTEN=198006
16/12/25 04:04:32 INFO mapred.JobClient: org.apache.hadoop.mapreduce.TaskCounter
16/12/25 04:04:32 INFO mapred.JobClient: MAP_INPUT_RECORDS=12
16/12/25 04:04:32 INFO mapred.JobClient: MAP_OUTPUT_RECORDS=168
16/12/25 04:04:32 INFO mapred.JobClient: MAP_OUTPUT_BYTES=2450
16/12/25 04:04:32 INFO mapred.JobClient: MAP_OUTPUT_MATERIALIZED_BYTES=2792
16/12/25 04:04:32 INFO mapred.JobClient: SPLIT_RAW_BYTES=94
16/12/25 04:04:32 INFO mapred.JobClient: COMBINE_INPUT_RECORDS=0
16/12/25 04:04:32 INFO mapred.JobClient: COMBINE_OUTPUT_RECORDS=0
16/12/25 04:04:32 INFO mapred.JobClient: REDUCE_INPUT_GROUPS=12
16/12/25 04:04:32 INFO mapred.JobClient: REDUCE_SHUFFLE_BYTES=0
16/12/25 04:04:32 INFO mapred.JobClient: REDUCE_INPUT_RECORDS=168
16/12/25 04:04:32 INFO mapred.JobClient: REDUCE_OUTPUT_RECORDS=12
16/12/25 04:04:32 INFO mapred.JobClient: SPILLED_RECORDS=336
16/12/25 04:04:32 INFO mapred.JobClient: CPU_MILLISECONDS=0
16/12/25 04:04:32 INFO mapred.JobClient: PHYSICAL_MEMORY_BYTES=0
16/12/25 04:04:32 INFO mapred.JobClient: VIRTUAL_MEMORY_BYTES=0
16/12/25 04:04:32 INFO mapred.JobClient: COMMITTED_HEAP_BYTES=299237376
16/12/25 04:04:32 INFO mapred.JobClient: File Input Format Counters
16/12/25 04:04:32 INFO mapred.JobClient: Bytes Read=680
16/12/25 04:04:32 INFO mapred.JobClient: org.apache.hadoop.mapreduce.lib.output.FileOutputFormat$Counter
16/12/25 04:04:32 INFO mapred.JobClient: BYTES_WRITTEN=470
はそれに
は、私はいくつかのチュートリアルや、私は私が書くことができるように、それらについての詳細を学びたいいくつかの並べ替えを意味私のハッシュコードにいくつかのより多くの情報を与えることができます効率的に感謝します。 – Anmol
@Anmolこの質問をチェックすることができますhttp://stackoverflow.com/questions/113511/best-implementation-for-hashcode-method – AdamSkywalker
@Anmolまたはこの投稿はhttps://www.mkyong.com/java/java-howオーバーライド - 等しい/ハッシュコード/ – AdamSkywalker