優れた同時実行性と分散処理で高速性を担保
(2)マスターノード不要アーキテクチャでDBのボトルネックを解消
次に、オランダの旅行サービス提供事業社、TravelBird社の事例だ。同社はベースのインフラとしてAmazon Web Services(AWS)を活用し、Webサイトのログデータを解析。分析レポートの提供のほかユーザーごとのWeb画面のパーソナル化やリコメンドを行っている。
TravelBirdでは、ユーザーからの同時多重処理で性能が劣化するという課題を抱えていた。多くのユーザーが同時にアクセスすると処理が遅くなってしまう理由はマスターノードにあった。Verticaの競合にあたるデータベースには処理を受け付けるマスターノードがあり、そこに処理が集中してしまうことで、ボトルネックになっていたのだ。対してVerticaはマスターノード不要のアーキテクチャ(注2)だ。全てのノードで処理を受け付けることができ、ノードの数の分だけ処理性能も向上する。河西氏は「Verticaは同時実行性に優れています。日本の多くのユーザーでもこの強みが理由で採用されるケースが多い」と強調する。
さらに、TravelBirdで評価されたもう1つの機能はFlexTable(注3)だ。Flex Tableは、ログデータやセンサーデータなどの半構造化データを事前のテーブル定義なしにロードできる。そのため、データをテーブル定義に合わせて加工する必要がなくなる。これにより、たとえ半構造化データの項目が変わっても、そのままロードできるため、半構造化データをより簡単に活用することができる。マスターノード不要のアーキテクチャとFlexTableの2つが評価され、顧客の課題を解決できた事例となっている。
―――――――
(注2)
複数ノード構成のアーキテクチャについての解説はコチラ
(注3)
FlexTableの概要はコチラ
(3)クラウド上でピーク時のみ計算ノードを増加、高速処理のコストを最適化する
次に、米国のThe Trade Desk社の事例だ。同社は広告会社を対象にDSP(Demand-Side Platform)を提供し、オンライン広告のオークションデータの分析などを行っている。1秒間に1000万件ほどの分析処理が行われており、従来のシステムではピーク時にパフォーマンスが劣化していたという。ハードウェアを追加していくことで対処していたが、コストと運用管理の手間が増大していた。
Vertica9.1の新機能であるEon Modeでは、ピーク時のパフォーマンス劣化に対処できる。(注4)
Eon Modeは、データをAmazon S3のような共有ストレージに格納し、処理に必要なデータだけを各計算ノードのローカルストレージにキャッシュして処理を実行する構成となっている。ローカルストレージにキャッシュした後は、シェアードナッシングの構成と同様の高速処理を実現できる。
このEon Modeのメリットは大きく2つある。1つ目はクラウド上でピーク時にだけ計算ノードを増やす運用で、ピーク時のパフォーマンス劣化に対処した上でのコスト最適化が可能となった点。2つ目は処理の実行クラスタを分けることが可能となったことで、ワークロードを完全に分離できる点だ。
The Trade Desk社では、バッチ処理が集中する時間帯にノードを増やす運用とした結果、1日に4万件以上のレポートの処理を可能とした。
―――――――
(注4)
Eon Modeの概要(Vertica 9.1新機能)についての解説はコチラ