スキップしてメイン コンテンツに移動

投稿

2月, 2015の投稿を表示しています

”似て非なるものなれど似てるとこあり”と読みました

内部構造から学ぶPostgreSQL 設計・運用計画の鉄則 (Software Design plus) 著者 : 勝俣智成 技術評論社 発売日 : 2014-09-04 ブクログでレビューを見る» PostgreSQLを利用するにあたって、 MWとして見たときに必要なことが記さされていると感じました。 私自身はSQLServerをずっと利用してきて、 PostgreSQLを触り始めたところなので、  知識を移行するには非常に有用な本でした。 アプリケーションエンジニアがDBについて考え出したときに、 読むとちょうどいいぐらいの本な気がしました。 (以下抜粋。○:完全抜粋、●:簡略抜粋) ●text型は最大で1GBまで格納可能です。  char型は末尾を空白で埋めるなら意味がありますが、それ以外の意味はありません。  varcharはtext型とほぼ同じですが、格納時のサイズ上限チェックが行われるため、  ごくわずにtext型よりも遅くなります。(通常、無視できる程度の差です)。(P.80) ○暗黙のB-treeインデックスは主キーだけでなく、  一意性制約が定義された列にも作成されます(P.90) ●TOAST(The Oversized-Attribute Storage Techinique)(P.94-95)  行のサイズが2KBを超えると、業のサイズが2KBより小さくなるまで、  列の値を圧縮したり、行内とは別の領域に列の値を移動しようとします。 ●ページ数の計算方法(P.102-103)  RN:想定レコード数  FF:FILLFACTOR  TS:行の平均サイズ  PS:ページサイズ(8192kb固定)  PH:ページヘッダー(24kb固定)  ページ数=RN / ((PS * FF - PH) / TS) ●インデックスアクセスは、シーケンシャルアクセスと比較すると、  ファイル先頭から各ページを読む必要はないため、  テーブルサイズによる性能への影響は低くなりますが、  代わりにランダムアクセスが頻発することになります。(P.105) ●HOT(Heap On Tupple)(P.108)  ・UPDATE時のインデックスエントリの追加処理をスキップする  ・VACUUM処理を待つことなく不要領域の再利用を可能に