2017-08-02 3 views

答えて

0

は(「DUP」はMySQL vs MongoDB 1000 reads程度、インサートない読みましたので、私は再び開く。)

MySQLが非常に遅いまたは非常に速いINSERTingにすることができます。 MySQLにとって公平であるためには、遅くなったり遅くなるような詳細を指定する必要があります。

  • MyISAMとInnoDBの違い - MyISAMは死にかけていますが、比較の対象にはなりません。 https://www.percona.com/blog/2016/10/11/mysql-8-0-end-myisam/
  • 挿入される行をバッチします。単一のINSERT文で100行を挿入すると、一度に1行の10倍の速さで簡単に実行できます。
  • LOAD DATA INFILE(.csvから)はさらに高速です。 https://dev.mysql.com/doc/refman/5.6/en/load-data.html
  • InnoDBのトランザクションフラグを検討して、より高速化してください。
  • セカンダリインデックスにはいくつかの影響があります。
  • テーブルの「終わり」に挿入する方が、ランダムな場所に挿入するよりも高速です--UUIDまたはGUIDを考えてください。 http://mysql.rjweb.org/doc.php/uuid
  • テーブルが大きすぎてキャッシュできない場合、UUIDの挿入は最終的にIOPあたり1行にまで減速します。
  • テーブルを挿入する唯一の理由は、後でテーブルをフェッチすることだけであることに注意してください。したがって、フェッチパターンは挿入の最適化に多少の影響を与えます。
関連する問題