sql >> データベース >  >> RDS >> Mysql

InnoDB複合インデックス作成順序とINSERTパフォーマンス

    (注:この回答は、すでに書かれているコメントの一部を明確にしている、または同意していません。)

    DELETEs インデックスエントリを削除するため、速度が低下します。 更新 かもしれません 速度を落とす-インデックス付きの列が変更されたかどうかによって異なります。

    SELECTs UPDATEs 、および DELETEs 、ただし INSERTsではありません 、行を見つける必要があります。このため、インデックスは大いに役立つかもしれません。

    INSERT UNIQUE がある場合、余分な量が傷つきます チェックするインデックス。

    二次キー(InnoDB内)、例外 UNIQUEの場合 キーが更新されます(通常は INSERT が原因です) およびDELETE 、ただし、おそらく UPDATEが原因です )「バッファの変更」と呼ばれるものを介して「遅延」した方法で。これにより、インデックスの更新が効果的に延期されますが、インデックスは完全に使用可能になります。

    これは、インデックス内の列の順序による影響を受けません。ただし、インデックスがRAMにキャッシュできるよりも大きい場合は、「キャッシュ」が機能し、I/Oが関与する場合と関与しない場合があります。しかし、それは別のトピックです。

    一般的に、メリット 読書用のインデックスからはるかに重要 書き込み操作の速度低下。



    1. mysqlでINNODBを有効にする方法

    2. Java + SSH + Postgres

    3. php mysqlを介してjsonデータを保存および読み取る方法は?

    4. Doctrine2でテーブルタイプ/ストレージエンジンを指定します