Your browser is out of date

Update your browser to view this website correctly. Update my browser now

×

多様化する顧客ニーズに素早く、正確に対応できるレコメンドシステム、行動分析の実現に向けCloudera Enterpriseを採用。充実したサポートの下、Apache Spark、Apache Kafkaを活用した統合システム基盤を短期間で構築し、アジア初となる商用サービスをスタート

無店舗型デジタルコンテンツ配信、DVD販売、DVDレンタルから、FX・CFDの運営、さらには、オンラインゲーム制作・運営の運用等に至るまで幅広いビジネスを展開するDMM.comグループ。

同グル―プ内の1社である株式会社DMM.comラボ(以下、DMM.comラボ)は、グループ内の多様なビジネスをIT面から支え、同時に牽引するという役割を担い、システム開発・運営、ネットワークインフラの提供、Webマーケティング等を推進している。

よりタイムリーで顧客ニーズや最新のマーケット・トレンドにマッチした製品・サービスを推奨できるシステム基盤の確立を目指す同社では、Cloudera Enterpriseを採用し、Apache Spark、Apache Kafkaを活用した新たな統合システム基盤を構築。複数のサービスで使用されるレコメンド機能、行動分析の精度と鮮度を大幅に向上させた。

*1株式会社DMM.com、*2株式会社DMM.com証券、*3株式会社DMM.com OVERRIDE

 

多様化する顧客ニーズに素早く正確に対応できるレコメンドの実現に向けオープンソースをベースにした内製システムの構築が急務に

「ネット企業と言われることが多かったDMM.comグループですが、最近では、DMM.make AKIBAと呼ばれる拠点の運営や、ロボット関連、英会話など、さらに多様なビジネスを展開するようになっています。このような状況の中、よりお客様にマッチした商品やサービスをお勧め(レコメンド)するためには、ビッグデータなども取り入れた顧客分析やマーケット・トレンド分析、さらに予測などが不可欠であると考えました」-新システム基盤構築の背景について、株式会社DMM.comラボ システム本部CTO室の小島法夫 (おじま のりお)氏はこう語る。

 

システム本部CTO室の小島法夫氏

システム本部CTO室 小島法夫氏

以前から提供サービスの中でレコメンドを実施していた同社だが、実質は外部の企業にデータを引渡して対応を依頼するという形での運用が中心だったため、きめ細かなチューニングや素早いPDCAサイクルの推進が困難だった。たとえば、ECサイトにおける購入実績をベースにしたレコメンドに、閲覧状況という要素を加味したいと考えても、実現に当たっては、依頼先の企業と打ち合わせを行い、意思疎通を図りながら作業を進める必要があり、実現までに半年かかってしまうといった状況が発生していた。また、一部では内製の形でレコメンド機能を開発している事業部門もあったが、全社的な利用を前提としたものでなかったため、社内での横展開は難しかった。

ビジネスのスピードや精度を重視する同社にとって、このような状況は早急に改善すべき課題であり、対策についての検討が開始された。そして、ここで浮上したのが「オープンソース」をベースとした内製可能なレコメンドシステムプラットフォームの採用だった。

 

処理速度の速さと関連ライブラリの充実でApache Sparkを選定 Cloudera Enterpriseをプラットフォームに統合システム基盤を実現

自社に合ったレコメンドを実現するため、内製化が可能なオープンソースの採用が必須と考えたDMM.comラボでは、Apache Hadoopをベースに、機械学習アルゴリズムのライブラリであるApache Mahoutを使用したレコメンドシステムを検証する。しかし、大量のデータ処理を実施すると処理スピードの遅さが目立つようになる。実際には、半日から1日がかりでやっと処理が完了するという状況が見られた。

こんな中、同社が注目したのがApache Sparkだった。

選定当時の状況について、株式会社DMM.comラボ システム本部CTO室の田中裕一氏は、「2014年の中旬、まだ日本国内では十分認知されていなかったApache Sparkに注目したのは、他のアプローチと比較して圧倒的な高速処理を実現できたからです。提供されるMLlibやGraphXなどのライブラリを使い、メモリ上で処理を実行することで、よりリアルタイムなレコメンドが可能になると考えました」と強調する。

同時に、Sparkを実行させる基盤について検討を開始した同社では、Cloudera Enterpriseの採用を決める。「1週間前、1日前のログデータを基にお勧めするより、今、正にリアルタイムで見ている商品を前提にしてレコメンドする方がより有効です。この実現に当たっては、レコメンド機能だけでなく、どうやって素早くログを取得するかという点が重要となってきます。Apache Kafkaによってリアルタイムでのログが可能となりますが、そのデータをどのようにSparkのレコメンド機能に繋げるかということを考えると、自社の裁量でコントロールできる“カスタマイズ性”に優れた統合プラットフォームが不可欠になります。Clouderaが提供するCloudera Enterpriseは、正にこの要件に合致したソリューションでした」(小島氏)。

自社に合ったレコメンドを実現するため、内製化が可能なオープンソースの採用が必須と考えたDMM.comラボでは、Apache Hadoopをベースに、機械学習アルゴリズムのライブラリであるApache Mahoutを使用したレコメンドシステムを検証する。しかし、大量のデータ処理を実施すると処理スピードの遅さが目立つようになる。実際には、半日から1日がかりでやっと処理が完了するという状況が見られた。

こんな中、同社が注目したのがApache Sparkだった。

選定当時の状況について、株式会社DMM.comラボ システム本部CTO室の田中裕一氏は、「2014年の中旬、まだ日本国内では十分認知されていなかったApache Sparkに注目したのは、他のアプローチと比較して圧倒的な高速処理を実現できたからです。提供されるMLlibやGraphXなどのライブラリを使い、メモリ上で処理を実行することで、よりリアルタイムなレコメンドが可能になると考えました」と強調する。

 

システム本部CTO室 田中裕一氏

同時に、Sparkを実行させる基盤について検討を開始した同社では、Cloudera Enterpriseの採用を決める。「1週間前、1日前のログデータを基にお勧めするより、今、正にリアルタイムで見ている商品を前提にしてレコメンドする方がより有効です。この実現に当たっては、レコメンド機能だけでなく、どうやって素早くログを取得するかという点が重要となってきます。Apache Kafkaによってリアルタイムでのログが可能となりますが、そのデータをどのようにSparkのレコメンド機能に繋げるかということを考えると、自社の裁量でコントロールできる“カスタマイズ性”に優れた統合プラットフォームが不可欠になります。Clouderaが提供するCloudera Enterpriseは、正にこの要件に合致したソリューションでした」(小島氏)。

 

刻々と変化するオープンシステムの最新動向を捉え、最適なアプローチを選択するために、Clouderaのサポートが有効となった

こうしてCloudera Enterpriseをベースに、Apache Spark、Apache Kafkaの提供機能活用を決めた同社では、2014年12月からログデータの取得と蓄積を開始し、同時に各事業部からの商品データの読み込みを開始。9月1日にはレコメンドおよび行動分析機能をリリースした。

今回のプロジェクトで、実際にレコメンド機能の開発を担当した株式会社DMM.comラボ システム本部CTO室の加嵜 長門 (かさき ながと) 氏は、Apache Spark、Apache Kafka、そしてCloudera Enterpriseの導入の狙いについて、次のように話す。

 

システム本部CTO室 加嵜長門氏

「Amazonに代表されるようなレコメンドの活用で一歩先を行っている会社があります。もし同じアプローチを取れば、おそらくずっと後追いの形となるでしょう。そこで、まったく新しいアプローチで差別化を図りたいと考えました。Apache Sparkには、一般的なレコメンドで使える機械学習のライブラリやGraphXを扱えるライブラリが用意されており、これらの機能を使ってレコメンドの要素として、商品と商品の関係や、ユーザーとユーザーの関係などが盛り込めると確信しました」

一方、Clouderaによる支援について田中氏は、「海外トレーニングという形でCloudera本社のエンジニアとコミュニケーションできたことは大きなメリットでした。たとえば、機械学習機能を実現したいと話すと、“現状はこの製品が枯れているから安心して使えるが、来年にはこちらがトレンドになるだろう”といった正にタイムリーなアドバイスが返ってきます。オープンソースの世界は刻々と変化しますが、最も進んだ立場にあるClouderaのエンジニアから、最新の動向やトレンドに関するアドバイスをもらえたことが、以降の開発をスムーズに進める上で非常に有効となりました」と回想する。

小島氏は、「メンバースキルの底上げという効果を感じました。社内には様々なレベルのエンジニアが居ますが、以前に経験があるメンバーを除けば、一般的にHadoopへの最初の取り組みはハードルが高いと思われます。未経験のメンバーでもスムーズな開発が進んだのは、Clouderaが提供する初心者向けのトレーニングメニュー等が非常に効果を発揮した結果だと思っています」と話す。

最後に加嵜氏は、「もし、Clouderaのサポート無しで今回の新しいレコメンド機能を実現しようと試みたら確実に3ヶ月以上はかかったでしょう。わずか1ヶ月程度でリリースできたという事実が、最大の導入メリットと言えるでしょう」と締めくくった。

 

 

Cloudera Enterpriseを基盤に、Apache Spark、Apache Kafkaにより、全社レベルでの統合システム基盤を構築し、レコメンド、そして行動分析などの機能を実現した同社だが、その視点は既に未来に向けられている。

現在は、まだ研究開発というレベルだが、「GraphXとSpark Streaming機能とソーシャルストリーミングデータを連携し、リアルタイムでマーケット・トレンドを加味したレコメンドを実現」(加嵜氏)するなど、Cloudera Enterpriseを基盤にApache Spark、Apache Kafkaの機能を最大限に活かした新たな取り組みを、DMM.comラボは既に開始している。

取材日:2015年9月2日

 

Your form submission has failed.

This may have been caused by one of the following:

  • Your request timed out
  • A plugin/browser extention blocked the submission. If you have an ad blocking plugin please disable it and close this message to reload the page.