データベースに10文字の文字列キーフィールドがあります。 CRC32を使用してこのフィールドをハッシュしましたが、重複が心配です。この状況で衝突の可能性を誰かに見せてもらえますか?
追伸私の文字列フィールドはデータベース内で一意です。文字列フィールドの数が100万の場合、衝突の可能性はどのくらいですか?
答えはこの記事を参照しました: http://arstechnica.com/civis/viewtopic.php?f=20&t=14967
以下から画像を見つけました: http://preshing.com/20110504/hash-collision-probabilities
引用する場合、少なくとも1つの衝突が本質的に保証されます。少なくとも1つの衝突の確率は約1-3x10です-51。予想される衝突の平均数は約116です。
一般に、kサンプルでの衝突の平均数、それぞれn可能な値は次のとおりです。
少なくとも1つの衝突の確率は次のとおりです。
あなたの場合、n= 232 およびk= 106。
あなたの場合、three-way衝突の確率は約0.01です。 誕生日の問題 を参照してください。