ホームページ >データベース >mysql チュートリアル >SHA1 ハッシュ値を MySQL に効率的に保存するにはどうすればよいですか?
SHA1 ハッシュ値を MySQL に効率的に保存する
SHA1 ハッシュの結果を MySQL データベースに保存する場合、最適なフィールド長。
決定フィールド長
オーバーヘッドが発生するため、SHA1 ハッシュなどの固定長データには VARCHAR を使用しないでください。代わりに、適切な長さの BINARY フィールドを選択してください。
効率的なストレージ
SHA1 ハッシュの長さは 160 ビットです。これをバイナリ形式で保存するには、20 バイト (160/8) が必要です。 UNHEX 関数を使用して SHA1 値をバイナリに変換すると、よりコンパクトなストレージが可能になります。
スペースの最適化
BINARY(20) は、CHAR(40) に比べて必要なストレージ スペースが少なくなります。 。たとえば、100 万レコードの場合、BINARY(20) は 4,456 M のストレージを消費し、CHAR(40) は 6,457 M のストレージを消費します。この最適化は大規模なデータベースで重要になります。
推奨事項
MySQL に SHA1 ハッシュ値を効率的に保存するには、BINARY(20) を使用し、ハッシュを次のように変換することをお勧めします。 UNHEX関数を使用したバイナリ形式。これにより、コンパクトさとスペースの最適化の両方が実現します。
以上がSHA1 ハッシュ値を MySQL に効率的に保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。