ジョブの作成

データ・サイエンスでジョブを作成して実行します。

開始する前に

    1. 「プロジェクト」リスト・ページで、作業するジョブを含むプロジェクトを選択します。リスト・ページまたはプロジェクトの検索に関するヘルプが必要な場合は、プロジェクトのリストを参照してください。
    2. プロジェクトの詳細ページで、「ジョブ」を選択します。
    3. 「ジョブの作成」を選択します。
      「ジョブの作成」ページが開きます。

    基本情報

    単一または複数のノードを選択し、識別情報を指定します。

    • ジョブ・タイプ: 関連するオプションを選択します。
      • 単一ノード: ジョブ用に1つのマシン。
      • マルチ・ノード: 要求の高いジョブに複数のノードがあります。
    • コンパートメント(オプション): ジョブに別のコンパートメントを選択します。
    • 名前(オプション): ジョブの名前を入力します(制限は255文字)。名前を指定しない場合、名前は自動的に生成されます。例: job20210808222435

    構成

    次の情報を入力します

    • ノード・グループの追加(マルチノード・ジョブのみ): ノード・グループ構成を追加する場合に選択します。最大5つのノード・グループを追加します。
      • Name: ノード・グループの一意の名前を入力します。
      • レプリカ: レプリカの数を入力します。
      • 最小成功レプリカ: 成功する必要があるレプリカの最小数を入力します。
      • アスタリスク・フィールド(*)
      • (オプション)複数のノード・グループがある場合は、ノード・グループの起動順序をパラレルまたは順番に指定します。
    • カスタム環境変数キー* (オプション): ジョブを制御するための環境変数
      ノート

      ZIPファイルまたは圧縮tarファイルをアップロードした場合は、ファイルを指すカスタム環境変数としてJOB_RUN_ENTRYPOINTを追加します
    • * (オプション): カスタム環境変数キーの値。
    • コマンドライン引数* (オプション): ジョブの実行に使用するコマンドライン引数。
    • 最大ランタイム(分)(オプション): ジョブを実行できる最大分単位。サービスは、実行時間が指定された値を超えた場合にジョブ実行を取り消します。最大実行時間は30日(43,200分)です。ランナウェイ・ジョブ実行を回避するために、すべてのジョブ実行に最大実行時間を構成することをお薦めします。
    • シェイプの変更* (オプション): 「シェイプの変更」を選択してコンピュート・シェイプを変更します。次に、「コンピュート・シェイプの選択」パネルの次のステップに従います。
      • インスタンス・タイプの選択
      • シェイプ・シリーズを選択します。
      • サポートされているシリーズ内のコンピュート・シェイプのいずれかを選択します。リソースの使用方法に最適なシェイプを選択します。
      • 選択したシェイプを展開して、OCPUおよびメモリーを構成します。
        • OCPUの数
        • メモリー量(GB): OCPUごとに、最大64 GBのメモリーと最大合計512 GBを選択します。許容されるメモリーの最小容量は、1GBまたはOCPUの数に一致する値のいずれか大きい方です。
        • バースト可能なシェイプの有効化: バースト可能な仮想マシンを使用する場合に選択し、「OCPU当たりのベースライン使用率」で、通常使用するOCPUの割合を選択します。サポートされている値は、12.5%および50%です。(モデル・デプロイメントでは、50%の値のみがサポートされます。)
      • 「シェイプの選択」を選択します。
    • ストレージ: 50 GBから10、240 GB (10 TB)の間に使用するブロック・ストレージの量を入力します。値は1GB単位で変更できます。
    • ネットワーキング・リソース: 関連するオプションを選択します。
      • デフォルト・ネットワーキング: トラフィックをOracleサービスのみに制限します。システムは、既存のサービス管理ネットワークを使用します。ワークロードは、セカンダリVNICを使用して、事前構成済のサービス管理型のVCNおよびサブネットにアタッチされます。提供されているこのサブネットにより、NATゲートウェイを介したパブリック・インターネットへのエグレスおよびサービス・ゲートウェイを介した他のOracle Cloudサービスへのアクセスが許可されます。

        パブリック・インターネットおよびOCIサービスのみにアクセスする必要がある場合は、このオプションを使用することをお薦めします。ネットワーキング・リソースの作成や、ネットワーキング権限のポリシーの書込みは不要です。

      • インターネットを使用したデフォルト・ネットワーキング: データ・サイエンスNATゲートウェイを介したアウトバウンド・インターネット・アクセスを許可します。
        ノート

        切断されたレルムおよびOracle開発テナンシでは、インターネットを使用するデフォルト・ネットワーキングを使用できません。テナンシまたはコンパートメントに、パブリック・ネットワーク・アクセスを拒否するデータ・サイエンス・セキュリティ・ゾーン・ポリシー(たとえば、deny model_deploy_public_network - データ・サイエンス・セキュリティ・ゾーン・ポリシーを参照)がある場合、サービス管理のパブリック・インターネット・アクセス・オプションは無効になります。このオプションを使用しようとすると、404 NotAuthorizedOrNotFoundエラーが表示されます。
      • Custom Networking: 使用するVCNおよびサブネット(コンパートメント別)を選択します。

        パブリック・インターネットへのエグレス・アクセスには、NATゲートウェイへのルートを持つプライベート・サブネットを使用します。

        ノート

        • ファイル・ストレージ・マウントを使用するには、カスタム・ネットワークを使用する必要があります。
        • カスタム・ネットワーキングから管理対象ネットワーキングへの切替えは、作成後はサポートされません。
        • バナーThe specified subnet is not accessible. Select a different subnet.が表示された場合は、データ・サイエンスでカスタム・ネットワーキングを使用できるようにするポリシーを作成します。ポリシーを参照してください。
    • ジョブ・アーティファクトのアップロード(BYOCが構成されている場合はオプション): 必要なジョブ・アーティファクト・ファイルをボックスにドラッグして、ジョブ・アーティファクトをアップロードします。
    ノート

    フィールドのアスタリスク(*)は、マルチノード・ジョブの異なる配置を示します。マルチノード・ジョブを作成する場合は、ノード・グループを追加してフィールドを検索します。「構成」で、「ノード・グループの追加」を選択します。「ノード・グループの追加」パネルにフィールドが表示されます。

    追加構成

    次の情報を入力します

    • ロギングの有効化(オプション): ロギングを構成します。
      • ログ・グループ・コンパートメント: ログ・グループを含むコンパートメントを選択します。
      • ログ・グループ: ログのグループを選択します。
      • 自動ログ作成の有効化: ジョブの開始時にログを自動的に作成するには、このオプションを選択します。作成されたログには、すべてのstdoutおよびstderrメッセージが格納されます。
      • ログの選択: すべてのstdoutおよびstderrメッセージを格納するには、このオプションを選択(および既存のログを選択)します。
    • BYOCの有効化 / 環境構成 > 選択* (マルチノード・ジョブに必須): コンテナを持ち込む(BYOC)ための環境を設定します。
      • コンパートメント: リポジトリを含むコンパートメントを選択します、
      • リポジトリ: リストからリポジトリを選択してください。
      • Image: 使用するイメージを選択してください。
      • エントリポイント: エントリポイントを入力します。
      • CMD: コマンドを入力します。
        ノート

        ENTRYPOINTの引数としてCMDを使用するか、ENTRYPOINTがない場合に実行する唯一のコマンドとして使用します。
      • イメージ・ダイジェスト: イメージ・ダイジェストを入力します。
      • 署名ID: 署名検証を使用する場合は、イメージ署名のOCIDを入力します。例: ocid1.containerimagesignature.oc1.iad.aaaaaaaaab...
    • ファイル・ストレージ・マウント(オプション): 「ファイル・ストレージ・マウントの追加」を選択し、次の情報を入力します。
      • コンパートメント: マウントするターゲットを含むコンパートメントを選択します。
      • マウント・ターゲット: 使用するマウント・ターゲット。
      • エクスポート・パス: 使用するエクスポート・パス。
      • 宛先パスおよびディレクトリ: 記憶域のマウントに使用するパスを入力します。

        パスは英数字で始める必要があります。宛先ディレクトリは、指定されたストレージ・マウント全体で一意である必要があります。使用できる文字は、英数字、ハイフン( - )およびアンダースコア( _ )です。

        /opc/storage-directoryなどのフルパスを指定できます。/storage-directoryなどのディレクトリのみが指定されている場合は、デフォルトの/mntディレクトリの下にマウントされます。/bin/etcなど、OS固有のディレクトリは指定できません。

    • オブジェクト・ストレージ・マウント(オプション): 「オブジェクト・ストレージ・マウントの追加」を選択し、次の情報を入力します。
      • コンパートメント: マウントするバケットが含まれるコンパートメントを選択します、
      • バケット: 使用するバケットを選択します。
      • オブジェクト名接頭辞(オプション): オブジェクト名接頭辞。接頭辞は英数字で始める必要があります。使用できる文字は、英数字、スラッシュ( / )、ハイフン( - )およびアンダースコア( _ )です。
      • 宛先パスおよびディレクトリ: 記憶域のマウントに使用するパスを入力します。

        パスは英数字で始める必要があります。宛先ディレクトリは、指定されたストレージ・マウント全体で一意である必要があります。使用できる文字は、英数字、ハイフン( - )およびアンダースコア( _ )です。

        フルパス(/opc/storage-directoryなど)を指定できます。/storage-directoryなどのディレクトリのみが指定されている場合は、デフォルトの/mntディレクトリにマウントされます。OS固有のディレクトリ(/bin/etcなど)は指定できません。

      ノート

      カスタム・ネットワーキングを使用している場合:
      1. VCNにサービス・ゲートウェイを作成します。
      2. プライベート・サブネットのルート表構成の場合は、サービス・ゲートウェイを追加します。
      3. 必要なサブネットのセキュリティ・リストのエグレス・ルールを変更して、ネットワーク内のすべてのサービスへのトラフィックを許可します。
    • Probe* (マルチノードジョブに必要): 起動プローブを構成します。
      1. 「選択」を選択します。
      2. 「プローブ」パネルで、次の情報を入力します。
        • コマンド
        • 初期遅延 (秒)
        • 期間
        • 失敗のしきい値
      3. 「保存」を選択します。
    • タグ(「拡張オプション」の下): ジョブにタグを追加します。リソースを作成するアクセス許可がある場合、そのリソースにフリーフォーム・タグを適用するアクセス許可もあります。定義済タグを適用するには、タグネームスペースを使用する権限を持つ必要があります。タグ付けの詳細は、リソース・タグを参照してください。 タグを適用するかどうかわからない場合は、このオプションをスキップするか、管理者に問い合せてください。後でタグを適用できます。
    ノート

    フィールドのアスタリスク(*)は、マルチノード・ジョブの異なる配置を示します。マルチノード・ジョブを作成する場合は、ノード・グループを追加してフィールドを検索します。「構成」で、「ノード・グループの追加」を選択します。「ノード・グループの追加」パネルにフィールドが表示されます。

    確認および作成

    構成を確認し、「作成」を選択します。

    ジョブがアクティブ状態になったら、ジョブ実行を使用してジョブを繰り返し実行できます。

  • これらの環境変数は、ジョブを制御します。

    次の例のように、データ・サイエンスCLIを使用してジョブを作成します:

    1. 次を使用してジョブを作成します:
      oci data-science job create \
      --display-name <job_name>\
      --compartment-id <compartment_ocid>\
      --project-id <project_ocid> \
      --configuration-details file://<jobs_configuration_json_file> \
      --infrastructure-configuration-details file://<jobs_infrastructure_configuration_json_file> \
      --log-configuration-details file://<optional_jobs_infrastructure_configuration_json_file>
                                      
    2. 次のジョブ構成JSONファイルを使用します:
      {
        "jobType": "DEFAULT",
        "maximumRuntimeInMinutes": 240,
        "commandLineArguments" : "test-arg",
        "environmentVariables": {
          "SOME_ENV_KEY": "some_env_value" 
        }
      }
    3. 次のジョブ・インフラストラクチャ構成JSONファイルを使用します:
      {
        "jobInfrastructureType": "STANDALONE",
        "shapeName": "VM.Standard2.1",
        "blockStorageSizeInGBs": "50",
        "subnetId": "<subnet_ocid>"
      }
    4. (オプション)このジョブ・ロギング構成JSONファイルを使用します:
      {
        "enableLogging": true,
        "enableAutoLogCreation": true,
        "logGroupId": "<log_group_ocid>"
      }
    5. 次を使用して、作成したジョブのジョブ・アーティファクト・ファイルをアップロードします:
      oci data-science job create-job-artifact \
      --job-id <job_ocid> \
      --job-artifact-file <job_artifact_file_path> \
      --content-disposition "attachment; filename=<job_artifact_file_name>"
  • ADS SDKは、次のコマンドを使用してインストールできる、パブリックに使用可能なPythonライブラリでもあります:

    pip install oracle-ads

    ノートブックまたはクライアント・マシンでのジョブの作成と実行を容易にするラッパーを提供します。

    ADS SDKを使用してジョブを作成および実行します。