NTT未来ねっと研究所 研究主任の井上武氏
NTT未来ねっと研究所 研究主任の井上武氏
[画像のクリックで拡大表示]

 2009年4月10日に開催されたITproテクノロジ・カンファレンス「徹底理解『Amazonクラウドサービス』」で講演のトリを飾ったのは,NTT未来ねっと研究所 研究主任の井上武氏(写真)。現在クラウドサービスに利用されているデータベース技術は,伝統的なリレーショナル・データベースからどのように進化したか,順序立てて説明した。

 まず井上氏は,従来のリレーショナル・データベースの特徴に言及。データの不整合性を排除するリレーショナル(関係)モデルや,経過的な状態を排除するためのトランザクション処理は「データベースが主に金融機関の帳票データを保管していた時代のニーズに合致したものだった」(井上氏)と説明した。

 「データベースが進化するきっかけは,管理対象データが変わったことだ」(井上氏)。インターネットが普及するにつれて,データベースの管理対象の主役が,定型の帳票データから不定型のWebデータへ移行した。同時にデータ量も増加した。「Webデータ管理のための努力が,クラウド時代の新しいデータベースを生んだ」(井上氏)。

 データベースで多量のWebデータを管理するために,まず,パフォーマンス向上が課題になった。リレーショナル・データベースは,整合性管理が容易になるよう,データの重複値を正規化して保管する。データを参照する場合は,正規化したデータを再び結合する。「Webデータは帳票データほど整合性を必要としない」(井上氏)ため,新しいデータベースでは,この正規化・結合(関係モデル)の処理をなくし,重複値もそのまま保管するようにした。

 次の課題は,データ構造の変化への対応である。Webデータのような不定型のデータを保管するために考案されたのが「キーバリュー・ストア」だ。キーバリュー・ストアは,すべてのデータをBLOB(Binary Large Object,属性のないレコード)として保存できる。データにアクセスするには,キーを指定する。属性ごとの索引付けができないために起こる検索速度の低下は,主表のほかに,索引用の表を用意することで解決した。「主表と索引表が不一致の可能性があるが,Webデータなので妥協できる」(井上氏)。

 ここまでの努力で,パフォーマンスと不定型データの課題は解決した。しかし,リレーショナル・モデルから,レコードごとにスキーマを保持するキーバリュー・ストアへの移行に伴い,データセンターで扱うデータ量は増加した。この問題は,「データ量の増加に合わせてコンピュータを増やし,処理を分散すれば解決する」(井上氏)。幸い,キーバリュー・ストアの構造は,参照関係を考慮せずに任意のレコードで分割できるため,複数のコンピュータで処理を分散するのに適している。

 ここで,新たな課題が浮上する。処理を分散するコンピュータを追加する場合や,1台が故障した場合,効率良くデータを再配置するにはどうすればよいかだ。この課題の解決案として登場したのが「コンシステント・ハッシング」という技術である。

 この技術は,(1)データのキーとコンピュータのハッシュ値を計算し,(2)そのハッシュ値を昇順に並べてリング上に配置,(3)各キーを後続のコンピュータに保存する。これにより,コンピュータを追加した際のデータ再配置は,追加機と後続機の間のキーの設定だけで済む。故障した場合の再配置も同様である。この技術を使った場合,「コンピュータの台数が増えれば増えるほど,再配置するデータ量は減少する」(井上氏)。

 このようにして,現在のクラウドサービスを支えるデータベース技術が作られてきた。クラウド時代のデータベースと,従来のリレーショナル・データベースの特徴的な違いは「経過的な状態を許容するかどうか」(井上氏)。

 たとえば複数レコードにまたがる更新処理が発生した場合,リレーショナル・データベースでは,経過的な状態を完全に排除するために,処理が対象データのすべてに反映されるまで全対象データへのアクセスをロックする(排他的ロック)。それに対して,クラウド時代のデータベースは,更新処理中でも対象データの読み書きが可能だ。タイムスタンプを比較して古いデータによる上書きを禁止するだけの楽観的ロックを実行する。楽観的ロックの考え方について,井上氏は「ブログを更新した際に,過去の処理で上書きされるのは困るが,反映に多少時間がかかるのは問題ない」と例示した。

 井上氏は「リレーショナル・データベースとクラウド時代のデータベースは,将来的に共存していく」と考える。Webデータの増加にともない,クラウド時代のデータベースのニーズが今後拡大していくが,金融データのように,完全な整合性が重要視される場面では,「従来どおりリレーショナル・データベースが利用される」と井上氏は予想する。