2008年2月27日

[pgsql-jp: 39263] Re:JPUG合宿(8.3チューニング大会あり)のご案内

清末です。せっかく書いたので。

詳細まではいきませんが、とりあえず概要を。詳しくは、下記URLからで
お願いします。

当日は3チームにわかれて、チューニング。


サーバは、SUN様がご提供いただきました。
Sun Fire X4100
2.8GHz AMD Opteron 254 (1MBキャッシュ) x 2、
8GBメモリ (2GB DIMM x 4 DDR/400)、
73GB 10000回転SASディスクドライブ x 2、
OSにはSolaris 10最新版(8/07 update4)

HDDは、RAID1 構成にせず、2台目をフルに空きとしました。

データは、blogを想定した物、
ユーザと日記とコメントのテーブルを用意。
データ数。。すみませんわすれました。
総データ量で2Gぐらい。

そのうち、利用した、pgbenchのファイルはどこかに公開
されるかも・・・・

インデックスも張らずにするとtps = 2 程度。
(excluding connections establishing)の方。

各チームとも最終スコアは1000オーバーになったで、最終結果
だけみると500倍でしょうか。

チューニングのポイントはありきたりですが、
・インデックスはきちんとはる。
 今回は、特に複雑でなかったので差はなし。

・空のHDDにデータ領域を割り振り
 walを、どちらのHDDに置くかはチームによって差があり。

・fsync = off は禁じ手
・HDDのファイルシステムでも当然差がでる。-> 結構でかい。
 (当日は、禁じ手としました。)

・ベンチマーク前に、
 vacuum analyze やら、 CHECKPOINT やら、 select count(*) FROM ~~
(メモリ上に全データを乗せるため)を行ってから、実測

・postgresql.conf でいじったところ(各チームでちがいます)->Aチーム分
max_connections = 150 
shared_buffers = 3000MB
work_mem = 256MB
max_fsm_pages = 768000
max_files_per_process = 1000
vacuum_cost_delay = 0
vacuum_cost_page_miss = 0
vacuum_cost_page_dirty = 0
bgwriter_delay = 10000ms
synchronous_commit = off -> 結構ちがう。
wal_sync_method = fdatasync 結構割れて、fdatasync とか、open_sync とか
full_page_writes = off
wal_buffers = 640kB
wal_writer_delay = 200ms
commit_delay = 100
commit_siblings = 5
checkpoint_segments = 30
autovacuum = off
datestyle = 'iso, mdy'
lc_messages = 'C'
lc_monetary = 'C'
lc_numeric = 'C'
lc_time = 'C'
default_text_search_config = 'pg_catalog.english'

基本的に速度重視で信頼性落としているので、実運用ではあまり使えない
かもしれませんが、ポイントは、
I/O が発生しそうなところは、メモリに溜めて一気にしてしまう所でしょうか

改めて、チューニングで気をつけるところは、
-> SQL自身(JOINの順番) -> 今回は関係なかったですが
-> インデックスの適切な設定
-> HDD, DB領域の設定->別HDDとか、ファイルシステムとか tablespace とか
  データ領域や、I/O あたり
-> メモリの割り当て
-> wal への書き込みのタイミング (checkpoint commit wal_writer_delay
full_page_writes)

を気にすると、良い感じになりそうです。

8.3からの分では、
synchronous_commit = off と on では、結構違ってきました。
試したところ tps で、100〜200ぐらいは、違ったと思います。
運用次第では、offも一考です。

当日のマシンが Solaris で、8.2がインストールされていたので、ほぼ
同じ状況で、差を確かめたかったのですが、時間切れで断念しました。
HOTの性能までは、検証できず。

個人的には、コンソールを後ろから覗いているだけでかなり勉強になったので
支部の勉強会とかでフィードバックできればと思います。

TAKATSUKA Haruka さんは書きました:
> pgsql-jp各位さま:
> おつかれさまです。高塚@合宿参加 です。
>
> JPUG合宿チューニング大会(PostgreSQL8.3/Solaris10)の、
> まとめページ用意しました。
>
> http://www.postgresql.jp/events/event_files/gasshuku200802benchmark
>
> ・成績の変遷表
> ・各チームの設定や工夫内容
>
> は、未だ掲載しておりません。
>
> ※Aチームのデータは私が持っております。
> その他データをお持ちの方、私宛に送っていただけましたら
> 合わせて掲載いたします
>
>
>
> On Mon, 25 Feb 2008 16:37:18 +0900
> Kaori Inaba <i-kaori@xxxxx> wrote:
>
>> 稲葉です。
>>
>> On Mon, 25 Feb 2008 11:20:58 +0900
>> Kiyoshi Sawada <sawa@xxxxx> wrote:
>>
>>> 沢田@名古屋です。
>>>
>>>>>> 待望の PostgreSQL8.3 がリリースされました。
>>>>>> これを使ってのチューニング大会がメインイベントとなるJPUG合宿を、
>>>>>> 今年は初の九州、佐賀県の温泉にて開催いたします。
>>>>> 結果レポートを首を長くしてお待ちいたします。
>>> ほのかに、酒のかおりが漂った(笑)、
>>>
>>> >> ○×△チームはすでにぶっちぎり、200倍速い
>>>
>>> との、風の便りが届きましたが、チューニングは、いかがでしたでしょう
>>> か? 概要なんぞをいただけたら幸いです。
>> チューニング大会では、SNS 風データベースをチューニングするというお題でし
>> た。(昨年と同じようです)
>>
>> まずはインデックスをいじって100倍くらい。
>> そのごは、主に postgresql.conf の設定でさらに 10倍くらい。
>>
>> といったところでしょうか。後はきっと誰かが細かい報告を・・・
>>
>> postgresql.conf は 8.3 で増えたパラメータも効果がありそうです。
>> 時間があれば同じような設定の 8.2 との差を試してみたかった(特にHOTの効果
>> がどうなの?とか)ですが、そこまでは時間がありませんでした。
>>
>> 特に九州の皆様には、現地での手配から空港から温泉への車輸送など大変お世話
>> になりました。
>>
>> i-kaori
> ______________________________________________________________________
> 高塚 遙 harukat@sraoss.co.jp SRA OSS, Inc http://www.sraoss.co.jp
> 〒170-0005 東京都豊島区南大塚3-46-3 大塚セントコアビル5F
> TEL: 03-5951-1191 FAX: 03-5951-1192
>
>
>
>

--
--------------------------------------------------------
ITM(株式会社 アイティマネジメント)
〒810-0022 福岡市中央区薬院3-13-11 サナ・ガリアーノ4F
TEL:092-525-0081 FAX:092-525-0082
Sunao Kiyosue (清末 直)

 メルマガ
http://blog.mag2.com/m/log/0000247946/

 ITM-ASPサービス http://www.itm-asp.com
 メール配信システム【月額 6000通 1,050円〜】
 クリックカウンター【月額 2,100円〜】
 ステップメール【3月公開中】
--------------------------------------------------------

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




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