2017-11-16 8 views
0

postgres SQLのデータベース関連オブジェクトの階層は何ですか? 他のRDBMS(データベースの下に表スペースがある)とは異なり、表スペースはインスタンス・レベルで作成する必要があります。 インスタンス・レベルで表スペースを作成する場合、データベースの目的は何ですか? Postgresサーバーのテーブルスペースとデータベースの違いは何ですか?Postgres SQLデータベースとテーブルスペースについてのクエリ

答えて

0

Databaseは、すべてのオブジェクトを整理する場所です。 Tablespaceは、それらのオブジェクトのためのストレージスペースです。

dbオブジェクトを別のTablespaceに保存することができます。たとえば、ある表はディスクAの表領域に格納されていますが、別の表はディスクBの表領域を使用してパフォーマンスを向上させています。あるいは、大きなテーブルのためのテーブルスペースが必要で、それらのオブジェクトのためのゆっくりとした大きなHDDを気にしないでください。

1

インスタンス(PostgreSQLのクラスタ)は、PostgreSQLサーバプロセスでinitdbで初期化されたデータディレクトリです。

表スペースは、オブジェクトを格納できるデータ・ディレクトリ外のディレクトリです。テーブルスペースは、I/Oの分散やデータのサブセットのスペースの制限など、特定のコーナーケースに役立ちます。

データベースは、スキーマで構成された権限を持つオブジェクトのコンテナです。

違いは表領域が物理概念であるということであるデータベースは、データが編成されている方法についての論理な概念であるが、それは誰が、それらがどのように関連しているか、彼らが何を意味するか、データが格納されているスペースを定義しますそれらにアクセスすることなどが許可されます。

という2つの概念があります。
データベースは複数の表領域に表を持つことができ、表領域には複数のデータベースのデータを含めることができます。

+0

他のRDBMSと同様に、データベースの下にテーブルスペースはありませんか? DB2のような他のRDBMSでは、この階層にserver-> instance-> database-> tablespace-> tablesがあるからです。 – srivatsasa

+0

右は違います。ドキュメントを参照してください。 –

+0

は最後に '複数のデータベースのデータ 'を意味します。 –

関連する問題