PRESS RELEASE (技術)
2010年6月17日
株式会社富士通研究所
クラウドサービス向け分散型データ保管技術の高速化に成功
従来と比べて約7~8倍の高速処理を実現
株式会社富士通研究所(注1)は、取り扱うデータを「Key(キー)」と「Value(値)」の組み合わせとして表現し、複数のサーバにバラバラに保存する分散型データ保管技術において、高速な集計やデータ更新操作の一貫性の維持を可能とするための基盤技術を開発しました。
このような分散型データ保管技術は、キーとバリューという単純なデータ構造を持つことから分散キーバリューストア(以下、分散KVS)と呼ばれています。この技術は複数のサーバによる分散処理に向いており、サーバ台数の変更にも容易に適応できるため、多くのクラウドサービスで使われていますが、データを複数サーバに分けて配置するために、集計処理や一連のデータ更新操作の一貫性維持が難しく、用途が限定されていました。
今回、新たな処理方式の開発により、従来の分散KVSと比較して、集計処理では約8倍、更新操作の一貫性の維持の処理では約7倍の高速化を実証しました。これにより、従来の分散KVSでは活用がむずかしかった、アクセスログからの評判分析の結果を短時間で得るなど、クラウドサービスでの新しい応用が期待できます。
開発の背景
クラウドサービスでは、ネットワークを介して多くのユーザにサービスを提供します。このとき、同時にアクセスするユーザ数が数千~数万となることもあるため、データセンターにサーバを多数設置して処理をおこないます。
多くのユーザがアクセスする場合に処理のボトルネックとなりがちなのは、データの読み書きを行うデータ保管・アクセスの部分であり、クラウドサービスでは必要に応じてサーバ台数を追加して能力や容量を容易に拡張できる分散KVSを使うようになってきています。
分散KVSは、取り扱うデータを「Key(キー)」と「Value(値)」に単純化したデータ保管方式であり、キーの値によって格納を担当するサーバを決定し、データを多数のサーバにバラバラに分散して格納します。1台のサーバに負荷が集中せずに多数のサーバで処理を分担するので性能が高く、さらに、ひとつのデータを別のサーバに複製して格納することでサーバが1台故障してもデータはなくなりません。こうした性質から、分散KVSはオンラインショッピングなどで多くのユーザのアクセスを処理しなければならない大規模なWebサイトのセッション情報の保管などに使われています。
図1 分散KVSのイメージ図 |
課題
分散KVSでは、データが複数のサーバにバラバラに存在してしまうために発生する、以下の2つの課題があります。
- 大量データの集計処理が遅い
複数のデータを集めて結果を出す集計処理では、複数のサーバからデータを集めるために、サーバ間の通信に時間がかかって遅くなります。
- 複数データへの一貫した更新操作が遅い
複数のデータに対して一貫した更新操作をしようとすると、別のサーバ同士で更新処理順序の調停が必要となり、そのサーバ間の調整のために処理が遅くなります。
開発した技術
上記の課題を解決するため、以下の2つの技術を開発しました。
- データを集合として一括して高速に処理する技術(図2)
複数のサーバに分散して配置されたデータを一括して扱う処理(集合演算)を高速に実行するための技術です。この技術は集合演算の基本となる演算子を提供し、それぞれに対し処理の並列化、および通信の最適化を行っています。ユーザはこれらの基本演算子を組み合わせることで、さまざまな集合演算を高速に実行することができます。
図2 データ集合の高速処理技術 - 複数データの更新の一貫性を維持する技術(図3)
各サーバで更新処理を受け付ける際に更新順序の調停はせず、効率的に複数サーバにまたがる更新処理を行い、かつ、一貫性を維持する技術です。この技術では更新処理の受け付け時にタイムスタンプ情報を付加して担当サーバへ転送します。各サーバでは、データごとにタイムスタンプでソートした命令の履歴を保持します。もし他の更新処理の影響が判明したら、履歴を基に関係する命令を再実行することで、一貫性を維持します。
図3 更新一貫性技術
効果
100万件のデータ集合を対象とした結合処理について、今回開発した技術と従来技術とを同じ処理台数48台のサーバ環境で比較したところ、今回開発した技術は約1/8の時間で完了しました(図4)。
更新の一貫性を維持する技術については、48台のサーバ環境で従来技術と比較したところ、今回開発した技術は 約7倍の処理能力が得られました(図5)。
図4 複数のデータ集合の結合処理
図5 複数データの更新性能
本技術を用いることにより、分散KVSの応用範囲を広げることが可能となり、クラウドサービスのさまざまな処理での利用が期待されます。
今後
より多数のサーバを使った検証を進め、性能を向上させていく予定です。
商標について
記載されている製品名などの固有名詞は、各社の商標または登録商標です。
以上
注釈
本件に関するお問い合わせ
株式会社富士通研究所
クラウドコンピューティング研究センター
電話: 044-754-2575(直通)
E-mail: x4u@ml.labs.fujitsu.com
プレスリリースに記載された製品の価格、仕様、サービス内容、お問い合わせ先などは、発表日現在のものです。その後予告なしに変更されることがあります。あらかじめご了承ください。