Anchor | ||||
---|---|---|---|---|
|
...
Rserveについて詳細な資料は、こちらを参照してください。:https://cran.r-project.org/web/packages/Rserve/Rserve.pdf
一般的なワークフロー
こちらがプロセスの簡単な概要です。こちらの項目では、これらのStep(ステップ)の大部分について、詳細に説明します。
...
Rserveが実行されている最新バージョンのR(少なくともv3.4.0以降)を準備することを推奨します。最新バージョンは、こちらからダウンロードすることができます:https://cran.r-project.org/mirrors.html Rserveを実行するR環境にはRStudioの使用を推奨します。
以下のコマンドを参照して、Rインスタンスをセットアップしてください。
Windows端末上でのRの実行
- ローカルのWindows端末にRをインストールします。
R環境から以下のコマンドを実行します。(ローカルからRserveへアクセスするため)
Code Block install.packages("Rserve") #This installs Rserve package library(Rserve) #This loads Rserve package Rserve() #This starts Rserve
- コマンドの実行に成功すると、Rserveがインストールされ、起動します。これで、Rスクリプト Transformation Step(変換ステップ)を通して、Yellowfinへ統合する準備が整いました。
以下のコマンドを使用して、Windows端末上でRserveを実行し、外部からのアクセスを有効にします。
Code Block run.Rserve(args=" --RS-enable-remote")
...
- 上記すべての前提条件を満たしていることを確認します。
- Yellowfinのデータ変換モジュールへ移動します。(「作成」ボタン>「Transformation Flow(データ変換フロー)」)
- データを取得するInput Step(入力ステップ)から、Transformation Flow(データ変換フロー)の作成を始めます。(基礎的なフローの作成方法は、こちらを参照してください。また、他のデータの取得方法については、こちらを参照してください)
- 取得されたデータが、データプレビューパネルに表示されます。さらにデータを変換するために、Step(ステップ)を追加することもできます。
- Rスクリプトを使用する準備が整ったら、以下の手順に従います。
Transformation Step(変換ステップ)一覧から、Rスクリプト Step(ステップ)をキャンバスへドラッグします。(注意:こちらのStep(ステップ)が表示されない場合は、Rのプラグインがインストールされていることを確認してください)
- Connection(接続)ポイントを使用して、最後のStep(ステップ)をRスクリプト Step(ステップ)へ接続します。
R Step(ステップ)の設定をします。(設定詳細が表示されるように選択されていることを確認してください)
Note YellowfinはRserveパッケージを利用します。接続を試行する前に、Rserveをインストールし、実行しなくてはいけません。
- Rインスタンスへ接続するためには、ローカルアクセス(手順10へ進む)、またはリモートアクセス(手順11へ進む)の2つのオプションがあります。
- ローカルのRインスタンスへの接続:Rserveがローカル端末上にインストールされている場合、こちらのオプションを選択します。
- こちらのオプションでは、「Connect to Rserve(Rserveへ接続)」ボタンをクリックします。(パラメーターの提供は必要ありません)
- 接続に成功すると、必要な設定情報が表示されます。(手順12へ進む)
- しかし、接続試行中に以下のエラーが表示された場合は、Rserveが適切に起動していないことを意味します。
- Rインスタンスへのリモート接続:接続を試行するRserveがリモート端末にインストールされている場合は、以下の手順に従います。
- 「External Connection(外部接続)」ボタンへ切り替えます。以下のフィールドが表示されます。
- Rserveをホストしている端末のIPを提供します。IPアドレス(例:127.0.0.1)、または端末のホスト名(例;Localhost)を入力します。注意:IPアドレス、またはホスト名の前に「http://」を含めてはいけません。これは、接続の確立を妨げることになります。
- Rに接続するポート番号を入力します。これは、Rserve起動時に使用したポート番号と同一のものです。
- 注意:接続を試行する端末が、パスワードやユーザーログイン情報を要求しないことを確認してください。現在、ユーザー名やパスワードを使用した接続は、RスクリプトTransformation Step(変換ステップ)ではサポートしていません。
- 「Connect to Rserve(Rserveへ接続)」ボタンをクリックします。手順12へ進みます。
- 「External Connection(外部接続)」ボタンへ切り替えます。以下のフィールドが表示されます。
- 接続の確立に成功すると、詳細な設定画面が表示されます。
- これらを使用し、以下の2つの方法のいずれかを使用して、Rスクリプトを組み込みます。
- 指定されたパネルにRスクリプトをドラッグします。
または、「Load from Path(パスから読み込み)」トグルを有効にして、ファイルパスを提供します。完全パスを入力してください。例:
Windowsの場合:C:\Users\admin\Desktop\append.r、Linuxの場合:/root/append.rNote ファイル形式が適切であることを確認してください。例:「.r」拡張子が必要です。
- スクリプトの設定詳細を提供します。注意:こちらで提供する詳細は、Rスクリプトのコンテンツと、実行するようにデザインされた機能に特異のものです。そのため、スクリプト内に機能が含まれているものと見なされます。
- データを含めるために、以下のいずれかの方法を選択します。:追加、または置き換え
- 追加:スクリプトが、入力データとともに新規フィールドの生成を返す場合は、こちらの方法を選択します。データに追加される新規フィールド数を指定します。
- 置き換え:スクリプトが、デザインされた結果を返す場合は、こちらの方法を選択します(これは新規フィールドのみの場合もあれば、新規フィールドと入力フィールドの組み合わせの場合もあり、スクリプト作成者が、スクリプトがどのような結果を生成するようにデザインをしているかに応じて異なります)。Rスクリプトが生成するフィールドの合計数を入力します。
- Step(ステップ)の実行を成功させるためには、正確なフィールド数を提供しなくてはいけません。不正確な値を入力した場合は、Step(ステップ)の実行時に以下のエラーが表示されます。
- スクリプト内で明示されている「入力変数名」を入力します。これは、データがどこから読み込まれるかを指定します。
- 「出力変数名」を入力します。これは、結果が保存されるスクリプト内の場所を指定します。(システムは、この変数に保存された値を、スクリプトが生成する結果として返します。このパラメーターは、データフレーム変数でなくてはいけません)
- いずれの変数名に不正確な名前が提供された場合は、Step(ステップ)の実行時に以下のエラーが表示されます。例:
- 「Apply(適用)」をクリックします。
- Step(ステップ)の実行に成功すると、データプレビューパネルに結果が表示されます。以下の例は、既存のデータに結果フィールドが追加された結果を示しています。(注意:追加オプションの場合、入力データからの結果フィールドは、元の名前とデータ型を持ちます。そして、新規追加されたフィールドは、「newField0」、「newField1」....と名付けられ、データ型はデフォルトでテキストになります。)
同様に、こちらはスクリプトで指定された結果によりデータが置き換えられた例を示しています。(注意:このオプションで返されるすべてのフィールドは、「field0」「field1」.....と名付けられ、データ型はテキストになります。) - こちらのStep(ステップ)の実行が失敗する場合、原因は複数考えられます。いくつかの原因が生成するエラーの例は、こちらをクリックして参照してください。
- Step(ステップ)の実行に成功したら、さらなる変換を実行したり、結果をデータベースへ保存することができます。
Step(ステップ)実行時の問題
こちらの項目では、Step(ステップ)の実行が失敗するいくつかの例を紹介します。
- スクリプトへのファイルパスが不正確
- スクリプトから返されたフィールド数が、入力時に指定したフィールド数と不一致
- Rserveへの接続の断絶(この場合、空のテーブルが表示されることが多いです)
- アップロードしたスクリプトが有効なRスクリプトではない
Rserveへの接続の断絶
Step(ステップ)の設定後に、Rserveへの接続が断絶する場合があります。その場合は、以下のエラーメッセージが表示されます。
これ自体は大きな問題ではありません。Rserveへの接続を再起動し、「Apply(適用)」ボタンをクリックして、再度Step(ステップ)を実行します。接続が適切に確立されると、Step(ステップ)は適切に実行されます。
不正確なフィールド値
追加される/返される合計フィールド数が不正確な場合は、ステップの実行時に以下のエラーが表示されます。