核心概念
データベースのスキーマ進化を支援するために、スキーマ内のすべての依存関係を追跡し、スキーマの一貫性を維持するための追加の変更を自動的に提案する。
要約
本論文は、関係データベースのスキーマ進化を支援するアプローチを提案している。
主な内容は以下の通り:
-
データベーススキーマを表すメタモデルを定義し、スキーマ内のエンティティ間の依存関係を表現する。
-
スキーマ進化のための操作子を定義し、それらの操作子が他のエンティティに与える影響を分析する。
-
初期の進化操作子に基づいて、スキーマの一貫性を維持するために必要な追加の操作子を自動的に提案する。
-
提案された一連の操作子を適切な順序で適用するためのSQL パッチを生成する。
この手法により、データベース管理者は、スキーマ進化の影響を把握し、一貫性のある変更を行うことができる。実験では、専門家が行った変更と同等の変更を75%短い時間で行えることが示された。
統計
データベーススキーマの進化には多くの複雑な操作が必要で、それらを慎重に調整し順序付ける必要がある。
関係データベース管理システムでは、スキーマの矛盾は許されず、常に有効でなければならない。
格納プロシージャの依存関係は、RDBMSでは認識されず、実行時にのみチェックされる。
引用
"The task of evolving a relational database requires many complex operations that must be carefully coordinated and sequenced in order to achieve the desired state."
"Relational Database Management Systems (RDBMS) do not allow schema inconsistencies on some entities at any time during the evolution."
"Because of this constraint, the database architect (DBA) must have, at all times, a complete map of all dependencies between the entities, to foresee all consequences (impacts) of a planned change."