私はSQLに基づいてチェックサムを生成する必要がありますクエリと、そのクエリで使用されているパラメータの文字列値を返します。チェックサムは、キャッシュシナリオで使用されます。チェックサムがキャッシュに存在する場合、結果も同様ですが、DBにヒットする必要はありません。
Req 1: 2つの異なるクエリが同じハッシュを生成しないことが重要です。そのため、予期しない結果が返される可能性があります。
Req 2: それは非常に遅くなることはありませんが、再び記憶に残っているので、多くの内容を持つべきではありません。
コンテキストを考えると、どのアルゴリズムが最適ですか? CRC32、MD5、SHA1またはその他何か?
// Daniel
回答:
回答№1は0クエリ文字列全体を通常のHashTable / Dictionary / HashMapの引数、またはあなたの言語で呼び出されるものは何でも。 SQLクエリをキーとして、結果を値として置きます。
HashTableはあなたの文字列に適切なハッシュ関数を使用し、ハッシュの衝突を解決します。