public void map( LongWritable key, Text value, OutputCollector<LongWritable, Text> output, Reporter reporter) throws IOException { int slotId = Integer.parseInt(value.toString().trim()); html.fireRandom(slotId); long[] range = HtmlCore.getPageRange(slotId, pages, slotpages); /** For output collect */ for (long i = range[0]; i < range[1]; i++) { key.set(i); long[] linkids = html.genPureLinkIds(); for (int j = 0; j < linkids.length; j++) { String to = Long.toString(linkids[j]); Text v = new Text(to); output.collect(key, v); reporter.incrCounter(HiBench.Counters.BYTES_DATA_GENERATED, 8 + v.getLength()); } if (0 == (i % 10000)) { log.info("still running: " + (i - range[0]) + " of " + slotpages); } } }