アットマーク・アイティ @IT@IT情報マネジメント@IT自分戦略研究所QA@ITイベントカレンダー  
 
 @IT > NeoCoreXMSがRDBの限界を超えた!(後編)
 
@IT Special

 

PR

NeoCoreXMSがRDBの限界を超えた!(後編)

NeoCoreXMSとRDBを共存させれば
変化に強く、堅牢なシステムが構築できる

第2世代XMLデータベースの代表的製品として、国内No.1シェアの地位を築いている「NeoCoreXMS」。数多くの国内導入事例を分析した結果、NeoCoreXMSは特定分野において、多くのRDBベンダ製品では達成困難な仕事を楽々とこなしていることが明らかになった。本記事では前後編にわったって、その詳細をお伝えする。

XMLデータベースとRDBの関係は、どうあるべきか?

 不定形・半定型のデータであっても難なく格納でき、しかもシステム運用中に突発するデータ構造の変更にも柔軟に対応できる。そんなXMLデータベースの中でも国内トップシェア(富士キメラ総研調べ)を誇っているのが、「NeoCoreXMS」だ。前編ではデータ構造が流動的なデータを、不幸にもリレーショナル・データベース(以下、RDB)に格納してしまったシステムが、コアのデータベースをNeoCoreXMSにリプレイスすることで危機を脱するケースについて考察した。これはXMLデータベースの認知が低かった時代に構築された過渡期のシステムが、NeoCoreXMS導入によって正常なシステムに回復していく過程を示していた。

 後編の今回は、新規に立ち上げるシステムで、NeoCoreXMSとRDBのそれぞれの長所を生かした共存型の設計を考察し、“データベース・システムのあるべき姿”を探っていこう。

新規構築するシステムでは
「データ構造の変化、複雑度」に着目する

 ビジネスのIT化は急速に進行しているが、その多くはホスト・システムやクライアント・サーバ型システムをWebアプリケーションに置き換えるものが多かった。これらは勘定系や顧客管理といった比較的定型化しやすい業務のIT化であり、そこで扱うデータもRDBとの相性がよい定型データがほとんどだ。

 J2EEや.NETといったWebアプリケーションのフレームワークが熟成した今日、これら定型データを基本とする業務のIT化は、それほど困難な開発案件とはいえなくなりつつある。しかし多くのアナリストも指摘するように、企業内のデータでIT化されているのは全体のごく一部に限られ、まだまだ多くはIT化から取り残されている。

 このようなIT化しにくいデータとは、データ構造が不定型であったり、システムの運用中にデータ構造が変化してしまうものだ。表計算ソフトやワープロソフトで作成されたり紙の帳票に手書きされたデータなどを、どうやってITシステムに取り込みビジネスに活用していくかが、今後の重要な経営課題といえるだろう。ここ1〜2年でXMLデータベースのニーズが急速に高まってきたのは、ITシステムがこれまで手つかずだったデータ領域にまで浸透してきたことの反映ともいえる。

 定型化できないデータ、すなわちRDBが苦手としているデータは、前編で取り上げた「データ構造の頻繁な変更」に加えて、「データ構造の複雑度」もある。ありがちなケースを考えてみよう。

 例えば、社内にあるデータ資産とその管理システムがバラバラに存在しているとしよう。カタログ用のワープロデータや設計用データ、費用概算データなどをそれぞれ単独にシステム構築してしまうと、管理手順もデータの粒度レベルもまちまちになってしまう。これを全体最適化の視点で管理しようと思ったら、当然運用コストはふくれ上がるし、何よりデータ活用の面で非効率的であることは明らかだ。バラバラなデータが散在する状況は、ビジネスの成長のうえで大きな問題となる。

 日立システムアンドサービス ソリューション営業統括本部 東京第1営業本部 第1営業部の辻正孝氏は次のように指摘する。「こういった状況に陥るのは、急速に事業が拡大したり、新規ビジネス分野に乗り出した企業に多いですね。取り扱う商品点数が爆発的に増大すると、商品に関する顧客からの問い合わせがあっても、データの格納場所が分からず回答に時間がかかったり、やっとたどりついたらすでにデータが陳腐化していたといった問題が発生します」。

 最新の商品情報を適確に管理し、かつ迅速な検索ができるデータベース・システムの構築は火急の要となるわけだが、そこでRDBを採用してしまうとさまざまな問題に直面するという。

 「もともと正規化しようのないデータが非常に多くある場合、膨大な点数の商品とそれらの付帯情報を正規化しようとすると、数百といったオーダーのサブテーブルを作ることになります。その内訳も、ある商品なら数個のテーブルで正規化できるのに、別の商品になると数十個のテーブルになるといったことが起きるのです。さらに日々新しいアイテムが追加されると、データベースのメンテナンスに負荷がかかります。これらのことを考えると、非定型のデータをそのまま格納できるXMLデータベース以外の選択肢は難しいですね」(日立システムアンドサービス 産業システムサービス事業部 オープンソリューション本部 第2システム部 第1グループ 技師の山内道夫氏)。

 XMLデータベースの特長は、数百にもなる付帯情報を持った商品データでも、1つの親ノードの配下に深い階層構造を持たせればよく、RDBのようにテーブル設計の負荷はかからない。さらにNeoCoreXMSは、すべてのノードに対して自動的にインデックスを作成する独自の検索方法DPP(Digital Pattern Processing)を持ち、例えば1Gbytesでも100Gbytesでもほぼ同じ時間での超高速検索が可能になっている。スキーマ定義をせずにデータをどんどん投入していっても高いパフォーマンスを保持するNeoCoreXMSは、専任の管理者がいなくても簡単に運用していけるのだ。

 複雑なデータ構造で、将来のスキーマ変更が確実に予想されるシステムを新規に構築するなら、NeoCoreXMSといった実績のあるXMLデータベースを導入すべきことはご理解いただけただろう。では、すべてのデータハンドリングをXMLデータベースに任せればいいのかというと、実はそうでもない。

どこまでをNeoCoreXMSに任せたら成功するか
その線引きを考える

 山内氏はNeoCoreXMSを採用したシステム構築の経験から、「RDBか、XMLデータベースか」という二者択一的な発想は現実的でないという。「運用フェイズ以降、データ構造の変更が確実なら、その部分はXMLデータベースにすべきでしょう。私の担当したケースでも、商品情報はすべてNeoCoreXMSに入っていますが、そのほかの顧客マスタといった定型情報はRDBに格納しています。なぜあえて全部をNeoCoreXMSに統一しなかったという理由ですが、当社にはかねてからRDBでの豊富な実績とノウハウがあります。定型的な情報を格納する部分は、RDBで作ってしまった方が速いのです。NeoCoreXMSを採用したのは、非定型でひんぱんに追加・変更のあるデータを効率よく管理するのにうってつけだったから。それが満たされたのだから、残りの部分は熟知の製品で作ってしまおうという、いわばNeoCoreXMSとRDBの“いいとこ取り”ですね」。

 定型化できて構造の変わらない部分はRDBで、構造がまちまちで変更の可能性が高い部分はNeoCoreXMSでというわけだ。日立システムアンドサービスでは、アライアンス製品のDCM(Demand Chain Management)パッケージ「HAHT Commerce Suite7」、EAIソフトウェア「ASTERIA」などのミドルウェアを巧みに組み合わせながら、NeoCoreXMSとRDBを共存させる独自のノウハウを持つ。信頼の置けるミドルウェアを活用することで、開発コストを下げつつ安定したシステムを構築する手法は、Webアプリケーション開発ではいまや常識だ。この発想をデータベースの領域まで拡張して、XMLデータベースとRDBを組み合わせいくことが、変化に強く、かつ安定したデータベース・システムの構築につながるというわけだ。

マルチメディア対応など、データの再利用が促進される

 データ構造が不均一だったり構造が頻繁に変更される商品情報などをXMLデータベースに格納すると、上述した管理コストの削減など開発者にとってのメリットは大きいが、それに加えてさらなるメリットが生じてくる。それは、商品情報を再加工してDTPソフトに渡して印刷データを簡単に作成できるなど、データの再利用が促進されるのだ。

 「NeoCoreXMSを導入されたお客さまの中には、Webカタログから紙カタログへの展開、海外展開に伴う多言語化への対応といったマルチメディア化の推進に向けてさらに活用していきたいという声もあります。つまり、手始めに顧客向けWebシステムを構築し、その後は社内に点在する多様なデータソースを集めて再配分するハブとして、NeoCoreXMSの活用を拡げていこうとされています」(キヤノンシステムソリューションズ 製造事業部 第二開発部 第三課 木村亮氏)。

 データベース領域においてNeoCoreXMSとRDBを共存させることで、データ構造の追加・変更はNeoCoreXMSで吸収し、従来型の定型データは既存の構築ノウハウを活用できるRDBへ振り分けることが可能になる。また、再利用のニーズが高い商品情報などをNeoCoreXMSに格納しておけば、ワンソース・マルチメディアへの展開も可能になり、システムの柔軟性は非常に高くなる(図1)。

 図1 NeoCoreXMSとRDBを共存させたシステム・イメージ図


まとめ

 前後半にわたってNeoCoreXMSの導入メリットを考えてきたわけだが、

  • RDBでは実現できなかった要件をNeoCore XMSが解決
  • NeoCore XMSとRDBのそれぞれの長所を生かした共存

という2つの傾向の背景にある事情は理解できただろう。最後に、システムインテグレータ自身の言葉を紹介しておく。

 「やはりNeoCoreXMSとRDBの住み分けが一番重要ですね。RDBのノウハウがあって、なおかつRDBでできる部分を、あえてNeoCoreXMSに統一しようとこだわる必要はないということです。それよりも、RDBで構築できるところはRDBで作ってしまい、NeoCoreXMSでなくてはできない部分に余力を注ぐ方が効率的です。それだけに、着手する前にきちんと要件の切り分けを行うことが成功に結びつくと思います」(山内氏)。

 「NeoCoreXMSはスキーマレスなので、データ設計が完全に固まる前にデータベースを立ち上げてしまえるのがいいですね。取りあえず稼働させておいて、後から拡張していけるので、データベース構築の手間がビジネスの足を引っ張ることはなくなります」(辻氏)。

 ユーザー企業の「やりたいこと」を現実のものとするには、もはやRDB一辺倒の考え方では成り立たない。開発者はXMLデータベースを共存させた柔軟なデータベース・システムを提案していく時代になっているのだ。

NeoCoreXMSがRDBの限界を超えた!
前編 RDBでは対応できない製品点数とスキーマ変更
NeoCoreXMSならさらりと解決して見せます
後編 NeoCoreXMSとRDBを共存させれば
変化に強く、堅牢なシステムが構築できる

提供:三井物産株式會社
企画:アイティメディア 営業局
制作:@IT編集局
掲載内容有効期限:2006年12月31日
 
関連リンク
NeoCoreXMS

NeoCoreXMS 製品情報

NeoCoreXMS ソリューション

NeoCoreXMS ユーザー事例

NeoCoreXMS 評価版ダウンロード

XMLデータベース総合サイト
XMLDB.JP
ネイティブXMLデータベースXprioriユーザのための総合情報サイト

NeoCoreXMSの無償版「Xpriori」ダウンロード

XMLデータベース解説記事
XMLデータベース・ソリューション適材適所

ここまで来た!
XMLデータベース選びのポイント指南


これなら簡単 RDBからXMLDBへのデータ移行

徹底比較! RDB vs XMLDB

「データベース開発についてのアンケート」
結果発表


XMLデータベースの活かしどころ、RDBの泣きどころ


 
@ITトップ@IT Special インデックス会議室利用規約プライバシーポリシーサイトマップ