例如一个大型网站,内容很多 可以根据id 取模运算分配到不同的数据表中, post加上 id%10这样存放
但是如果没有这个id 如果通过字符串来平均分配呢?
取字符串的hashcode,模切分的表或库的个数来随机分配到不同的数据库中。
举个栗子:
private static int HashCode(string sh)
{
int h = 0;
for (int i = 0; i < sh.Length; i++) {
h = 31 * h + sh[i];
}
return h;
}
这是用.net 模拟java的hashcode。
1、一般表都需要设置一个主键或者编号
2、你也可以根据某个特定的字段类分库分表, 比如性别,男的一个库,女的一个库。
对hash取模