[Pg_study 00014] Re: 次回(5/31)のプレ勉強会について

Suzuki Hironobu hironobu @ interdb.jp
2014年 5月 22日 (木) 02:28:54 JST


ML管理者兼、(プレでなく、本体の)勉強会主催者です。

> https://docs.google.com/presentation/d/1CzcMzdiWmyPFdqHwMEW9BOz2-2rG7m3w_KcM9ZgKM0M/edit?usp=sharing
>
> 技術的な内容でお気づきのことがあればご指摘をお願いします。
>

資料を読ませていただいて、浮かんだ疑問など。

[1]メモリコンテキスト
(1)15ページ
「メモリリークを避けるための仕組み」とありますが、
「ではGC(ガベージコレクション)ではダメなんでしょうか?」という疑問がでます。
なぜPostgreSQLはメモリコンテキストを使うのでしょうか?


[2]バッファストラテジ
(2)18ページ
「バッファ管理はclocksweep」となってますが、clocksweepは具体的には何をす
るアルゴリズムでしょうか?
clocksweepアルゴリズムは、今回の主題であるanalyzeに関係あるのでしょうか?

(3)18ページ、19ページ、20ページ
「clocksweepにつかうring」とありますが、clocksweepとring-bufferは関係あ
るのでしょうか?

(4)21ページ
バッファストラテジで、BAS_VACUUM(256[kbyte]のring-buffer)を選択していま
すが、
これの意味するところは何でしょうか?
#通常はBAS_NORMALでring-bufferを使わないわけですが。


[4]サンプリングアルゴリズム
(5)44ページ,45ページ
44ページで「表のフルスキャンはしたくない」と書いてますが、
45ページで「vacuumで表をフルスキャンしているので」とあります。
結局のところ、フルスキャンしているのでしょうか、していないのでしょうか?

#事前に総数が分からずとも統計量を求めるための、
#オンラインアルゴリズムやストリーミングアルゴリズムが流行ってますが、
#なぜDBのanalyzeではそういったアルゴリズムが使えないのでしょうか?


以上、
読ませていただいたところで思い浮かんだ疑問点です。



Pg_study メーリングリストの案内