[pgsql-jp: 41542] Re: 9.3でのwork_memについて

Keiichi Sadanaga ksfore @ gmail.com
2014年 1月 10日 (金) 14:36:57 JST


高塚様

お世話になります、貞永です。

早速の回答有難うございます。

以前はwor_mem設定値の半分くらいしか実際には使っていなかったので、それを見越した設定をしていた場合、今回は設定値分を効率的に使うようになったので、9.3にするとメモリ消費量が増えたように見えるということですね。

あと、知らなかったのですが、サブクエリをつかうと各々でwork_memのメモリを取得してしまうというところです。
サブクエリをつかったSQLを多用しているアプリの場合、その分も考慮しないとメモリが足りなくなる可能性がある、その分逆にwork_memを減らしたほうがいいということで宜しいでしょうか?


2014年1月10日 13:58 TAKATSUKA Haruka <harukat @ postgresql.jp>:
> 高塚と申します。
>
> これですね。
> http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=8ae35e91807508872cabd3b0e8db35fc78e194ac
>
> (以前は)指定上限の半分しか使わないことがあると書かれていますので、
> メモリ内ソートをするときのメモリ利用が増えたとして、増分は高々
>  work_mem 設定値 x 1/2 くらい、と考えればよいでしょうか。
>
> # 以前からの PostgreSQL の制限事項で、多段のサブクエリは各々に work_mem 分の
> # メモリを取得してしまいますのでその点も 適宜考慮ください
>
> On Fri, 10 Jan 2014 12:55:42 +0900
> Keiichi Sadanaga <ksfore @ gmail.com> wrote:
>
>> 貞永と申します。
>>
>> PostgreSQLが9.3になった際の変更点としてメモリ内ソートで割り当てられたメモリ全体が使えるようになったという記載があり、work_memの設定値での振る舞いがそれ以前のバージョンより多く消費されるとあったのですが、具体的はどのようにメモリの使われ方がかわったのでしょうか?
>> Linux環境においてのメモリ関連の設定、チューニングの際にどのように注意すべきかを知りたいです。
>>
>> よろしくお願いします。
>
> ______________________________________________________________________
>  日本PostgreSQLユーザ会  高塚 遙  http://www.postgresql.jp
>


pgsql-jp メーリングリストの案内