TOP設計・移行・活用> 大規模・高性能のシステムを構築する際に重視されるスループットの性能
エンジニアの視点から活用するXMLDB
エンジニアの視点から活用するXMLデータベース

第4回:XMLDBの製品とその特長
著者:メタジトリー  丸山 則夫   2006/04/11
前のページ  1  2  3   4  次のページ
大規模・高性能のシステムを構築する際に重視されるスループットの性能

   大規模・高性能のシステムを構築する際、利用するXMLDBのスループットの性能は大変重要視されます。スループットの性能を決めるのは排他制御のロックの範囲と処理ソフトウェアです。

   ロックの範囲を狭めるとドキュメントとしての完全さ(一貫性)を保持することが難しくなりますが、他の処理へ影響は少なくなります。しかし階層構造の深いドキュメントは構造上、ロックの範囲を狭めることは難しいのです。

   特に更新の参照が混在する処理や日々XML文書に変更が伴う利用では、他の処理は更新処理に影響されてしまい参照処理で処理待ちになる場合があります。例えば参照処理の速さを特長にしている製品でも、更新処理の影響を確認する必要があります。


データ精度保障機能としての内部のエンジン

   XMLのデータの精度はXML構造の保持とデータの値に対しての保証となります。XMLDB内のデータの完全保証は一般のデータベースと同じく排他制御により行われますが、その排他制御の範囲は製品により異なります。


処理単位をXML全体を単位にするのか、細分化するか

   XMLはデータ処理とドキュメント処理により単位の粒度が異なります。データ処理は独立した多数の同一タイプのデータの集合で成り立っていますから、XML文書のサイズも細分化できます。細分化により排他制御の範囲を極小化できれば排他制御の影響を受けづらくなりますので、性能上は優位になります。

   XML文書は章や節の単位で細分化していますが、文書全体が基本単位となるために何らかの方法で文書全体の完全性を保証しなければならない場合があります。

   階層構造の深い部分の更新はその上位の階層に他の処理で変更加えると文書全体の整合性が失われますから、上位階層から該当箇所までをロックする必要が出てきます。従って構造上複雑なものに対応していたとしても、XMLDB製品の性能差がでてきます。


操作機能としてのインターフェース

   操作性のよさはXML文書の特長ですが、XMLDBでは操作性をさらに向上させているものが多く、ほとんどのXMLDB製品は国際標準のインターフェースを使って汎用性を重要視しています。

   またXML文書自身がスキーマ情報を持ちますので、データベースの構造設計に新たな構造設定をなくすためXMLのスキーマをそのまま使う方法や、XML文書を格納すればデータベースとして成り立たせる方法をとります。


クエリー Xpath Xqueryの対応

   XMLDBの操作はできるだけ国際標準に準拠した対応が取れていることが一般的に望ましいのですが、多くのXMLDB製品はさらにXpathとXqueryに対応しています。なぜならば、XMLDBが汎用性を追う時に採用する技術は「基礎の標準化」であり、XpathとXqueryは汎用化すべき基礎だからです。

   ただXMLDBの中には適用対象を限定し、特定業務に特化したインターフェースを用意している製品もあります。この場合、XMLの構造にこだわるほどクエリの標準化は重要ではありません。

   今後XMLDBのアプリケーション面での充実はWebサービスやSOAに対応する機能であると予想されていますが、クエリを隠蔽化する必要があります。XMLDBがどのアプリケーションレベルのインターフェースを用意するのかがXMLDBの特長となるでしょう。

   XMLDBはアプリケーションに対応することでXMLのメリットがより引き立ちます。原理主義的DBの定義は「アプリケーションからの独立しているもの」です。この定義から考えると、XMLDBを採用しているDBMSはデータベースから逸脱したものといえるでしょう。

   しかしWebサービスやSOAという考えかたが常識となっている現在、「WebサービスやSOAを取り込んで業務色の強いアプリケーションから独立しているもの」としてデータベースを定義してもよいのではないかと思っています。

   この領域のデータベースは限られた領域を設定し、その中で汎用性を追います。XMLの中にはアプリケーション色の強い標準があり、「取り込み用のXMLDB」とすることができます。WebサービスやebXMLなどではUDDI、リポジトリという広義のデータベースとして定義されてます。

   セマンティックWebやトピックマップもデータベースの仕様に相当するものが存在します。さらに、CMS/KMS/LMSなどの様々なマネジメントシステムのインターフェースも操作(クエリ)の統一化がなされたデータベースシステムといえます。それらを取り入れてより実践的な機能を持たせたXMLDBはXpathとXqueryを利用者に使わせる必要は少なく、また使わせるとシステム的な整合性が取りにくくなってきます。

   CMS/KMS/SOAなどに対応するXMLDBはより高度でコンプレックスなクエリを持ったデータベースといえます。XMLの標準化のさら応用分野を取り込んだXMLDBはますます発展・進化するではしょう。


整形式XML

   整形式XMLのサポートしているXMLDBはXMLDBの持つもっとも大きな特長をはっきり全面に打ち出しているといえます。「スキーマの対応」「整形型XMLの対応」のどちらか、もしくは両方をサポートしているのがXMLDBの大きな特長だからです。

   スキーマ対応のXMLDBはXML文書の形式を厳格に保証するためにあります。整形型XML文書が正しければ、通常のデータベース設計をDBMSに対して行う必要のない柔軟なデータベース構築が可能になります。

   また利用側には「確定したXML文書のスキーマが動作する方法」「XML文書だけで動作させて柔軟な登録が行える方法」の使い分けが必要です。


前のページ  1  2  3   4  次のページ


株式会社メタジトリー 丸山 則夫
著者プロフィール
株式会社メタジトリー  丸山 則夫
株式会社メタジトリー 代表取締役。長年、データ分析およびデータベースの設計、社内統合の情報基盤の整備に従事。 1998年XMLの可能性に着目。電子カタログ、電子ドキュメントなど広範囲な実績をベースに、XMLソリューションのコンセプトをビジネス展開。


INDEX
第4回:XMLDBの製品とその特長
  誕生以来エンジニアから多くの注目を集めているXMLDB
  製品選択のポイント
大規模・高性能のシステムを構築する際に重視されるスループットの性能
  スキーマ対応