Spark-SubmitおよびCLIの開始

CLIでexecute文字列を使用しながら、spark-submitを使用してデータ・フローでSparkアプリケーションの実行を開始する際に役立つチュートリアル。

Oracle Cloud Infrastructureデータ・フローの開始の既存のチュートリアルに従いますが、spark-submitコマンドの実行にはCLIを使用します。

開始する前に

CLIを使用してデータ・フローでspark-submitコマンドを使用する前に、いくつかの前提条件を満たし、認証を設定します。

  1. CLIでspark-submitを使用するための前提条件を満たします。
  2. CLIでspark-submitを使用するための認証を設定します。

CLIでSpark-submitを使用するための認証

CLIでspark-submitを使用するための認証を設定します。

CLIでspark-submitを使用するための前提条件が満たされ、CLIがインストールされている場合は、次のコマンドを使用して認証プロファイルを設定します:
 $ oci session authenticate
 
    - select the intended region from the provided list of regions.
    - Please switch to newly opened browser window to log in!
    - Completed browser authentication process!
    - Enter the name of the profile you would like to create: <profile_name> ex. oci-cli
    - Config written to: ~/.oci/config
 
    - Try out your newly created session credentials with the following example command:
             $ oci iam region list --config-file ~/.oci/config --profile <profile_name> --auth security_token
~/.oci/configファイルにプロファイルが作成されます。プロファイル名を使用してチュートリアルを実行します。

1. Spark-SubmitおよびCLIを使用したJavaアプリケーションの作成

Spark-submitおよびCLIを使用して、チュートリアルを完了します。

spark-submitおよびCLIを使用して、Oracle Cloud Infrastructureデータ・フローの開始チュートリアルの最初の演習Javaを使用したETLを完了します。
  1. テナンシを設定します。
  2. 入力および結果を保存できるバケットがオブジェクト・ストレージにない場合は、適切なフォルダ構造を持つバケットを作成する必要があります。この例では、フォルダ構造は/output/tutorial1です。
  3. 次のコードを実行します:
    oci --profile <profile-name> --auth security_token data-flow run submit \
    --compartment-id <compartment-id> \
    --display-name Tutorial_1_ETL_Java \
    --execute '
        --class convert.Convert 
        --files oci://oow_2019_dataflow_lab@idehhejtnbtc/oow_2019_dataflow_lab/usercontent/kaggle_berlin_airbnb_listings_summary.csv 
        oci://oow_2019_dataflow_lab@idehhejtnbtc/oow_2019_dataflow_lab/usercontent/oow-lab-2019-java-etl-1.0-SNAPSHOT.jar \
        kaggle_berlin_airbnb_listings_summary.csv oci://<bucket-name>@<namespace-name>/output/tutorial1'
    このチュートリアルを以前に実行したことがある場合は、出力ディレクトリoci://<bucket-name>@<namespace-name>/output/tutorial1の内容を削除して、チュートリアルが失敗しないようにします。
    ノート

    compartment-idを確認するには、ナビゲーション・メニューで「アイデンティティ」をクリックし、「コンパートメント」をクリックします。それぞれのOCIDを含む、使用可能なコンパートメントがリストされます。

2: PySparkを使用した機械学習

Spark-submitおよびCLIを使用して、PySparkで機械学習を実行します。

演習3を完了します。Oracle Cloud Infrastructure Data Flowスタート・ガイド・チュートリアルのPySparkによる機械学習。
  1. Before trying this exercise, complete 1. Create the Java Application Using Spark-Submit and CLI.この演習では、結果が使用されます。
  2. 次のコードを実行します:
    oci --profile <profile-name> --auth security_token data-flow run submit \
    --compartment-id <compartment-id> \
    --display-name Tutorial_3_PySpark_ML \
    --execute '
        oci://oow_2019_dataflow_lab@idehhejtnbtc/oow_2019_dataflow_lab/usercontent/oow_lab_2019_pyspark_ml.py 
        oci://<your_bucket>@<namespace-name>/output/tutorial1'

次の手順

Spark-submitおよびその他の状況ではCLIを使用します。

CLIからspark-submitを使用して、データ・フローでJava、PythonまたはSQLアプリケーションを作成および実行し、結果を調べることができます。データ・フローは、デプロイメント、分解、ログ管理、セキュリティおよびUIアクセスのすべての詳細を処理します。データ・フローでは、インフラストラクチャを気にすることなく、Sparkアプリケーションの開発に集中します。