LoginSignup
0

More than 1 year has passed since last update.

posted at

データベースを速くするためのチューニングについて

チューニングとは

いい感じになるように調整することがチューニングですが、
ここでいうチューニングとはDBの処理がスムーズになるように調整するイメージです。

⚫︎補足
DBはデータベースの略

DBが遅い理由

DBの処理が遅い理由は下の2点みたいです。

1.クエリがたくさんあるから
2.1本のクエリが遅いから

1点ずつみていきます。

⚫︎クエリがたくさんある
SELECTの大量発行
N+1問題のことでループ処理の中でSQLを発行し、SQLが増えすぎてしまうことです。
joinとeager_loadを使うみたいです。下の記事を参照お願いします。

INSERTが遅くなるケースです。
大量のINSERTをするケースです。

1.バッチ処理
2.データ移行
 これをバルクINSERTで速くできます。

⚫︎1本のクエリが遅い
DBの検索が遅くなる原因としてDBの量が増えるからです。
この解決策は下の流れみたいです。

1.インデックスをはる
2.実行計画の確認
3.パーティションをはる

それぞれみていきます。

1.インデックスをはる
インデックスの確認方法
desc テーブル名
show create table テーブル名

  1. 実行計画の確認

3.パーティション

SELECTINSERTの大量発行が多いみたいです
⚫︎補足
クエリとはデータベース管理システムの命令文のこと

⚫︎参考資料
https://wa3.i-3-i.info/word12921.html

⚫︎参考動画
https://m.youtube.com/watch?v=UWSWKUMd71Q&list=PL-1KBX2gDRujQaRgEByueezHBiqHP8KDD&index=13

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
0