推薦システムの58都市アーキテクチャの設計と実装

まず、推薦システムを導入しました

マイクロ推薦システムは、三つの主要なサブシステムに分割されている巨大なプロジェクト、アルゴリズムと統合されたビジネス・システムを、次のとおりです。

1)ラインは、サブシステムを推奨します。

2)オンライン推奨サブシステムと、

3)効果の評価サブシステム。

その後、我々は、上記の3つのサブシステムの設計と実装に焦点を当てます。

 

第二に、ライン推奨サブシステム

推奨されるサブシステムとラインが分かれているモジュールオフライン鉱業データ管理ツールを二つの部分に。

鉱業モジュールをオフライン

モジュールをオフラインに採掘、すべてのタイプのコアアルゴリズムは、ラインマイニング実施オフライン実施形態では、マイニング結果の初期出力は、様々なデータマイニングアルゴリズムを使用して、様々なデータソースを読み取り、その結果をフォーマットをマイニングのために保存します。一般的に、これらの戦略の実装では、Hadoopのプラットフォームジョブ、並列実装戦略上の採掘実行の一部であり、マイニング結果は、Hadoopの上に保存します。

データ管理ツール

データ管理ツール、すなわちDataMgrTools、それはツール(またはサービス)である、ラインの特定のデータ・フォーマットを読んで、いくつかの管理コマンドを受け入れることが可能である、またはメモリは、リアルタイムまたは定期的にヒットしたラインで、これらのデータをRedisの、読書のためのオンラインサービス。

データマイニングモジュールはラインがHDFS、データベース、あるいは特定のバイナリデータのファイルに保存することができる出力しているため、データ管理ツールは、一般的なビジネスツールに関連していない、それは、複数のデータアップロード、特定のフォーマットをサポートする必要があります。

ツールのポイントが達成される:良いラインデータフォーマットの定義、行のデータ形式、およびデータの変換は、APIを介して下流の移行を行います。

 

第三に、オンライン推奨サブシステム

推奨されるサブシステムがオンラインに分けて表示サービス、ストリーミングサービス、コア戦略をお勧めモジュールサービス、いくつかの部品などを。

ディスプレイサービス

ディスプレイサービス、または全体的な入口ライン推薦システムの一部であるアクセスサービス、すなわち、アップストリームトラフィックコールの上流側へのインターフェースを提供する全体の推奨システム、オーバーアクセス層。

サービスはステートレスサービスで表示します(ラインサブシステムのそれぞれのサービスはステートレスサービスです)、サービスポイントを達成するために、任意のレベルに拡張することができます:良い共通のインターフェース形式の定義。

シャントサービス

分流サービス、それは非常にユニークで推薦システムも非常に重要なサービスであるが、それは、である(別の推薦アルゴリズム実験プラットフォームに転用、異なる割合で異なる戦略に従い、要求以上の上流の役割であり、行くために)下流のカーネルお​​勧めします。

どのように上流の推薦アルゴリズムの実験的なプラットフォームに割り当てられた裁判官の上に迂回サービスを要求するには?答えは、ポリシーおよび構成を介して行われます。アーキテクチャは、ほぼすべてのサービスが(データ)のデータを読み込む必要があり、図から明らかと設定ファイル(conf)することができ、これらのデータは、動的に(例:データはRedisのから読み込ん)のオンラインデータを変更することができる、あってもよいですこれは、(例:都市のリスト)比較的静的なデータであり、confのより良いいくつかの構成を理解すること(例:すべての要求の80%は、実験プラットフォームのアルゴリズムの流れを行かなければなりません)。リクエストパラメータを持ってきたこれらのポリシーと設定を通じて、どの実験プラットフォームにシャント流量配信サービスを計算します。

実装サービスポイントは次のとおりです。ユニバーサルサポートと転換ルールや関係が下流のアプリケーションプラットフォームを構成することができます達成するためには、異なる実験プラットフォームを再生するには良い交通需要を達成するために、共通のインタフェースを定義します。

推奨カーネル

推奨されるコアは、すべての種類であるコアオンライン推薦アルゴリズムの実装、それが唯一の共通実験プラットフォームのコンテナ、各推奨内部サービスが推奨アルゴリズムの異なる種類を実行することです。

推奨サービスが異なる推薦アルゴリズムを実行したが、各アルゴリズムの実装手順は同じですが、我々は通過する必要があります:

(1)前処理。

(2)事前解析。

(3)デエンファシスフィルタ。

(4)ソート。

(5)推奨説明。

5つのステップは、各ステップは、各ステップは、アルゴリズムは、完全なプロセスを完了するために組み合わせる構成する異なるアルゴリズム、異なるモデルの種々存在し得る「推薦アルゴリズム実験プラットフォーム」を

それぞれについて、異なるモデルにおける異なるステップは、例えば、異なる外部サービスモジュールにアクセスする必要があるかもしれないと述べました。

ステップを説明推奨、第2のモデルが推奨解釈段階でアクセスする必要があるかもしれない、「説明-module1-サービス」最初のモデルが推奨解釈段階でアクセスする必要があるかもしれない、二つのモデルがあるかもしれない、これらの異なる「-module2-サービスを説明しました」サポートするアーキテクチャレベルの必要性でさまざまなビジネスニーズへのアクセスのモデル、。

サービスの特長が達成される:フレームワーク内で複数の並列アルゴリズム開発エンジニア/テスト、複数の推薦アルゴリズムをサポートするために、紹介サービスの枠組みの中で、様々な戦略を実行するために、分割されたサービス実装推薦アルゴリズム実験プラットフォームと。

ポリシーサービス

ポリシーサービスは、また、勧告は、下流モジュールカーネル勧告を実装ポリシーサービスモジュール、として知られています。様々な推奨手順を実行するためにカーネルを推薦では、各ステップは、異なるアルゴリズム/戦略を有していてもよく、これらのアルゴリズム/戦略や戦術が番号に電話し、より密接にサービスモジュールをバインドする必要があるかもしれません、彼らはユニバーサルサービスではなく、相対的独自のサービス。

たとえば、次のように注文サービスモジュール、便利で効率的、かつスケーラブルなサービスが発注する必要があります。

アルゴリズムはすぐにサービスモジュールを生成することができそうという、共通のサービスフレームワークを達成するために、そして彼らのニーズは、モジュールに実装、およびモジュールは、アルゴリズムの実験的なプラットフォームで便利なサービスを呼び出すことができます。ポイントはあるサービスを実装します。

 

第四に、影響評価サブシステム

影響評価サブ分割勧告にターミナルサービスを呼び出すにはブラウザ側で報告された効果終了の分析を

推奨エンドコールサービス

そのような募集のビジネスラインとして事業の58本の都市ラインインタフェース推奨システムコール、。

ブラウザの終了によって報告

あなたが募集サービスを呼び出すブラウザのJS、推奨システムは、その結果ページを推奨示し、結果がクリックされており、これらがクリック報告する情報を提示される勧告を知ることができるようにします。

最終結果のリアルタイム分析

ブラウザはJS推薦結果が表示されます、推奨結果のクリックは報告で、リアルタイムエフェクトのためのプラットフォームは推薦アルゴリズム/推奨戦略の後の行に影響することを、最初の時間を観察しています。

 

第五に、全体的なアーキテクチャ図

前の節で、図市の58は、上記の推奨システムの全体的なアーキテクチャを統合しました。

推薦システムは、58都市からのオンライン推薦システムは、公式に推奨インテリジェントなデータの時代に入った、エンジニアリング、アルゴリズム、および統合ビジネス・システムです。

 

約-58 都市推奨ビジネス

58都市はユーザーであり、商人はプラットフォームに依存していた、お勧め情報は、市内58にとって非常に重要です。58都市募集のビジネスラインに、例えば:クライアント募集、ユーザーエクスペリエンスを向上させることができ、ユーザーのためのよりよく関連ジョブをお勧めしますが、また、PVの58都市に増加し、採用業務の終了時に、企業はより多くのシチュエーションより良い相関履歴書、企業は人間の経験を向上させることができ、ダウンロードは、それによって、58都市の収入を増やし、再開します。

推奨される事業は、技術的なレベルでは、システムアーキテクチャの勧告をどのように設計するか、この記事の内容は焦点を当て、非常に重要です。

公開された136元の記事 ウォンの賞賛6 ビュー1521

おすすめ

転載: blog.csdn.net/weixin_42073629/article/details/104603123