package com.chinamobile.bcbsp.examples.pagerank; import java.util.zip.CRC32; import org.apache.hadoop.io.Text; import com.chinamobile.bcbsp.api.Partitioner; class MyPartitioner extends Partitioner<Text> { public MyPartitioner(){} public MyPartitioner(int numPartition) { this.numPartition = numPartition; } @Override public int getPartitionID(Text url) { // TODO Auto-generated method stub CRC32 checksum = new CRC32(); checksum.update(url.toString().getBytes()); int crc = (int) checksum.getValue(); long hashcode = (crc >> 16) & 0x7fff; return (int) (hashcode % this.numPartition); } }