php - MySQL ストレージ エンジン
高洛峰
高洛峰 2017-05-16 13:05:44
0
4
796

mysql 5.6 以降では、innodb と myisam のどちらがデータのクエリが高速ですか。証拠を教えてもらえますか?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全員に返信(4)
漂亮男人

個人テスト (MySQL バージョン 5.7.18)、それぞれ 60W と 1W のレコードをテスト
インデックスがある場合、MyISAM は Innodb クエリよりも高速で、差はわずかです
インデックスがない場合、MyISAM は Innodb クエリより高速で、クエリ速度の差は約1回

いいねを押す +0
左手右手慢动作

わずかな変更を伴う多数のクエリ (挿入、更新、削除) ==> MyISAM

全文検索のサポート、MySQL バージョンは 5.5 未満 ==> MyISAM

それ以外の場合は、innodb を使用してください

本題から外れます:
私を含め、ほとんどの人は怠け者です。インターネット上で多くの結論があることを時間をかけて証明する「Lei Feng」はほとんどいないと推定されます。
関連するトピックを自分で検索してください。他の人が行った比較がたくさん見つかると思います。これらの結論にまだ懐疑的な場合は、他の人がオンラインで行ったものは、mysql の古いバージョンである可能性が高いため、自分で調査することもできます。説得力のあるベンチマークを作成する方法について尋ねる場合は、自分でベンチマーク テストを実施する方がよいかもしれません。

いいねを押す +0
習慣沉默

どちらが速いかはビジネスロジックに基づいて判断する必要があるため、直接言うことはできません。ただし、インターネット上では、クエリの方が速いと考えている人が多いことに注意してください。 myisam一定要比innodb快,的确,当我们在对整个表不加以任何条件进行查询统计时,myisam的确要快一些,这是因为myisam在插入数据的时候会更新表的数据,当我们查询的时候,直接走的统计数量
但是,一旦当我们给sql语句加入条件时,innodb并不一定会比myisam慢,因为此时都是走的磁盘索引,即使是面对第一种情况,我们也可以用一个总数跟进表来统计总数,所以,一般没有特殊情况的话,建议InnoDB

いいねを押す +0
淡淡烟草味

しかし、2 つのエンジンを分析すると、MYISAM は INNODB よりも高速です。これは、INNODB が SELECT を実行するときに、MYISAM エンジンよりも多くのことを維持する必要があるためです。
1. INNODB、INNODB はキャッシュする必要があり、MYISAM はインデックス ブロックのみをキャッシュします。途中でのスワップインとスワップアウトも減少します。
2. INNODB アドレス指定はブロックにマッピングしてから行にマッピングする必要があり、MYISAM はファイルの OFFSET を直接記録するため、位置決めは INNODB よりも高速です。
3.INNODB は MVCC の一貫性を維持する必要もあります。シナリオには存在しませんが、MVCC (Multi-Version Concurrency Control) マルチバージョンの同時実行制御をチェックして維持する必要があります

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート