分区算法测试

来源:互联网 发布:nba勇士队格林数据 编辑:程序博客网 时间:2024/05/17 23:31

8个数据库数据量测试,分布情况
这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

16个数据库数据分布情况
这里写图片描述

代码:

import java.util.UUID;import org.apache.commons.codec.digest.DigestUtils;import org.apache.commons.lang3.Conversion;public class PartitionUtil {    public final static long mod = 1024L;    /**     *      * @param id     *            需转换的主键     * @param i     *            需分布的规模 2的次方     * @return     */    public static Long partitioning(String id, int i) {        byte[] bs = DigestUtils.sha1(id);        UUID long1 = Conversion.byteArrayToUuid(bs, 0);        double d = Math.pow(2, i);        Long l = (long) (long1.getLeastSignificantBits() % mod % d);        return Math.abs(l);    }}
0 0
原创粉丝点击