Apache Spark StreamingのtRecommendプロパティ - Cloud - 8.0

Machine Learning

Version
Cloud
8.0
Language
日本語 (日本)
Product
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発 > サードパーティーシステム > 機械学習コンポーネント
データガバナンス > サードパーティーシステム > 機械学習コンポーネント
データクオリティとプレパレーション > サードパーティーシステム > 機械学習コンポーネント

このプロパティはSpark Streamingジョブフレームワークで実行されているtRecommendを設定するために使います。

Spark Streaming tRecommendコンポーネントは、機械学習ファミリーに属しています。

このコンポーネントは、Talend Real Time Big Data PlatformおよびTalend Data Fabricで利用できます。

基本設定

[Schema] (スキーマ)[Edit schema] (スキーマを編集)

スキーマとは行の説明のことです。処理して次のコンポーネントに渡すフィールド(カラム)数を定義します。Sparkジョブを作成する場合、フィールドの命名時は予約語のlineを避けます。

スキーマを変更するには[Edit schema] (スキーマを編集)をクリックします。現在のスキーマがリポジトリータイプの場合は、3つのオプションを利用できます。

  • [View schema] (スキーマの表示): スキーマのみを表示する場合は、このオプションを選択します。

  • [Change to built-in property] (組み込みのプロパティに変更): ローカルで変更を行うためにスキーマを組み込みに変更する場合は、このオプションを選択します。

  • [Update repository connection] (リポジトリー接続を更新): リポジトリーに保存されているスキーマに変更を加え、変更後にそのコンテンツをすべてのジョブにプロパゲートするかどうかを決める場合は、このオプションを選択します。変更を現在のジョブにのみ反映する場合は、変更後、[No] (いいえ)を選択し、[Repository Content] (リポジトリーのコンテンツ)ウィンドウで再びこのスキーマのメタデータを選択します。

自身で編集できるカラムは別として、product_IDカラムと[score] (スコア)カラムは読み取り専用であり、使われているリコメンダーモデルに基づいて計算されたユーザー設定に関するデータを保持するために使います。[score] (スコア)カラムは、特定のユーザーに対して製品がどの程度強く推奨されているかを示します。

[Define a storage configuration component] (ストレージ設定コンポーネントを定義)

HDFSなどのターゲットファイルシステムへの接続の設定情報を提供するために使用する設定コンポーネントを選択します。

このチェックボックスをオフにすると、ターゲットファイルシステムはローカルシステムになります。

使用する接続設定は同じジョブ内にあることが必要です。たとえば、tHDFSConfigurationコンポーネントをジョブにドロップした場合は、このコンポーネントを選択して、所定のHDFSシステム内で結果を書き込むことができます。

[Input parquet model] (入力Parquetモデル)

使用するリコメンダーモデルが保管されているディレクトリーを入力します。このディレクトリーは、ジョブが実行されるマシンにある必要があります。

参照用のボタンはSpark Localモードでは機能しません。お使いのディストリビューションでStudioがサポートしているその他のSpark Yarnモードを使用している場合は、同じジョブ内の設定コンポーネント(tHDFSConfigurationなど)で接続を適切に設定したことを確認する必要があります。使用されるファイルシステムに応じて設定コンポーネントを使用します。

このモデルはtALSModelコンポーネントによって生成する必要があります。

[Select the User Identity column] (ユーザーIDカラムの選択)

入力カラムからユーザーIDデータを保持しているカラムを選択します。

このtRecommendコンポーネントには、使うリコメンダーモデルで認識されているユーザーと一致する入力ユーザーIDが必要です。

[Number of recommendations] (推奨の数)

出力する最も推奨される製品の数を入力します。

これは数値であるため、二重引用符は使えません。

使用方法

使用ルール

このコンポーネントは中間ステップとして使用されます。

このコンポーネントは、所属するSpark Streamingコンポーネントのパレットと共に、Spark Streamingジョブを作成している場合にだけ表示されます。

特に明記していない限り、このドキュメンテーションのシナリオでは、[Standard] (標準)ジョブ、つまり従来の Talend データ統合ジョブだけを扱います。

このコンポーネントによって処理されるユーザーIDは、使うリコメンダーモデルに認識されている必要があります。ユーザーがリコメンダーモデルに認識されていない場合、対応する値がproduct_IDで、[score] (スコア)カラムはnullです。これにより、同じジョブでtRecommendを実行した後、tFilterRowコンポーネントを使って不明なユーザーに関するレコードを取得できます。

[MLlib installation] (MLlibのインストール)

Sparkの機械学習ライブラリーであるMLlibはgfortran runtimeライブラリーを使うため、使うSparkクラスターのすべてのノードにこのライブラリーが既に存在することを確認する必要があります。

MLlibとこのライブラリーの詳細は、Sparkの関連ドキュメンテーションをご覧ください。

[Spark Connection] (Spark接続)

[Run] (実行)ビューの[Spark configuration] (Spark設定)タブで、ジョブ全体でのSparkクラスターへの接続を定義します。また、ジョブでは、依存jarファイルを実行することを想定しているため、Sparkがこれらのjarファイルにアクセスできるように、これらのファイルの転送先にするファイルシステム内のディレクトリーを指定する必要があります。
  • Yarnモード(YarnクライアントまたはYarnクラスター):
    • Google Dataprocを使用している場合、[Spark configuration] (Spark設定)タブの[Google Storage staging bucket] (Google Storageステージングバケット)フィールドにバケットを指定します。

    • HDInsightを使用している場合、[Spark configuration] (Spark設定)タブの[Windows Azure Storage configuration] (Windows Azure Storage設定)エリアでジョブのデプロイメントに使用するブロブを指定します。

    • Altusを使用する場合は、[Spark configuration] (Spark設定)タブでジョブのデプロイにS3バケットまたはAzure Data Lake Storageを指定します。
    • オンプレミスのディストリビューションを使用する場合は、クラスターで使用されているファイルシステムに対応する設定コンポーネントを使用します。一般的に、このシステムはHDFSになるため、https://help.talend.com/access/sources/content/topic?pageid=thdfsconfiguration&mapid=hdfs&afs:lang=ja&EnrichVersion=8.0を使用します。

  • [Standalone mode] (スタンドアロンモード): tHDFSConfigurationtS3Configurationなど、クラスターで使われているファイルシステムに対応する設定コンポーネントを使用します。

    ジョブ内に設定コンポーネントがない状態でDatabricksを使用している場合、ビジネスデータはDBFS (Databricks Filesystem)に直接書き込まれます。

この接続は、ジョブごとに有効になります。