初心者のための『5分でわかるXML超入門』の第11回は、XMLドキュメントをそのまま格納できる「ネイティブXMLデータベース」について解説します。
最近、あちらこちらで耳にすることの多くなってきた「ネイティブXMLデータベース」という言葉。プログレスソフトウェアが提供する「Sonic XIS」はネイティブXMLデータベース(以下、NXDB)の代表格になりますが、NXDBとは端的に言えば、「XMLドキュメントを階層構造(DOMツリー)のまま格納できる」データベースということになります。今回はこのNXDBの特徴について簡単に解説します。
データベースという言葉から連想されるものとしては、おそらくリレーショナルデータベース(以下、RDB)が圧倒的に多いのではないでしょうか。フィールド(項目)の集合としてデータを表現し、そのデータをテーブルという形に集合する、いわゆる2次元型のデータベースです。リレーショナル(関係)の名の通り、キーとなるデータを利用してデータの結合や抽出、検索などを行うことができます。
データベースとして圧倒的なシェアを占めるRDBですが、ここにXMLドキュメントを格納しようとすると厄介なことになってきます。XMLドキュメントを分解し、RDBのテーブル構造とXMLドキュメントの階層構造を複雑にマッピングしなければならず、パフォーマンスの低下や開発効率の低下につながってしまうからです。
一方、NXDBではXMLドキュメントをそのままの形で格納し、利用することができます。これにより複雑なマッピング処理が不要になり、高いパフォーマンスを保ったままでの検索や開発効率の向上が可能になるのです。

ビジネスにおいてNXDBを採用するメリットはさまざまですが、その最大のひとつが「ビジネスを加速する」という点にあります。
RDBが現在のような高いシェアを獲得できたのは、信頼性、堅牢性、高速性、利便性など、さまざまな面で優れていたからと言えます。もちろん、今でも十二分にそのメリットは発揮されていますし、RDBがNXDBに劣るというわけでもありません。しかし、速断性や即応性が切に要求される現在のビジネス環境においては、RDBでは対応しきれないという現実もあります。
RDBには、まず厳密なスキーマを決定してからデータを格納するという大前提があります。テーブルやフィールドをどのように構成するかという設計を確定するまでは、それ以後の開発に取りかかることもできないのです。これは、あまり変更されることがない基幹系ならともかく、めまぐるしく変化するeビジネスなどにおいては致命的な遅れになりかねません。
これに対しNXDBでは、データ構造をいつでも自由かつ容易に更新することが可能です。そのため、とりあえずデータベースを作成してアプリケーションの開発(あるいは運用)に取りかかり、必要に応じてダイナミックにデータモデルを変更するといった柔軟な使い方ができるのです。
データモデルの追加や変更が日常的なeビジネス、あるいは構造の未確定な紙情報をとりあえず電子化する場合など、スピードと柔軟性の求められるシーンにおいてNXDBは大きな威力を発揮するのです。

XDBのメリットはここで紹介した通りですが、だからといってRDBに完全に置き換わるものとも言えませんし、これまでのデータベース資産をすべて移行するというのも現実的ではありません。Sonic XISでは、XConnectsと呼ばれるデータ接続のためのコンポーネントを用意し、RDBやスプレッド・シートなど、蓄積されたレガシー・データとの双方向変換も可能にしています。
2012/02/16開催:「スマホサイト・SNSアプリを立ち上げたい!コストを下げたい!ローコストでのWeb構築・運用早分かりミニセミナー」![]()
2012/01/12開催:「ソーシャルメディアを使ったマーケティング担当者必見!海外ITアウトソーシング早分かりミニセミナー」
営業・企画職のためのXMLレシピ 第16回:XMLパブリッシングとクロスメディア![]()
2012/02/22開催:「コンテンツ・データベースの選定・導入・移行のポイント」![]()
サイバーテック、海外拠点を活用したハイブリッド派遣サービスを開始![]()
2012/02/16開催:「スマホサイト・SNSアプリを立ち上げたい!コストを下げたい!ローコストでのWeb構築・運用早分かりミニセミナー」![]()
2012/02/15開催:「トップシェアベンダーがやさしく解説!XML DB早分かりミニセミナー」![]()