ARCHIVES
アーカイブス
アーカイブス

SOAもXML DBも実用段階に突入 RDBやツールはネイティブ対応が加速

翔泳社『DBマガジン』2006年4月号 「特集「乗り遅れないための最新XMLソリューション指南」

林浩一/宮田泰宏/村上歴
2006年04月01日
※内容は公開当時のものです

当初のブームを過ぎたのち、概念や製品ばかりが先行してきた感のあるXMLだが、昨年より現場利用が急速に拡大している。本パートでは、そうしたXMLに関する最新動向を、主にWeb、XML DB、SOA(サービス指向アーキテクチャ)の観点から解説する。RSS やBPEL といった注目の技術はもちろん、現実的な利用形態が見えてきたXML DBの新機能も詳しく述べる。なお、本パートの最後に、主要なXML DB製品を一覧で紹介する。

第2ステージに突入したXMLの普及

2005年は、XML技術が普及の第2ステージに来たことをうかがわせるニュースが相次いだ。RSSフィードが可能にしたブログの流行、オフィス文書標準「Open DocumentFormat」の進展、企業内のシステム基盤として登場するSOAプラットフォームや第2世代のXML DBの新しい製品群の登場など、XML関連技術が広くIT業界をにぎわせた。1998年に、XML 1.0が次世代の標準技術として登場したときに期待された利点は、大きく次の3つに分けられる。

自動化
HTMLとは異なり、タグがコンピュータに解釈できるようになることで自動化が進むこと
データ統合
ドキュメントなどのデータを一元的なフォーマットで扱い統合化すること
システム間連携
交換用の標準フォーマットとして用いることにより、システム間/企業間の連携が進むこと

その後、BtoBと呼ばれる企業間連携システムやXML DBが登場するなどのさまざまな話題が続いたが、ビジネスと社会を大きく変貌させるところまでは至らず、当時は期待外れの印象をぬぐえなかった。

技術革新は2段階で発展

新しい技術による革新は、2段階の発展過程を経ると言われている(注1)。第1ステージはインフラとして普及するまでの間で、限られた相手との間で予想できるメリットを提供するにとどまる。普及してインフラとなってからが第2ステージで、ビジネスはもちろん、社会のあり方を変えるほどのインパクトのある変化をもたらす。XML登場初期の失速感は、第2ステージにならなければ刈り取ることのできない革新を、第1ステージで期待したところからきている。

以前は、Webも大学や企業の研究所間で情報を共有し合う程度のシステムでしかなかった。そこにWebブラウザが登場してHTMLが普及し、ネットワークの規模拡大と質の向上をもたらして、我々の日常を支えるまでに成長した。XMLの発展も同様に考えて良いだろう。現在では、当初の課題であったスキーマ言語や検索言語などの標準化が進み、標準のボキャブラリも増え、第2ステージに踏み出す段階になりつつあると言える。

3つの分野での変化を捉える

XMLは非常に広い範囲での応用が可能で、さまざまな形で普及が進んでいるため、その全容を捉えるのは難しい。そこで、まずはXMLの利点が活きる次の3分野においてXMLの現状 とその変化を見ていくことにする(図1)。

  1. 社会インフラとしてのインターネット
  2. 個人の知的作業のためのクライアント
  3. ビジネスを担う企業内システム

そのあとで、本誌読者の多くが関わる企業内のシステム開発に大きな影響を与えるXMLデータベース(以下、XML DB)とSOA(サービス指向アーキテクチャ)の動向について詳しく解説する。

図1 3つの分野の変化を捉える

図1 3つの分野の変化を捉える

XMLが企業システムに起こす3つの大変革

インターネットに質的な変化をもたらすWeb 2.0

第1の分野として、社会インフラであるインターネットに対して、XMLがもたらそうとしている変化を見てみよう。

最近、「Web 2.0」という単語を目にする機会が増えてきた。この言葉の定義はあまり明確にされているとは言えないが、よく参照されるティム・オライリー氏の論文を読むかぎり、Web 2.0は米グーグルの新しい広告サービスモデル、ブログをはじめとする参加型のコミュニティ、Ajax(注2)を用いたよりリッチなインターフェイスの実現など、最近のWebの新しい動きを質的な変化として捉えようとするものである。

これからの議論の展開で、Web 2.0がどのような意味に落ち着くかは分からないが、Webの世界が質的な変化を起こしつつあるという感覚は共感できる。現在進行中の質的な変化にはいくつかの側面があると思うが、筆者としては、ブログのRSSフィードとトラックバック機能に象徴される、XMLによるリンク機能の変質を最も重視したい。

「たかがブログくらいで何を騒ぐか」と思う読者もいるかもしれないが、意外に大きな意味がある。

RSSフィードとトラックバックによるリンクの変質

RSSフィードは、Webページのタイトルやリンク、要約などを記述したRSS形式のデータを読み込んで処理する技術である。RSS自体は、XML登場初期から提案されているRDF(Resource Description Framework)という、リンクへの意味付けを記述するためのフォーマットが元になっている。

RSSを用いるメリットの1つは、Webページから参照されるリンク先への意味付けをコンピュータに理解できる形で行なうことができる点である。これまでのリンクは参照先への移動(つまり参照先からの情報獲得)を行なう手段でしかなく、参照先と参照元の関係は人間が見て判断するしかなかった。RSSにより、人間がたどるためのリンクでなく、コンピュータがたどることのできるリンクが提供されたことで、情報収集と加工の自動化が大幅に進み、参照先が計算によって決まるようなダイナミックな構造を構築可能になったのである。

一方、トラックバックは、他人のブログページに自分のブログページへのリンクを置くことを可能にする仕組みである。これまでは、リンクを定義するのはページのオーナーの独占的な権利であり、リンクを張ってもらうには、メールなどで依頼しなければならなかった。トラックバックにより、ページのオーナーでなくてもリンクを張れるようになったことで、短期間のうちに予期しないつながりを持ったリンク構造ができるのである。

コラボレーティブでダイナミックな新世代Webへ

これからのWebは、複数のメンバーによるコラボレーティブ(協調作業的)な活動と情報加工の自動化により、それぞれのオーナーの予期しない広がりを持つダイナミックな環境になっていくだろう(図2)。ブログの流行は、現在のWebの初期にWebブラウザがさまざまなアイデアを触発し、現在の発展をもたらすきっかけを作った状況とよく似ている。現在のRSSリーダーの多くは、記事をメール風に取り、更新タイミングを知らせるくらいだが、トラックバックやコメント、さらに複数のサイトから取得したRSSから情報を集め、有益な情報に加工することも可能だろう。

また、複数参加者の活動によってダイナミックに形作られるリンクとしては、トラックバックのほかに、コンテンツの作成者や閲覧者が自由に「タグ(意味情報)」を追加していく「フォークソノミー」という仕組みも、今後さらに発展していくだろう。

こうした変化は当面、企業内のシステムとは関係のないところで進むが、しばらくして企業内に浸透してくる点もWebインフラと同様である。企業は、まさに複数のメンバーによる共同作業が求められる場であるため、新世代のWeb技術の導入は意外に早く進むかもしれない。社内ブログの導入を検討している会社はかなりの数に上るはずだ。

図2 Webはよりコラボレーティブでダイナミックな空間 へ進化する

図2 Webはよりコラボレーティブでダイナミックな空間 へ進化する

ワークスタイルを変えるクライアント技術

第2の分野は、各自が仕事で使う作業環境に関するものである。ここでもXMLによる重要な変化が起きている。現在、いわゆるオフィス製品の定番はマイクロソフトのWord、Excel、PowerPointであることに異論はないだろう。ここ数年安定していたこの枠組みも、「ODF(Open Document Format for OfficeApplications)」が標準になったことで変わってくるかもしれない。

オフィス文書の標準フォーマット「ODF」

Linuxが登場したときに、オープンソースのOSによって、Windowsに迫れるかという議論が盛り上がった。しかし、サーバーサイドでの利用は進んだものの、オフィスのクライアントOSとしてLinuxが導入される例はほとんどない。オフィスで利用するOSを決める場合に重視されるのは、価格や性能以上に、蓄積されたドキュメントの再利用性と、パートナー企業との間での相互運用性である。OSに加えてオフィススイートとそのデータフォーマットを押さえているマイクロソフト製品は、企業内での圧倒的な競争優位を維持している。

2005年にOASIS標準(注3)となったODFの登場は、この状況に影響を与える可能性がある。ODFは、OASISで開発された、オフィスで使われる文書の標準フォーマットであり、現在はISOへも提出されている。XMLはもともとSGML(注4)から派生したドキュメントの標準であり、企業内で使われるドキュメントの標準の成立は非常に意義深い。特に、欧州の政府機関などでオープンなフォーマットへの移行はかねてから要請されていたので、広く採用される可能性がある。

一方、マイクロソフトも自社のオフィススイートの次期フォーマットとなる「Microsoft OfficeOpen XML Format」を、欧州の国際標準団体ECMA(European Computer Manufacturer Association)に提出している。これらの標準化競争の行方は分からないが、世の趨勢がオープンな標準データフォーマットの普及に向かっていることは間違いない。そして、オープンなフォーマットが普及すれば、オフィススイート製品の乗り換えも現実的になってくる。

すでに、ODFのフォーマットにも現在のドキュメントフォーマットにも対応できるオフィススイートは存在している。サン・マイクロシステムズが後押しするオープンソースのオフィススイート「OpenOffice.org 2.0(以下、OpenOffice)(注5)」がそれで、無償で提供されている。OpenOffice にはワープロ「Writer」、表計算ソフト「Cals」、プレゼンテーションツール「Impress」といったツールが含まれ、日本語にも対応するなど、オフィススイートとして高い完成度に達している。

また、OpenOfficeはODFだけでなくマイクロソフトのオフィススイート製品のファイルも読み書きできる。画面1に本パートの原稿を編集しているWriterのイメージを示す。Writerで開いている拡張子.odtのファイルの実体は、複数のファイルをまとめたzipファイルである(画面2)。その中のcomment.xmlの内容を画面3に示す。OpenOfficeが今後、自宅や小規模オフィスにどのくらい浸透できるのかが注目される。

画面1 OpenOffice.orgによる編集

画面1 OpenOffice.orgによる編集

画面2 拡張子.odtのファイルの実体

画面2 拡張子.odtのファイルの実体

画面3 Open Document Format 1.0の内容

画面3 Open Document Format 1.0の内容

基幹システムに浸透するXML ソリューション

第3の分野は、企業内の基幹システムである。2005年は、この分野では、XML DBとSOAプラットフォームに大きな動きが見られた。

XML DBは、XML標準化の直後に登場したにもかかわらず、現在それほど普及しているとは言えない。大きな理由は、初期の製品では扱えるデータベースの規模が小さかったことと、十分なパフォーマンスを得るために製品の特性を考慮したチューニングが必要になり、一般エンジニアには使いこなせなかったことにある。しかし、この状況は大きく変わろうとしている。XQueryの標準化作業が進むとともに、使いやすいXMLDBが次々と市場に登場してきているのだ。

一方、比較的最近になって登場したSOAは、そろそろ「SOAとは?」という議論も尽きてきた割には、相変わらず曖昧さを払拭できていないようにも見える。しかし、その背後で着実に企業内インフラとして普及しつつあるのも事実だろう。ミドルウェアのBPEL(Business Process Execution Language。後述)対応が進み、企業の導入事例も増えてきたため、企業内に具体的なノウハウやソフトウェア資産の形でSOA基盤が少しずつ構築されつつあるのだ。

以降では、そうしたXML DBとSOAの動向について詳しく見ていくことにする。

XML DBが大きく揺れた2005年

再び脚光を浴びるXML DB

ITの基盤ソフトウェアには珍しく、2005年はXML DBについて、欧米発だけでなく日本発のニュースが多い年であった。新製品としては、東芝ソリューションがXML DB製品「TX1」を4月にリリースした。8月には日本のサイバーテック社が、米ソニックソフトウェアのXML DB製品「eXcelon」を取得したと発表。今年2月より「Cyber Luxeon」の名で出荷を開始する。

また、XML DBの草分け的製品「Tamino」を日本国内で販売していたビーコンITは、その開発元である独Software AGとの総代理店契約が2006年に完了になると発表した。初の国産XML DB製品として注目を集めた「Yggdrasill」は、開発元のメディアフュージョンからオープンソース化して提供されることになった。

進展するXQuery 1.0の標準化

標準化の進展もあった。XMLの検索言語のXQuery 1.0の仕様群がW3Cの勧告候補(注6)となった。XQueryはXMLの検索言語であり、リレーショナルデータベース(以下、RDB)のSQLに相当する。XML文書の検索を目的に策定が始まったが、今ではXMLの選択、正規化、直列化、全文検索、データモデルなどさまざまな仕様を含んだ仕様群となっており、それらがようやく勧告候補となった。

RDBを使う技術者にとってSQLが必須の技術であるように、XML DBを使う技術者にとってXQueryは必須の技術である。すでに、XQueryは主要なXML DBに採用されているが、XQueryの標準化の進展は、XML DBの技術者の層を厚くする上で非常に重要である。

XMLネイティブ対応が進むRDB

主要なRDB管理システム(以下、RDBMS)がXMLデータを扱う機能を強化していることも、昨今の大きな流れの1つである。

IBMのDB2 UDBは、2006年のリリースが予定されている次期バージョン(コードネーム「Viper」)でXMLをネイティブにサポートする。DB2のエンジンがリレーショナルデータかXMLデータかを判断して格納する仕組みで、ユーザーからはシームレスに両者を扱うことができる。問い合わせ言語としてはXQuery、SQL/XML、APIとしてはXQJ、JDBC 4.0などがサポートされるという。

XQJ(XQuery API for Java)は、JavaのためのXQuery用APIで、現在JSR 225として仕様策定中である。XQJはJDBCと同様にDBアクセスの抽象化を実現するので、この仕様が標準化されれば、開発者はDBの違いを気にせずにDBアクセスを実装可能になる。マイクロソフトは、5年ぶりの新バージョンであるSQL Server 2005を昨年末にリリースした。SQL Sever 2005ではXMLネイティブ対応が進み、XML値はそのままXMLデータ型の列に格納される。この列にはXMLスキーマのコレクションに従って型を設定するか、型の設定を省略することもできる。さらに、XQueryおよびXQueryをデータ変更用に拡張した「XML DML」により、きめの細かいデータ操作が行なえる。

Oracle Database 10gはXML型を定義することにより、XMLデータを扱うことができるXML DB機能を持っているが、昨年9月に出荷開始された同Release 2では、XQueryへの対応やXMLスキーマのインデックスの機能が強化された。内部でXQueryをSQL文による問い合わせと同じ形式にコンパイルし、高速かつ柔軟にXMLデータを扱う仕組みになっている。

XML編集ツール「xfy」の可能性

ジャストシステムが発表したXML編集ツール「xfy」は、業務アプリケーション開発を大きく変えるかもしれない。xfyの特徴は、XML文書をそのまま(ネイティブに)扱えるところにある。普通のエディタはファイルフォーマットとしてXMLを用いる場合、内部では独自の構造を持ち、外部との入出力時にXML形式に変換する。これに対してxfyでは、XML文書の構造を常に維持できるアーキテクチャを採用している。

図3(a)に、xfyで編集中のXML文書の例を示す。文書全体はXHTMLで構成され、その中にSVGで作られた図形が埋め込まれている。xfyではいくつかの表示方法が選択できるが、ここでは左側にソースコード風のビュー、右側にその内容をレイアウトしたビューが表示されている。図3(b)は(a)に文字背景として四角形を加えたものだが、それに合わせて左側に示されているSVGのコード中で、四角形を意味するタグが追加されている。

ネイティブでXMLを扱うメリットは、さまざまなXML文書に対して簡単に編集環境を提供できることにある。XMLを用いたビジネス文書の標準化は、世界中で数多く行なわれてきているが、今後も拡大していくのは確実である。

これまで、XML文書を扱うシステムは、いったんビジネス文書中のデータをRDBに移して編集を行ない、出力を再度XML文書に変換する形で構築されてきた。xfyを使えばこのような回りくどいことをすることなく、XML DBに格納されているビジネス文書を直接編集するクライアントツールを簡単に作成できる。すでに、DB 2 の次バージョン(Viper)と連携するためのツールも開発されている。今後、編集ツールのほかに、SOA連携のためのクライアントを加えたエンタープライズ版が発売されるとのことである。

xfyは発表されたばかりの製品であり、必要なツールがそろい、その真価を発揮するようになるまでには多少時間がかかるだろうが、開発の現場を大きく変える可能性を秘めていると言える。

アーカイブス一覧へ