BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース eBay、HadoopとHBaseを使った次世代サーチエンジンを準備

eBay、HadoopとHBaseを使った次世代サーチエンジンを準備

原文(投稿日:2011/11/13)へのリンク

Hadoop Worldのキーノートにおいて、eBayは完全に再構築したサーチエンジンCassiniのアーキテクチャについて説明し、2012年に稼動させる予定であることを表明した。このシステムはランキング生成を改善するためにコンテンツとユーザメタデータをすべてインデックス化しており、毎時それらインデックスを更新する。毎時のインデックス更新にはApache Hadoopを、アイテム情報へのランダムアクセスにはApache HBaseが使われている。eBayマーケットプレイスのVP Search, Experience & Platforms、Hugh E. Williams氏がキーノートを行い、その規模、使われた技術、100名を超えるエンジニアがeBayのコアサイトサーチを完全に再構築した18か月の経験について話した。新しいプラットフォームCassiniは以下をサポートする。

  • 9700万のアクティブバイヤー&セーラー
  • 一日に25,000万クエリ
  • 50,000カテゴリ以上、20000万アイテム
すでにeBayは分析のために9 PBものデータをHadoopとTeradataクラスタにストアしているが、これはユーザが直接利用する最初のプロダクトになるだろう。新しいシステムは現在のシステム (Galileo) よりも大きなものになる。
これまでのシステム: Galileo 新しいシステム: Cassini
ランキングに使われる因子が数十 ランキングに使われる因子が数百
デフォルトではタイトルマッチのみ デフォルトですべてのデータをマッチに使う
公開、モニタリング、修正には手作業が必要 公開、モニタリング、修正の自動化
 
Cassiniは履歴データをオンラインに90日保存する。現在これは10億アイテムであり、ユーザおよびランキングのための行動データも含まれている。サーチシステムに必要な作業の多くは、Hadoopで走る毎時のバッチ処理でなされている。各種インデックスはすべて同じクラスタで生成される。(これはGalileoに比べて改善されている。これまではインデックスの種類ごとにクラスタが異なっていた)。Hadoop環境のおかげで、改善がなされるとeBayはサイトの全商品を復元したり再分類することが可能になる。
 
アイテムはHBaseに格納され、通常毎時のインデックス更新でスキャンされる。新しいアイテムがリストされると、HBaseで検索され、数分以内に動作中のインデックスに追加される。またHBaseは、バルクおよびインクリメンタルなアイテム書き込み、そして、アイテム注釈のための高速なアイテム読み書きを可能にする。
 
Williams氏によると、チームはHadoopを動かすことに慣れており、ほとんど問題なく確実に仕事を完了できたようだ。その一方で「HBaseの使いこなしは大変だった」と彼は語った。Williams氏は、eBayはこのテクノロジーにコミットしつづけると述べた。見つけた問題の修正をコントリビュートし、すばやく学んでいくことで、この2週間はスムーズに仕事ができているようだ。エンジニアリングチームはHBaseを使うのに慣れておらず、テストをスケールするといくつかの問題に遭遇した。
* 負荷のためのプロダクションクラスタのコンフィグレーション
* ハードウェア問題
* 安定性: 不安定なリージョンサーバー、不安定なマスター、トランザクションに縛られたリージョン
* HBaseのヘルスモニタリング: 動作中のサービスに影響が及ぶまで、問題が検出されないことが多かった。チームはモニタリングのためのコードをたくさん追加している。
* マルチステップMapReduceジョブの管理
 
全体としてWilliams氏は、プロジェクトは野心的だったが、素早くかつ成功裏に完了し、チームはHadoopとHBaseを使ってサーチエクスペリエンスを大幅に改善できたと考えている。

Ron Bodkin : Hadoop and NoSQLを使ってビッグデータソリューションを構築するThink Big Analyticsの創業者。

この記事に星をつける

おすすめ度
スタイル

BT