オブジェクト指向開発からO/Rマッピングを追放できるか?

2003/11/15

 オブジェクト指向開発で最も悩ましい作業はO/Rマッピングである。せっかく上流工程からUMLを使ってオブジェクト指向的に分析、設計を行っていっても、実装段階でデータをRDBMSに格納するために、オブジェクトをバラバラに分解してリレーショナルテーブルにマッピングさせなければならない。オブジェクトとテーブルとのミスマッチ、この悲劇を解決する方策はないのだろうか?

インターシステムズジャパン 代表取締役社長 坂寄嗣俊氏

 ポスト・リレーショナル・データベースを標ぼうするデータベース「Caché」を開発するインターシステムズジャパン 代表取締役社長 坂寄嗣俊氏は、11月13日に開催された「CACHÉ FORUM」で、RDBMSを痛烈に批判した。「現在データベース製品としてデファクトの地位にあるRDBMSは、1980年代に登場して以来、テクノロジとしてはまったく進化していない。この20年で、プログラミング言語、ハードウェア、ミドルウェアなどは劇的に進化しているというのに、RDBMSだけが今日の状況について行けていない」。

 Cachéは1997年に登場した新顔のデータベースで、MUMPS(Massachusettes general hospital Utility Multi Programming System)を祖先に持つ多次元アクセス可能なデータベース。XMLのツリー構造やJavaのクラスといったオブジェクトをそのまま格納できるのが特徴だ。従来のオブジェクト・データベースと異なるのは、データを多次元形式で格納する点で、これによりJava、XML、COM、C++などからオブジェクトをそのまま入出力できるほか、JDBCやODBCなどのSQL経由でリレーショナルテーブルとしてのアクセスも可能にしている。この2面性をもって、同社は“ポスト”リレーショナル・データベースという呼称を用いている。つまり、オブジェクト・データベースとは違うのだ、という主張である。

 もっとも、数年前に登場したオブジェクト・データベースがパフォーマンスの問題でビジネスとして成立しなかった経緯もあり、Cachéの市場性に疑問を持つ開発者も多いだろう。しかし、テクノロジの進化は開発手法のパラダイムシフトを出現させた。オブジェクト指向開発の浸透が、オブジェクトを格納できるデータベースを求め始めているのだ。

 基調講演を行った萩本順三氏(豆蔵 取締役)は、「システム開発の主流が、かつてのクライアント/サーバからWebシステムにシフトしている現在、標準化された技術を使って複雑なアプリケーションを短期間に開発するためには、オブジェクト指向開発が必須の要件となっている」としたうえで、「オブジェクト指向開発をしても、エンティティ・オブジェクトをRDBMSに格納する時点で、オブジェクトとテーブルのインピーダンスミスマッチに直面することになる」と指摘した。つまりオブジェクトとテーブルの構造上の相違を吸収するための設計が新たに発生する。このO/Rマッピングについては「毎月この問題に関する勉強会を開いている」ほどに、深い問題を抱えているのだ。

 具体的な開発工程に即していえば、「ビジネス分析」「要求分析」を経てシステムのアーキテクチャを構築する「システム分析」の段階で、データベースに格納すべきエンティティ・オブジェクトが抽出されてくる。次の「システム設計」になると、エンティティ・オブジェクトだけはオブジェクトの世界を離れ、2次元のリレーショナル・テーブルにマップするための“余計な”工数が発生するが、ここでCachéのようなデータベースを用いればエンティティ・オブジェクトをそのままの構造で格納できるというわけだ。

 最新バージョンであるCaché5は、統合開発環境「Cachéスタジオ」を同梱し、Webサービス、EJBにも対応する。Cachéサーバページという独自のアプリケーションサーバを内蔵しており、フロントエンドにHTTPサーバを置くだけでWebアプリケーションを構成できる。米国での販売実績は医療機関に強く、日本でも医療分野を足がかりに市場シェアの拡大を図るという。

(編集局 上島康夫)

[関連リンク]
インターシステムズジャパン

[関連記事]
UML一辺倒の風潮に警鐘、日揮情報 (@ITNews)
良いユースケースを書くコツを伝授 (@ITNews)
IBMによるラショナル買収、賛否両論 (@ITNews)

情報をお寄せください:



@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)