[pgsql-jp: 28003] Re: Linux Worldのデータベース記事

Jun Kitamura kitamura @ zoozee.jp
2002年 11月 18日 (月) 13:11:38 JST


北村@zoozee です。

> (1) p151 「... あるOSで利用可能な最大ファイル・サイズが2GBだとすれば,
>     そのOSで動くPostgreSQLやMySQLは,最大2GBまでのデータベースしか扱え
>     ないことになる.」
> 
>     もうみなさんお分かりのように,これは完全に誤解です.PostgreSQLでは
>     データファイルを1GB単位で分割しますので,OSの持つ最大ファイルサイ
>     ズの制約は受けません.

ちょっと分かってないので、教えてください。(7.2 の話で構いま
せん)。
PostgreSQL では、データベースの実態は、(デフォルトでは) /data/base 
以下に データベースの OID がディレクトリ名として入っています
よね。その下に、テーブルやらインデックスやらの OID がファイ
ル名として存在していますよね。(ここまでで間違ってたらゴメン
ナサイ)。

いま、ある1つのテーブルが OID をファイル名として存在していま
す。そのテーブルのデータ部(つまり対応する OID のファイル)が 
2GB を超える場合、OS の制限を受けてしまうのでは?と思うので
す(思っていたのです)。
ここで石井さんのおっしゃる、「データファイルを1GB単位で分割
する」というのは、その OID(例えば 1234) に _2 とか付けて
(1234_2 という名前のファイルが生成されて)、1ファイルをマック
ス1GB として扱ってくれる、ということでしょうか。

当方では、ギガ単位に上るテーブルを扱った事もなければ、残念な
がらそれを試すための環境もありません。
ソースを読め!とおっしゃらずに、教えていただけないでしょうか。
(^^);





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