DBMS導入事例:IBM DB2 9
DB2が「XMLDBかRDBか?」の迷いからユーザーを解放
ネットプライスは、商品レビューサイト「monopedia」でXML対応の「DB2 9」を採用。ビジネス要件が流動的なため、多様なデータ形式を受け入れるDBを必要としていた。ここでは、XMLDBの導入事例を紹介する。
新規事業の立ち上げにXMLDBを採用
XMLのデータをそのままのデータ構造で格納できるXMLデータベース(DB)は、スキーマに縛られにくい「柔らかいDB」として2000年ごろから注目されてきた。しかし、依然として非構造データを取り扱う文書管理システムなど、リレーショナルデータベース(RDB)が不得意とする一部の領域でしか普及していない。RDBの牙城が堅固なことに加え、XMLDB製品にも拡張性や機能の面で未成熟な部分があったからだ。
とはいえこの数年間で、XMLは標準的なデータ・文書形式としての地位を揺るぎないものにしつつある。「XMLDBかRDBか」といった単純な二者択一ではなく、もっと手軽にXMLの便利さをシステムに取り込めないものか。それを実践したのが、ネットプライスである。
ネットプライスは、インターネットを活用したコンシューマー向けの共同購入サービス、とりわけギャザリング分野(2007年9月の同分野の売上高は約120億円)では草分け的な存在だ。一方で、新規事業の開発も積極的に進めており、その成果として2006年末に「レビュー集約サイト」と銘打った「monopedia(モノペディア)」を立ち上げた。同サイトは、PCから生活雑貨に至るまで多様な商品レビューを提供しており、ユーザーからの直接投稿のみならず、提携サイトやブログからも情報提供を受けるCGM(Consumer Generated Media)サイトとなっている。
エキスパートエンジニア 今井 剛氏
monopediaは、CGMサイトとしては珍しくバックエンドにXMLDBを本格的に採用している。システム構築を1人で担当したネットプライスの今井 剛氏は次のように話す。
「スモールスタートの新規事業ということもあり、当初はオープンソースソフトウェアのMySQLでプロトタイプの開発を進めていました。しかし、『もっとこうした方がレビューを書き込みやすいのではないか』といった意見が社内から多く寄せられ、システムの修正がひっきりなしに起こっていました。また、他サイトとの連携も考えていましたが、開発当時は漠然としたもので仕様は固まっていませんでした。そこで、結局はどのようなデータでも入れられるDBが必要との結論に達し、XMLを検討してみようということになりました」
monopediaのシステム開発は、2006年10月に始まり年末にはα版をカットオーバーするという強行軍だったことに加え、新事業だけにビジネス要件も流動的だった。つまり、ユーザーの反応やビジネスの展開に合わせてシステムを柔軟に対応させることが求められていた。仮にでもRDB形式でデータ構造やテーブルのスキーマを固めてしまうと、後に変更作業で苦労することは目に見えていたのだ。
真のハイブリッドを実現したDB2
ネットプライスが最終的にXMLDBの採用へ傾いたのには理由があった。同社は、従来各サービスのRDBMSにIBMの「DB2」を採用していたが、2006年の夏に“pureXML対応”をうたった最新版の「IBM DB2 9」が登場していたのだ。
XMLDB製品には、XML処理に特化した構造を持つネイティブ型と、DB2やOracle Databaseなど既存のRDBMS製品がXML処理にも対応したハイブリッド型がある。ハイブリッド型は通常、RDB構造の中で疑似的にXMLDBを扱うため、XMLデータを丸ごとテキストとしてRDBのCLOB型カラムに格納するか、XMLデータを分解してテーブル群にマッピングする方法が取られる。しかし、CLOB型カラムにデータ全体を格納すると検索性能が落ち、複雑なマッピング方式ではDBの柔軟性が損なわれる。
これに対しDB2 9は、XMLの特徴であるツリー構造のままXMLデータを格納する。つまり、1つのDBの中で完全にハイブリッドな形でRDBとXMLDBを共存させ、1つの管理システムで統合的に扱えるというメリットがある。もちろん、ノンスキーマのウェルフォームドXMLも扱える。
実際、XMLDBに触れるのが初めてだった今井氏も、無償版の「DB2 Express-C」で製品検証を始めると、即座に“使える”という感触を得たという。
「XMLデータへタグを追加するだけで、RDBでいうところのカラムに相当するデータ項目を継ぎ足せます。RDBのように逐一スキーマを変更しなくても、データ項目を横へ無限に増やせる感覚は新鮮でした」(今井氏)
データの種類によってRDBとXMLDBを使い分けられるハイブリッド型のメリットも魅力だった。既にExcelで整備していた商品カテゴリやECサイトなどの定型データはRDBとしてテーブル形式で、ジャンルによって属性情報が大きく異なる商品データやデータ項目が変化しやすい会員データなどはXML形式で格納する、といった具合である。
一般的に、RDBはSQL、XMLDBはXQueryをクエリ言語として使用するが、DB2 9ではSQLおよびSQLにXQuery関数を埋め込んだ“SQL/XML”でRDBとXMLDBの両方をシームレスに操作できる。つまり、新たにXQueryを習得しなくても使い慣れたSQLでクエリが作成できる点も心強かったようだ(DB2 9は、XQueryはもちろんのこと、XQueryにSQLを埋め込むこともできる)。
最終的にネットプライスは、サイト公開まで3週間という目前になってDBMSをMySQLからDB2 9 Express(有償版)に切り替える決断をした。冒険ではあったが、それだけDB2 9に対する期待が大きかったのだ。「スキーマ定義などDB開発に労力を割かれることなく、アプリケーション開発に専念できました。XMLに対応しているWebアプリケーションフレームワークはほとんど存在しなかったため、DBアクセスの実装はすべてアプリケーション側で対応しなければならなかったのですが、従来とは違って開発は楽しかったです」と、今井氏は振り返る。
外部サイトのコンテンツもXMLDB格納
XMLDBを採用したことでシステムの柔軟性は確実に高まった。言い換えれば、続々と出てくるサービス要求を受け入れやすくなったといえる。
例えば、当初は会員登録後でなければレビューを書き込めない仕様だったが、ハードルを下げるためにレビュー投稿後でも会員登録できるよう変更した。非会員が書き込んだ際は「連携ID」を発行し、それを基に会員登録後に投稿済みのレビューとヒモ付けるのだ。「もしRDBだけでDBを構成していたら、一部のユーザーが1回しか使わない連携IDのためにわざわざスキーマを変更していられないと、ビジネス側の要求を受け入れていなかったでしょう。それが、タグを追加するだけなので気軽に応じられました」(今井氏)
外部サイトとの連携も容易である。monopediaでは、D.P.EYEが手掛ける口コミ販促サービス「B-PROMOTION」に参加する有名ブロガーの商品レビューを自動収集してサイト内で一覧表示しているが、これはXMLデータとして自サイトのXMLDBにデータを取り込んで処理している。これも、XMLDBを使っていたからこそ可能だったのだ。
今井氏は次のように指摘する。「今やWebサイトのAPIから吐き出されるデータのほとんどはXMLです。それなのに、普段はRDBとしてデータ保存するためXMLパーサが介在し、わざわざデータを変換しなければいけません。そのままXMLで保存できれば、もっと楽にデータを活用できるのではないでしょうか。取得するXMLに、今は使わないデータ項目が含まれていたとしても、気にせず適当なタグを追加して取り込んでおけば、後で役に立つことがあると思います」
420万件超の全文検索スピードが0.01秒
monopediaでは、ギャザリング事業で扱った商品に加えアマゾンなどの商品データもXMLで格納しており、データ登録された商品点数は420万点にも及ぶ。その膨大な商品データ全体に対して全文検索を掛けた場合でもレスポンスタイムは0.01秒レベルと、極めてハイパフォーマンスなシステムを構築している(DB2 9に標準添付されるアドオンツール「Net Search Extender」を使用)。
一般にネイティブ型のXMLDB製品の場合、大量のデータを扱うのは厳しいとされる。その点、RDBMSとして数々の大規模システムで導入されているDB2の高い処理性能は、DB2 9のXMLDB機能にも当てはまるようだ。ネットプライスでは、将来的にmonopediaで1000万点以上の商品を扱う計画で、柔軟性と高性能を両立させたDB2 9の存在は欠かせないものとなっているようだ。
インターネット業界では、変化にどれだけ柔軟に対応できるかがビジネスの要点となる。「(RDBという)単なるデータ保存形式がネックになって、ユーザーへのサービスが前へ進めないのはもったいないです。そこをXMLで軽くすれば、サービス提供しやすくなります」と今井氏は話す。
ネットプライスの事例は、XMLDBの潜在的な可能性の高さを示すものだろう。そしてRDBとXMLDBのシームレスな融合を実現したDB2 9は、インターネット業界におけるXMLDB活用の幅を広げそうだ。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「Excel至上主義」の終わらせ方 丸2日の手作業地獄から情シスと現場を救うには
-
2
取手市がVDIと決別した理由 更改費用「4倍超」を約1.7倍に圧縮
-
3
「Microsoft 365のセキュリティ運用」に関するアンケート
-
4
急増する「AIはこう言ってる」マン 判断を狂わせる「AI忖度」を防ぐには?
-
5
221人調査で分かった「情シス最大のストレス」は?
-
6
「Salesforceのテスト自動化ツール」に関するアンケート
-
7
「データストレージの活用方法」に関するアンケート
-
8
「AI時代の統合基盤・エンタープライズAI管理」に関するアンケート
-
9
AIで人を減らした企業がもう心変わり 「AIブーメラン現象」の実態
-
10
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
ホワイトペーパーランキング PR
-
1
年収2000万「クラウドセキュリティのプロ」になれる資格とは
-
2
セキュリティソフトをすり抜ける標的型攻撃メール、不審メールの見破り方とは?
-
3
Windows Updateの通信集中で回線が逼迫、ネットワーク刷新事例に学ぶ解決策
-
4
財務を戦略的組織へ進化させるAI活用術、4つの主要な障壁と解消方法
-
5
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
6
“あのファイル転送”で暗躍するノーウェアランサム
-
7
標的型攻撃メールを見破るには? サンプル文面を例に傾向を解説
-
8
商用利用の安全性を確保し大量のコンテンツを高速で生成する、AI活用の秘訣
-
9
マンガで解説、1日で生成AI環境を構築できるワークショップの中身とは?
-
10
Dark AIが台頭する時代の新発想、「より高度なAIで対抗する」具体的方法とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー