- PR -

Oracle 物理的には複数 論理的にはひとつ

投稿者投稿内容
ぱぱ
常連さん
会議室デビュー日: 2005/09/01
投稿数: 34
投稿日時: 2005-09-01 18:17
いつも参考にさせてもらっています。

ものすごく抽象的な質問なのですが
Oracleのテーブルで「物理的に分けつつ論理的には一つのテーブルに見える」って
いうのがあると聞いたことがあるのですが..。

年度ごとにテーブルを物理的に分け、論理的には意識せず使用したいのですがどのようにテーブルを作成すればいいのかわかりません。

ご存知の方ご教授お願い致します。

ちなみにDBはOracle 9iです。
platini
大ベテラン
会議室デビュー日: 2002/12/03
投稿数: 193
投稿日時: 2005-09-01 18:33
パーティションテーブルのことかしらん。
http://www.ashisuto.co.jp/standard/tec/vol50/50part.pdf

但し、Standardでは使用できません。Enterpriseが必要。
(だったと思う)
ぱぱ
常連さん
会議室デビュー日: 2005/09/01
投稿数: 34
投稿日時: 2005-09-01 18:46
さっそくの返信ありがとうございます。

パーティションを分けるイメージなんですね。
テーブルのみ分けるっていうのはないのですか?
Java僧
ぬし
会議室デビュー日: 2003/11/06
投稿数: 261
投稿日時: 2005-09-01 19:52
Oracleではないのですが、国産RDBMSにもこの仕組みを持ったものがあります。

富士通 SymfoWARE
http://software.fujitsu.com/jp/symfoware/products/pdf/db.pdf

ぱぱさんの実現したいことは上記PDFの5ページ左下のようなことですよね。
ぱぱ
常連さん
会議室デビュー日: 2005/09/01
投稿数: 34
投稿日時: 2005-09-01 20:33
そうです!

これOracleでも実装可能ですか?
mso
ぬし
会議室デビュー日: 2003/12/04
投稿数: 496
お住まい・勤務地: 宮城
投稿日時: 2005-09-01 21:02
msoです。

引用:

ぱぱさんの書き込み (2005-09-01 18:46) より:
さっそくの返信ありがとうございます。

パーティションを分けるイメージなんですね。
テーブルのみ分けるっていうのはないのですか?



TableSpaceを複数に分割するってことじゃないんですよね???
ぱぱ
常連さん
会議室デビュー日: 2005/09/01
投稿数: 34
投稿日時: 2005-09-01 21:55
テーブルスペースはひとつです。

売上テーブル2003
売上テーブル2004
売上テーブル2005
みたいな感じの物理的なテーブルたちに
Insert文を発行すると年度で判断してデータを振り分けてくれると
イメージしてたんですが違います?
いーた
大ベテラン
会議室デビュー日: 2004/07/12
投稿数: 154
お住まい・勤務地: 東京
投稿日時: 2005-09-01 22:51
引用:

テーブルスペースはひとつです。

売上テーブル2003
売上テーブル2004
売上テーブル2005
みたいな感じの物理的なテーブルたちに
Insert文を発行すると年度で判断してデータを振り分けてくれると
イメージしてたんですが違います?


そのイメージだとラッパーみたいなプログラムを作る必要があるのかなぁ。

Oracleのレンジパーティションだと、売上テーブルっていうテーブルがあって
2003年度のデータ→TapleSpace01
2004年度のデータ→TapleSpace02
2005年度のデータ→TapleSpace03
と、異なるテーブルスペースにデータが格納されるイメージ。
(テーブルスペースは同じでもOK)
各テーブルスペースを異なるDiskに配置してれば、SymfoWAREの資料に記載してある図と
同じイメージになると思いますが、どうでしょう?

スキルアップ/キャリアアップ(JOB@IT)