5章進化的データ

Pramod Sadalageによる寄稿

リレーショナルデータベースを始めとする各種データストアは、今日のソフトウェアプロジェクトに遍在し、アーキテクチャ上の結合以上に問題となることの多い結合を形作る。データは進化可能なアーキテクチャを作る際に考慮すべき重要な次元だ。進化的データベース設計の側面全てをカバーすることは、本書の範囲を超えている。幸いなことに、我々の同僚であるPramod Sadalageは、Scott Amblerとともに「進化的データベース設計」という副題がついた書籍『データベース・リファクタリング』(ピアソン・エデュケーション)[9]を執筆した。本書では進化的アーキテクチャに影響するデータベース設計について一部だけをカバーする。残りはぜひ『データベース・リファクタリング』を読んでいただきたい。

本書でDBAについて触れるときに想定しているのは次のような人物だ。それは、データ構造を設計し、アプリケーション内でデータにアクセスしたり使用したりするコードを書き、データベースで実行されるコードを書き、データベースのメンテナンスやパフォーマンス調整を行い、そして障害発生時の適切なバックアップ手順や復旧手順も保証する人物だ。DBAと開発者は、アプリケーションを構築する中心的存在であることが多く、密接に連携する必要がある。

5.1 進化的なデータベース設計

データベースにおける進化的な設計は、時間とともに要件が変化する中で、開発者がデータベースの構造を構築でき、進化させられるときに現れる。データベーススキーマとは、クラス階層と同様、物事を抽象化したものだ。根底にある現実世界が変化したなら、それらの変化は、開発者とDBAが構築している抽象にも反映されなければならない。そうでないと、その抽象は徐々に現実世界と同期されなくなる。 ...

Get 進化的アーキテクチャ ―絶え間ない変化を支える now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.