0
興味深い質問があります。クラスタインデックスとユニークインデックスの違いは何ですか?何がより速く、より速く、なぜですか? MySQLのInnoDBエンジンでクラスタまたは一意のインデックスMySql DB?
興味深い質問があります。クラスタインデックスとユニークインデックスの違いは何ですか?何がより速く、より速く、なぜですか? MySQLのInnoDBエンジンでクラスタまたは一意のインデックスMySql DB?
、あなたは、通常のインデックスの3つの選択肢を得る:
PRIMARY KEY
- データを "クラスタ化" と "独特の"。 (しばしばAUTO_INCREMENT
)UNIQUE
- 一意であり、クラスタ化されていません。INDEX
- ユニークではなく、クラスタ化されていません。すべてがBTreesとして実装されています。 Clusteredとは、データがリーフノードにあることを意味します。
考察:
PRIMARY KEY
必要があります。PRIMARY KEY
またはUNIQUE
の列を指定する必要があります。UNIQUE
またはINDEX
)は、PRIMARY KEY
を介してデータを検索します。推論1:PKによる行の発見がより速い。結果2:かさばる(例えば、VARCHAR(255)
)PKは、すべてのセカンダリキーに負担をかけます。INSERT
は、複製のためにPRIMARY KEY
とUNIQUE
のキーをただちにチェックする必要がありますが、他のセカンダリキーの更新が遅れることがあります。 (このは挿入時のパフォーマンスに影響を与える可能性があります。)これらの詳細から、あなたの質問への答えを推測できる場合があります。
(注意:InnoDB以外のエンジンには、いくつかの特性があります)
[クラスタ化インデックスと非クラスタ化インデックスは実際何を意味するのですか?](http://stackoverflow.com/questions/1251636/what-do-clustered-and-non-clustered-index-actually-mean)または[mysqlドキュメント](https ://dev.mysql.com/doc/refman/5.7/en/innodb-index-types.html)?いいえの場合は、今すぐ実行します。はいの場合:「より良い」(特に「何のため」なしではない)ことはありません。しかし、今はこれを知っておくべきです。より具体的な質問がある場合は、より具体的な質問をする必要があります。 – Solarflare