かなめのロジックかなめのロジックフリーSEの雑記ブログ。ORACLEやPostgreSQL、情報セキュリティ、金融について主に書いています。PostgreSQLtwitterfacebookhatenabookmarklineSQLが遅い...。そんな時にまず確認する必要があるのが、そのSQLの実行計画です。本記事では、PostgreSQLにおけるSQLの実行計画の取得方法をまとめました。まとめ実行計画とは実行計画とは、短い時間でSQLを処理するために計算して具体的な方法のことです。検索条件にインデックスが張られているのでインデックスを使用して検索をかけよう、といったようなことです。データベースの中のオプティマイザという機能が実行計画を立てます。SQL文】で取得することができます。実行計画を出力するだけで、実際にSQLは実行されません。以下は、単純にテーブルを全項目全件取得するSQLでの実行計画の取得例です。Scan」とあるので、test_table1テーブルを単純に全件検索していることが分かります。ちなみに、「(cost...」の部分は推定値です。「cost」の左側の数字は初期処理の推定コスト、例えばハッシュ結合の際のハッシュ表を作成するコストです。「cost」の右側の数字は全体推定コストです。「cost」は数字が大きければ大きいほど処理時間がかかることを意味しますが、決して具体的な時間を表しているわけではありません。「rows」は行の推定数です。「width」は1行あたりの推定平均幅(バイト)です。上記しましたが、実際にSQLは実行されないため、更新や削除などのデータを変更するSQLの実行計画も気楽に取得することができます。SQL文】で、実際にSQLを実行し、実際の実行時間も合わせて取得することも可能です。time...」の部分が実際にSQLを実行して得た数値です。time」の左側の数字は1行目のデータを処理するまでの時間です。time」の右側の数字は全体の処理時間です。time」は「cost」と具体的な時間(ミリ秒)を表しています。「rows」は行数です。「loops」は実行する回数です。time」は実行計画を立てるためにかかった時間(ミリ秒)です。time」は実行計画に基づいた処理にかかった時間(ミリ秒)です。実際に実行をするため、特に本番環境で実行する際には注意が必要です。ANALYZE実行後にROLLBACKしてデータを戻すことが必須です。(それでも対象にロックがかかるので要注意)SELECT文でも負荷のかかるSQLだと、他セッションのSQLの処理時間に影響を与えてしまう可能性もあります。以下はデータの更新がかかることの例です。test_table1;count-------0実際にデータが更新されてしまうことを防ぐために、ROLLBACKをする例です。実行計画を出力するだけで、実際にSQLは実行されないため、更新や削除などのデータを変更するSQLの実行計画も気楽に取得することができます。SQL文】で、実際にSQLを実行し、実際の実行時間も合わせて取得することも可能ですが、本番環境で実行する際は注意が必要です。ORACLEと金融と子育ての狭間で、元気に楽しくやってます。thumbnail2016/06/11ラップ口座・ファンドラップにかかる費用moreシステムエンジニア2018/01/15ITストラテジスト合格体験記2016/12/16システムアーキテクト合格体験記2016/06/20情報セキュリティスペシャリスト合格体験記2016/06/03人を見てスケジュールを立てよう2016/05/09家庭教師の営業のアルバイトで、仕事観が形成された話moreフリーランス2016/05/02フリーランスになる前にローンを組む危険性2016/04/08フリーランスになるなら、まずは開業届を提出しよう2016/02/20フリーランスの収入がなくなる不安と、たった2つの対処法2016/02/15フリーランスのデメリット、社会的信用がとても低い2016/02/14フリーランスの収入面でのデメリットmore子供のこと2016/12/29妻が緊急手術&入院!困ったことと備えておけばよかったこと2016/10/24自転車の練習2016/09/24シャボン玉を作るおもちゃ2016/09/22スーパー銭湯、子供も大人も大満足2016/05/21室内で遊ぶなら「ひらがなつみき」が超オススメmore男のざっくりご飯2018/02/04鶏チリ、ケチャップを使って簡単に作る2017/07/30豚キムチうどん、夏にも冬にもおすすめ!2017/05/08長野の郷土料理、鶏肉の山賊焼き(もも肉)2017/02/21鶏肉のマヨポン炒め(ニンニク風味)、こってり&さっぱり♪2017/02/05野菜たっぷり鮭ピラフmoreライフハック2017/01/24健康だからこそ仕事・勉強・遊びができる2017/01/07埼玉県民共済、あっという間に共済金が支払われました!2016/12/14ネットの車売却一括査定に登録すると起こること2016/06/23住民税、社会人2年目の6月に給与の手取りが減るという衝撃2016/05/19WordPress、メンテナンス中のままになった場合の対処more買ってよかったもの2016/03/20コストコのプルコギビーフ、美味しいけど辛くない、子供もよく食べる2016/02/05コストコのマルチグレインロール、ツブツブ食感が癖になる2016/02/04ブルーライトをカットするPC用眼鏡、目の疲れが緩和!2016/01/19MIYABI、デニッシュ食パンが最高です!2016/01/18コストコの軽量アルミショベル、雪かきに重宝しますよmore美味しかったお店2017/01/09串家物語、ショッピングモールに行った際にどうぞ!2016/04/02麦の城の「かすうどん」と「かす蕎麦」、絶品です2016/03/25千成飯店、大森駅のすぐ近く、日本人好みの美味しい中華が楽しめます2016/03/11やきとり道場、600円ランチがうまい!2016/02/18大森駅すぐそばの満天酒場、ワンコインランチで大満足more日記2018/01/102018年の目標2018/01/012017年振り返り2017/01/022017年の目標2016/12/312016年を振り替える、目標は達成できたのか2016/03/14母の一周忌。ORACLEと金融と子育ての狭間で、元気に楽しくやってます。Reserved.arrowuphome。