2010年10月21日

[pgsql-jp: 40471] Re:SQLの検索性能について

2010/10/21 松元 瑛理子 <e-matsumoto@xxxxx>:
> work_memとshared_buffersでチューニングを実施したのですが、
> 思うように検索性能が改善しませんでした。
...
> →半減する程の速度向上を期待していたのですが、前述のとおり性能改善は見られませんでした。

うーん、そんなに期待できるものなんですかね?
データやクエリにも依りますが、物理メモリを増やすならばともかく、

メモリ系はチューニングしても、それ自体はそんなに性能には貢献しませんよ?
# work_mem を増やして実行計画が変化する、とかなら別ですが。

> データ総数8,000万件(約600万件ずつ13パーティションに分散)
~~~~~~~~~~~~~~~~~~~~~~
「パーティションに分散」というところが重要にみえます。
具体的な定義はどうなっていますか?

> SELECT * FROM LOG_TBL
> WHERE LOG_DATE BETWEEN [下限値] AND [上限値]
> ORDER BY LOG_DATE, REC_DATE
> OFFSET 0 LIMIT 1001;

この SQL の EXPLAIN 結果はどうなりますか?
また、[下限値] や [上限値] を生の値として与えているか、
Prepared Statement のパラメータにしているかでも結果が変わります。

--
Itagaki Takahiro

投稿者 xml-rpc : 2010年10月21日 15:46
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/99395
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。