TOPサーバ構築・運用> XMLDBを取り巻く状況の変化
XMLDB入門
eXistではじめよう!使って覚えるXMLデータベース入門

第1回:今、XMLデータベースを始める理由

著者:ウルシステムズ  柏原 宏充、大塚 庸史   2007/7/19
前のページ  1  2  3  次のページ
XMLDBを取り巻く状況の変化

   このような「敷居の高さ」の感覚は、筆者がここ1〜2年のXMLDB事情を知るにつれ、次第に解消されていくようになりました。ここでは、最近のXMLDB事情について説明したいと思います。

XMLの利用シーンは増えてきている

   ここ1〜2年の間に、XMLの利用シーンはこれまで以上に増えてきています。ユーザサイドで身近なところでは、ドキュメント系の正式フォーマットとして採用された例があります。その代表的な例として、Open Data Format(OpenOffice.org)、Open XML(Microsoft Office)があげられます。

   また、blogをはじめとして、最近のほとんどのサイトで採用されている、Webページのサマリを表現するRSS(もちろんThinkITにもあります)も、XMLを利用した仕組みです。

   マッシュアップなどのWebサービスを利用した開発では、XML形式のデータがやり取りされることが多いです。XMLデータの相互利用が増えるにつれ、XMLそのものの設計ノウハウの蓄積も進んできています。


問い合わせ言語の標準化の進展

   XMLDBの世界での大きな出来事が、今年2007年1月にありました。XQuery1.0とXPath2.0の標準化作業が完了し、正式なW3C勧告となったのです。

   XQueryは、XMLへの問い合わせの方法を標準化したもので、RDBにとってのSQLの位置づけと同じものです。XQueryは、XPath、XQL、XML-QL、SQL、OQL(オブジェクト問い合わせ言語)など、様々な言語の特徴を引き継いでいるXML問い合わせ言語「Quilt」をベースとして誕生しました。W3C勧告としてのXQueryは、W3C XML Query WGにより2001年から検討が開始されていましたが、この2007年1月にようやくW3C勧告になりました。

   このように、XQueryにはSQL、XPathをはじめとする色々な言語と共通の機能、概念を備えています。標準化されたXQueryを理解すれば、ベンダーごとに固有の問い合わせ方法を習得することなく、XMLを使ったサービスを開発することができるようになったのです。

   XQueryはXMLに対する問い合わせのための言語ですが、SQLにInsert、Update、Delete文があるように、XMLに対する更新言語の標準化も進んでいます。XQueryに更新機能を追加するXQuery Update Facilityがワーキングドラフトとして検討されています。ただし、現時点では正式勧告まで至っていないこともあり、更新処理の実装ついては、まだまだベンダー固有の実装が多い状況です。今後は標準化に向けて、規格・実装両面で整備されていくことでしょう。


オープンソースのXMLDBプロダクト

   現在のシステム開発は、オープンソースプロダクトを抜きにして考えることはできません。

   XMLDBでも、いくつかオープンソースのプロジェクトがあります。信頼性、拡張性などの面で商用製品に引けをとる面もありますが、XMLDBをはじめて使うには十分な機能を持っています。またXQueryなどの新しい標準への準拠度合いでは、オープンソースプロダクトの方が進んでいることも少なくありません。

   ここでは、主なXMLDBオープンソースプロジェクトについて紹介します。

eXist
Wolfgang Meierによって2000年から開始されたプロジェクトです。ここ数年間プロジェクトのスピードが落ちていましたが、最近ふたたび開発のペースが増し、2006年9月にバージョン1.0と1.1がリリースされました。XQueryへの準拠度合いの高さ、Javaをベースとしたプラットフォーム非依存な点、索引作成、全文検索機能など、非常に意欲的なプロダクトといえます。標準でSOAPやRESTfulなど様々なI/Fに対応し、eXist単体だけで簡単なWebアプリケーションを作ることができます。本連載のサンプルではeXistを使って説明を行っていきます。

Apache Xindice
Apache XMLプロジェクトの一環ということで期待も高かったのですが、ここ数年開発のスピードが遅くなっているようです。問い合わせ言語の面でも、XPathにのみ対応しておりXQueryは未対応であることなど、標準への準拠度合いが低いのが難点となっています。今後の開発に期待したいところです。

Oracle Berkley XML Database
組み込み型のDBとして多くの実績を持つ、Berkley DBのXML対応版です。2006年に開発元のSleepycat Software社が米Oracle社に買収されたことにより、現在はOracle Berkeley DB XMLとして提供されています。実績も豊富なこと、XQueryといった標準への準拠度合いも高いことから、導入を検討する価値があるでしょう。

表2:主なXMLDBオープンソースプロジェクト

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


ウルシステムズ株式会社 柏原 宏充
著者プロフィール
ウルシステムズ株式会社  柏原 宏充
ウルシステムズ株式会社シニアコンサルタント。Web系開発の世界でRDBMSと触れあっていたところ、様々なことがあってXMLDBの世界へ。技術を文字にして伝え、文字を実装にして証明することを武器に、今日もお客様の課題解決に取り組んでいる。


ウルシステムズ株式会社 大塚 庸史
著者プロフィール
ウルシステムズ株式会社  大塚 庸史
ウルシステムズ株式会社シニアコンサルタント。2003年より現職。以前よりスクリプト言語には大きな興味を寄せていたが、最近、JavaScript、Flexの柔らかさに開眼しつつある。XQueryは今年「来る」と確信しつつ日々奔走中。


INDEX
第1回:今、XMLデータベースを始める理由
  あなたがこれまでXMLデータベースに触らなかった4つの理由とは
XMLDBを取り巻く状況の変化
  XMLDBの盛り上がりを見逃すな!