how to desing table for grouping
要求,相同members组成的group id 要一样,不同members组成的group id 不能相同。
e.g.
已有分组:
Member Group ID
A 1
B 1
C 1
D 2
E 2
F 2
当改变分组方式,group id 相应要变
Member Group ID
A 3
B 3
C 3
D 3
E 3
F 3
如果把A,B,C再分为同一group,group id要变为原来的 id - 1. (单一member,其group id 总是 0 )
Member Group ID
A 1
B 1
C 1
D 4
E 4
F 0
很自然,应该需要另一table,记录members与Group id 的关系。
Member Key Group ID
ABC 1
DEF 2
ABCDEF 3
DE 4
目前的问题是,组成group的members数量不定,Member key可能很长,当member数量很多的时候,performace是个问题。
请教更好的table design,或者有其他idea?
曾经试过用hashmap的hashcode表示分组关系(相同members返回相同hashcode),但发觉不同members返回的hashcode有可能一样的。