MySQL はBTREEインデックスの作成時にデフォルトで使用するため、使用できるインスタンスはありますHASHか? たとえば、テーブルが単なるINT UNSIGNED値である外部キーのみで構成されている場合。この場合、BTREE を HASH でオーバーライドすることは良い改善ですか?
それが問題かどうかはわかりませんが、私は使用してInnoDBいます。
HASHインデックス タイプはMEMORY(別名HEAP) ストレージ エンジンでのみサポートされます。
ここを参照してください: 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 テーブル用に自動的に構築される、このインデックス タイプのバリアントであるアダプティブ ハッシュ インデックスが含まれています。