Consider applications A1, A2 .. AN
having properties P11, P12,... PN1, PN2..
Also consider buckets B1, B2 ... BN
where each property needs to be mapped. We have the following constraints -
total number of properties >> number of applications
total number of properties >> number of buckets
number of buckets ~= number of applications
Is there a hash algorithm which minimizes the number of distinct application each bucket is mapped to while still guaranteeing even distribution of properties? In other words, if one of the buckets were to be hidden temporarily, the number of distinct applications affected should be minimal.