EnterpriseZine(エンタープライズジン)編集部では、情報システム担当、セキュリティ担当の方々向けに、EnterpriseZine Day、Security Online Day、DataTechという、3つのイベントを開催しております。それぞれ編集部独自の切り口で、業界トレンドや最新事例を網羅。最新の動向を知ることができる場として、好評を得ています。
はじめに SQLをチューニングする業務を初めて任されたので、その際に学んだことを復習がてらメモ。初心者なので間違っているところなどありましたらご指摘いただけるととてもありがたいです! 前提 newRelic を使って種々のリソースの応答時間を監視している。そこでレスポンスに時間がかかっていたコントローラから、重いクエリを特定&改善する、というタスクだった。 原因となるSQLの特定 まずここが思っていたより手間取った。AWSのログと照らし合わせながら、コンソールでクエリを叩いて同じ出力になっている場所を確かめる、という方法で探した。 ActiveRecord のexplainを使いながら、ログを確認 AreasArticle.where(parent_id: 401450).explain AreasArticle Load (164.4ms) SELECT `areas_articles`
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く