質問するログイン新規登録

Q&A

解決済

1回答

606閲覧

[Oracle11g]パーティショニングと外部キーオプションの両用

Pipi

総合スコア17

Oracle Database

Oracle Databaseは、米オラクルが開発・販売を行うリレーショナルデータベース管理システムです。

データベース設計

データベース設計はデータベースの論理的や物理的な部分を特定する工程です。

0グッド

0クリップ

投稿2022/01/19 01:21

編集2022/01/19 01:26

0

0

新規システムの設計をしているのですが、周りに識者がおらず確認したいです。
掲題の件で懸念がないか教えて頂けますか?

やりたいこと:
1.テーブルをユーザーの属性値によって(リストパーティショニングということになりますかね)パーティショニングしたい(検索などのパフォーマンス等の目的)

2.外部キーを張ってON DELETE/UPDATE CASCADEオプションを使用することでレコード削除・更新時の整合性が担保されるようにしたい。

検索してしらべたのですが、MySQLではできない(?)などの記述はあるのですがOracleデータベースについての記載がなくこの方針で検討していて問題ないのかが分からずにいます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

guest

回答1

0

ベストアンサー

Oracle Paritioning は要求では年月単位でRANGE PARTITION で扱う事が多いです。LIST PARTITIONは数えるほどしか使ったことはありません。Oracle Paritioningを使うテーブルのレコード件数やPARTITION毎のレコード件数は何件くらいを想定していますか?
外部キーを使うとパフォーマンスが落ちますから、外部キーを使って大量のデータを扱った案件はほとんどないです。Oracle Paritioningと外部キーを併用したことはまったくありません。

Oracle Paritioningを使うような案件でしたら、初心者だけで開発するのではなく、きちんとした熟練者もメンバーに入れた方が良いです。5年くらい前にOracle Database のパフォーマンス・チューニングで調査した案件では幼稚過ぎるシステムで大改造が必要だが、そのためには費用がかかり過ぎるから放置になりましたが、今頃どうなっているか心配です。

Oracle11もどんなに大きなバグが見つかっても新たにパッチを作ってくれない古いバージョンですから、新しいバージョンに移行された方が良いです。サポート契約が有効ならライセンスのバージョンアップは無料です。

投稿2022/01/19 02:37

Orlofsky

総合スコア16419

Pipi

2022/01/19 03:12

回答ありがとうございます。 プロジェクト詳細は明かせないので、概念的にいうと部署のような単位でパーティショニングするという大前提の強い要望(実績があるということのようで…)がありレンジパーティショニングにはできそうにないです。 全てのテーブルについて部署のようなものでパーティショニングするので、1番多くなりそうなところでいうとパーティションごとのデータ量は200000件程度になると検討しております。 稼動はずっと先で、初物はパーティショニングの定義をするものの部署のようなものは1つだけの状態で一先ずは本番稼動となります。 いつ増えるのか?などは「将来的には」という玉虫色な話になっています。 既存のものを流用するということで予算を抑えられていることもあり基盤・プラットフォームが刷新できそうにないという事情もあります。 なお、要因については調整中です。 さて、本題についてですが パーティショニングと外部キーの併用はあまりしないということで承知いたしました。 代替案を考えてみます。 (業務の特徴としてマスター系のテーブル数が多くなり整合性の維持をプログラム任せにするのは辛い…ということで、CASCADEオプションではどうか?という発想になってます。) メインの方針からは外そうかと思うものの、そもそもOracleでは併用できないのか、実績はないがやろうと思えばできるのか、というところの個人的な興味は依然としてあり、ご存知でしたら教えて頂けるとありがたいです。
Pipi

2022/01/21 12:51

検討環境の調整がついたので試してみます! ありがとうございました!! 検討でいろんなことを試していく中で、またなにか質問するかもしれませんのでもしまた見かけましたら助けてもらえるとありがたいです
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.25%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問