0

私の DB に保存されているテキストのほとんどは、1MB から 1.5MB の大きさです。しかし、それが私が設定した制限であるため、1.5MB より大きくはありません。

ここに私のニーズがあります:

  • mysql データベースのサイズを小さくするために必要です
  • できるだけ速くする必要があります
  • セキュリティは必要ありません
  • string_1 と string_2 が同じハッシュを持つことがないように、正しく動作する必要があります

私はPHPとMYSQLを使用しています。

4

4 に答える 4

1

SHA1 は、文字列を識別するために git や同様のアプリケーションでも使用されているため、SHA1 をお勧めします。

参照: https://en.wikipedia.org/wiki/Sha1 および: http://php.net/manual/en/function.hash.php

$hash = hash( 'sha1', $inputData );
于 2013-09-13T17:01:13.780 に答える
1

省スペース

  • MySQL には、追加の PHP コードを記述する必要があるだけでなく、DB のスペースを節約する機能が組み込まれCOMPRESS()ています。UNCOMPRESS()

一意性の確認

  • [圧縮されているかどうかに関係なく]列にインデックスを付ける代わりにTEXT、そのテキストが一意であることを保証する2つの比較的小さなものを格納してインデックスを付けることができます。

    1. データのハッシュ、MD5、SHA、必要なものは何でも。
    2. 非圧縮データの長さ。
  • ほとんどのハッシュ関数では、異なるテキスト文字列に対して 2 つの同一のハッシュを使用するよりも隕石に当たる可能性が高く、2 つの同一の長さとハッシュ文字列を使用することは、同時に 3 つの宝くじに当選しているときに隕石と雷に当たる可能性が低くなります。

于 2013-09-13T17:26:58.603 に答える
0

テキストサイズを縮小する圧縮アルゴリズムが必要だと仮定します。

http://php.net/manual/en/function.gzcompress.phpを参照してください。

于 2013-09-13T17:01:32.187 に答える