LAMPやLAPPにこだわらない! 商用DBMSがもたらす可用性:DBMS導入事例:Sybase Adaptive Server Enterprise
携帯サイトにおいては、DBMSが重要な意味を持つ。携帯電話ならではの技術的な制約が多い中で安定した応答速度を実現するためには、DBMSに高い性能が求められる。月間10億PV以上を効率的にさばく秘訣とは。
サイバープラスは、携帯サイトの運営を手掛けるベンチャー企業だ。事業の中核となるWebページ作成サービスサイト「ポケットスペース」(以下、ポケスペ)は、2003年8月のサービス開始以来、順調に会員数を増やしている。現在は、同サイト内に94万人にも上るユーザーのWebページを抱えるなど、Webサイト全体の月間ページビュー(以下、PV)は10億を超える。「いかにユーザーに楽しんでもらい、ベネフィットを与えられるかを考えています」(経営戦略室長 山本 浩史氏)というだけあり、写真・動画アルバム、メールマガジン、アフィリエイトなど、PC向けのWebサイトにも劣らない多様なサービスを用意している。
そのポケスペは“Web系”のご多分に漏れず、オープンソースソフトウェア(以下、OSS)を中心にシステムが構成されている。定番となるOSのLinux、WebサーバのApache、開発言語のPerl、PHPだ。ただし、システムの要となるDBMS(データベース管理システム)には商用製品が採用されている。サイベースの「Sybase Adaptive Server Enterprise 12.5 for Linux」(以下、ASE)だ。サービス開始から4年余り、PVの急激な増加を支えてこられたのは、この選択によるところが大きかったという。
「LAPP」から商用DBMS採用へ
ポケスペでもサービス開始当初はコストを抑えるため、DBMSにOSSのPostgreSQLを使っていた。しかし、サービス開始から1年もたたない2004年5月には早くも1000万PV/日を突破し、サービス別に分けていた3台のDBサーバ(Intel Xeon 2.8GHz×4)で負荷分散を行っても完全な過負荷状態に陥っていた。「当時は『サービスは良いが、すぐに落ちる』との評判が立ってしまいました」と山本氏は振り返る。
そこでサイバープラスでは、3000万PV/日を当面の最大負荷と想定し、システム全体の再構築に乗り出した。その結果、OSSのDBMSの使用は断念することになったのだが、その理由をシステム部マネージャーでDB管理者の清本 秀樹氏はこう話す。「3000万PV/日となるとDBサーバも冗長構成が必要でしたが、PostgreSQLのレプリケーションツールは信頼性がいまひとつでした。(標準でレプリケーション機能を持つ)MySQLという選択もありましたがトランザクション機能が弱く、その分をアプリケーション開発で補わなければならない点がネックでした」
また、携帯サイト特有の問題も存在した。携帯電話は1回に受信できるデータサイズが数Kバイト以下に制限されているため、1つのページを細かく分割して送信する必要がある。加えてポケスペの場合、ユーザーからアクセスがあるたびに広告を動的に生成するビジネスモデルであったため、DBサーバにかかる処理負荷が非常に大きなものとなっていたのだ。つまり、「DBサーバの能力が全体のパフォーマンスを大きく左右する」(開発部マネージャー 林 賢氏)というわけだ。3000万PV/日ともなれば、ピークの時間帯は毎秒、何千件というセッションが発生するのが一般的だ。DBサーバには相当な負荷がかかっていたといえる。
2004年当時で考えると、3000万PV/日を携帯サイトでさばくには、性能や機能性、信頼性のどの点を取ってもOSSのDBMSでは荷が重く、商用のDBMSに頼らざるを得なかったようだ。
モバイル業界で評価の高かったASE
プラットフォームにLinuxを使う方針に変わりはなかったため、サイバープラスが導入を検討したのはLinux版の商用DBMSだった。候補として挙がったのは、Oracle Dadabase 10gとASEである。携帯サイトにどの製品が適しているかという情報は一般には出回っていなかったため、つてを頼って同業他社のシステム構成を調査した。すると、インデックス、サイバードなどの大手携帯向けコンテンツ配信事業者においても、ASEが幅広く利用されていることが分かった。
「業界内で、ASEはOracleよりも速く、かなりの負荷に耐えられると評価されていました」(山本氏)
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
Copyright © ITmedia, Inc. All Rights Reserved.