6

MySQL はBTREEインデックスの作成時にデフォルトで使用するため、使用できるインスタンスはありますHASHか? たとえば、テーブルが単なるINT UNSIGNED値である外部キーのみで構成されている場合。この場合、BTREE を HASH でオーバーライドすることは良い改善ですか?

それが問題かどうかはわかりませんが、私は使用してInnoDBいます。

4

2 に答える 2

12

HASHインデックス タイプはMEMORY(別名HEAP) ストレージ エンジンでのみサポートされます。

于 2013-02-21T01:50:56.763 に答える
0

ここを参照してください: https://dev.mysql.com/doc/refman/8.0/en/glossary.html#glos_hash_index

ハッシュ インデックス

大なり演算子や BETWEEN などの範囲演算子ではなく、等価演算子を使用するクエリを対象としたインデックスのタイプ。It is available for MEMORY tables. ハッシュ インデックスは歴史的な理由から MEMORY テーブルのデフォルトですが、そのストレージ エンジンは B ツリー インデックスもサポートしています。これは、多くの場合、汎用クエリに適した選択です。

MySQL には、実行時の条件に基づいて必要に応じて InnoDB テーブル用に自動的に構築される、このインデックス タイプのバリアントであるアダプティブ ハッシュ インデックスが含まれています。

于 2021-02-19T17:39:15.970 に答える