[pgsql-jp: 27065] Re: 表領域の計算方

sugita @ sra.co.jp sugita @ sra.co.jp
2002年 8月 16日 (金) 18:57:17 JST


  杉田です。

From: "sasaki" <GSP05271 @ nifty.com>
Date: Thu, 15 Aug 2002 20:59:21 +0900 (JST)

;;; B 木の葉の部分関連のPDFを拝見させて頂きました。
;;; インデックスの計算をする場合、オーバヘッド12を使用する感じでよろしいでしょう
;;; か?
;;; また、12+4の4というのは索引キーの長さと判断して問題ないでしょうか?

  この場合には、索引キーの長さは int4 なので 4 です。

  4 は a=> の 3fc8800c の長さです。3fc8800c:0-31 = 1fe4:0-14, 1:15-16, c:17-31 、
順に、オフセット、フラグ、インデックスタプルの長さです。
src/include/storage/itemid.h の ItemIdData に書かれてあります。 

    ====  インデックスファイルのダンプ (big endian)  ===============
    ...
      0000: 00000000 001bbc14 0000000b 00201fcc  ............. ..
a=>   0010: 1ff02000 3fc8800c 3fb0800c 3f98800c  .. .?...?...?...
...
b=>  Item   1 -- Length:   12  Offset: 8164 (0x1fe4)  Flags: USED
b=>   1fe4: 00000000 0001000c 00000001           ............    


  先の例は、単一の int4 インデックスの場合ですから、他のデータ型や複合インデッ
クスでは、12 の部分の長さは違います。


Kenji Sugita




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