[pgsql-jp: 29529] Re: INSERTの速度UP に関して
sugita @ sra.co.jp
sugita @ sra.co.jp
2003年 3月 31日 (月) 21:52:38 JST
杉田です。
From: "Tadashi Kanbayashi" <Tadashi.Kanbayashi @ toppan.co.jp>
Subject: [pgsql-jp: 29527] Re: INSERTの速度UP に関して
Date: Mon, 31 Mar 2003 20:34:49 +0900
;;; 複数テーブルのJOINは、括弧で囲まれた一群を1つのテーブルとみなして結合する
;;; と理解していました。
;;; 括弧で囲まないもの同士、JOINの羅列でも文法としては正しいのですね。
括弧の有無に関係なく順にひとつのテーブルとみなして結合していますね。
;;; > ;;; とりあえず、JOINを使わないようにすると約3分で結果が返ってくるので、
;;; > ;;; JOINを使わないSQLに書き換えようと思いますが、それでも約3分かかりま
;;; す。
;;; > ;;; INDEXをはること以外で、何か策はないでしょうか。
;;; >
;;; > まずは、EXPLAIN/EXPLAIN ANALYZE して、インデックス使用などでプランに改
;;; 善の余
;;; > 地があるかを考えるのがいいんじゃないでしょうか?
;;; >
;;;
;;; INDEXスキャンをするようにSQLを改善していくのが良いでしょうか。
;;; SEAQスキャンをなくせるかどうかを、まだ改善の余地があるかどうか
;;; の目安にするで良いでしょうか。
インデックススキャンならばいつでもよいとは言えないです。とても単純に考えると、
リザルトセットが少ないならばインデックススキャンですが、全件検索が必要なクエリー
ならば、インデックススキャンでない方がよいです。
;;; 何がなんでも1つのSQLで処理を完結させるという設計姿勢は良くないですよね?
そういうのも面白いし、突き詰めたいですよね。
Kenji Sugita
pgsql-jp メーリングリストの案内