コンピュートの管理

この項では、AIデータ・プラットフォーム・ワークベンチでコンピュート・クラスタを作成、変更または削除する基本的な機能について説明します。

計算クラスタについて

全目的コンピュート・クラスタは、AI Data Platform Workbenchインスタンスでワークロードを処理するためのコンピュート・リソースを提供します。

コンピュート・クラスタは、Oracle AI Data Platform Workbenchのコンピュート・ページから管理します。


「コンピュート」が左ペインに強調表示された「AIデータ・プラットフォーム・コンピュート」ページ

コンピュートのタイプ

AIデータ・プラットフォーム・ワークベンチには、汎用のコンピュート・クラスタとデフォルトのマスター・カタログ・コンピュート・クラスタの2つのタイプのコンピュートが存在します。

AIデータ・プラットフォーム・ワークベンチでは、すべての目的のコンピュート・クラスタのみを作成できます。オールパーパス・コンピュート・クラスタは多用途のワークロードに適しており、ノートブックにアタッチしてワークフローで使用できます。特に指定がないかぎり、ドキュメント内の「コンピュート・クラスタ」または「クラスタ」への参照はすべて、目的のコンピュート・クラスタを指します。

すべての目的のコンピュート・クラスタを新規に作成する場合は、クイックスタート構成またはカスタム構成のいずれかを選択できます。クイックスタート構成は高速起動を提供するように最適化されていますが、カスタム構成では、処理に必要な特定のワークロードに合せて、すべての目的のコンピュート・クラスタを微調整できます。「クイックスタート」構成オプションと「カスタム」構成オプションの両方で、コスト予測を表示し、アイドル・タイムアウト・オプションを変更できます。

ノート:

カスタム・ライブラリをクイックスタート構成にインストールすると、すべての目的コンピュート・クラスタが自動的にカスタム構成に変更されます。これは、起動のパフォーマンスに影響する可能性があります。

デフォルトのマスター・カタログ・コンピュート・クラスタは、すべてのAIデータ・プラットフォーム・ワークベンチ・インスタンスに存在します。このクラスタは、検索クロール、カタログ・オブジェクトのリフレッシュ、オブジェクトの作成、編集および削除、接続のテストなどの重要なAIデータ・プラットフォーム・ワークベンチ機能を担当します。

クラスタ・ランタイム

すべての目的のコンピュート・クラスタは、Apache Spark 3.5ランタイムで作成できます。ランタイム環境は次のものと互換性があります。

  • Spark 3.5.0
  • デルタ3.2.0 (含まれている)
  • Python 3.11
  • Scala 2.12
  • Hadoop 3.3.4
  • Java 17

コンピュート・クラスタのメンテナンス更新

AI Data Platform Workbenchコンピュートは、ユーザーの介入なしにメンテナンス更新を自動的に適用します。メンテナンス更新は、オペレーティング・システムおよびAI Data Platform Workbench内部コンポーネントに必要なセキュリティ・パッチまたはバグ修正をカバーしています。

AI Data Platform Workbenchは、これらの月次メンテナンス更新を適用する前に、実行中のクラスタがないことを検証します。

クイックスタート・クラスタの作成

AIデータ・プラットフォーム・ワークベンチでデータおよびAIワークロードを処理するための事前構成済の設定で、万全のコンピュート・クラスタを作成することを選択できます。

クイックスタート構成は、1つのドライバと最大10人のワーカーで構成されるApache Sparkクラスタで、それぞれにAMD 2 OCPUと32 GBのメモリーがあります。クイックスタート構成では、自動スケーリングがデフォルトで有効になっています。クラスタを常にアクティブにするように設定するか、クラスタが自動的に停止する(アイドル・タイムアウト)までの非アクティブな間隔を設定できます。停止したクラスタは、アタッチされたワークフローまたはノートブックによってコールされると再開されます。

クラスタは、作成後いつでも編集できます。

  1. 左側のナビゲーション・パネルで「作成」をクリックし、「コンピュート」をクリックします。ワークスペースに移動して「コンピュート」をクリックし、「Create cluster」アイコン 「クラスタの作成」をクリックすることもできます。

    「Quickstart radial」オプションが選択された状態で「Create cluster」ダイアログが開きます

  2. クラスタを識別するための名前と説明を指定します。
  3. 「ランタイム・バージョン」を選択します。
  4. クラスタ構成として「クイックスタート」を選択します。
  5. ワーカーの数が静的か自動的にスケーリングかを選択します。クイックスタート構成では、自動スケーリングがデフォルトで有効になっています。
  6. 「実行期間」で、設定した非アクティブ期間後にクラスタの実行を停止するかどうかを選択します。「アイドル・タイムアウト」を選択した場合は、クラスタがタイムアウトするまでのアイドル時間を分単位で指定します。
  7. 「作成」をクリックします。

カスタム・クラスタの作成

AIデータ・プラットフォーム・ワークベンチでデータおよびAIワークロードを処理するために独自の構成設定を使用して、万全のコンピュート・クラスタを作成できます。

カスタム・クラスタは、ニーズにあわせて構成オプションの全範囲を活用する上級ユーザーを対象としています。処理するワークロードに最適なドライバおよびワーカー・オプションを選択する必要があります。クラスタを常にアクティブにするように設定するか、クラスタが自動的に停止する(アイドル・タイムアウト)までの非アクティブな間隔を設定できます。停止したクラスタは、アタッチされたワークフローまたはノートブックによってコールされると再開されます。

クラスタは、作成後いつでも編集できます。

  1. 左側のナビゲーション・パネルで「作成」をクリックし、「コンピュート」をクリックします。ワークスペースに移動して「コンピュート」をクリックし、「Create cluster」アイコン 「クラスタの作成」をクリックすることもできます。

    「Custom radial」オプションが選択された状態で「Create compute cluster」ダイアログが開きます

  2. クラスタを識別するための名前と説明を指定します。
  3. 「ランタイム・バージョン」を選択します。
  4. クラスタのドライバ・オプションを選択します。
  5. クラスタのワーカー・オプションを選択します。これらのオプションは、すべてのクラスタ・ワーカーに適用されます。
  6. 就業者数が静的か自動的にスケーリングかを選択します。
    • [固定額]の場合は、従業員数を指定します。
    • 「自動スケール」の場合は、クラスタがスケーリングできるワーカーの最小数および最大数を指定します。
  7. 「実行期間」で、設定した非アクティブ期間後にクラスタの実行を停止するかどうかを選択します。「アイドル・タイムアウト」を選択した場合は、クラスタがタイムアウトするまでのアイドル時間を分単位で指定します。
  8. 「作成」をクリックします。

NVIDIA GPUクラスタの作成

All Purpose ComputeクラスタでNVIDIA GPUを使用して、統合AIおよびデータ・パイプラインのあらゆるワークロードを加速することもできます。

NVIDIA GPUシェイプでは、次の構成が使用されます:

表13-1 NVIDIA GPUシェイプ

GPU数 OCPU ブロック・ストレージ(GB) GPUメモリ(GB) CPUメモリ(GB)
1 15 1500 24 240
2 30 3000 48 480

ノート:

NVIDIA GPUシェイプを使用する場合、ドライバ・シェイプとワーカー・シェイプの両方がNVIDIA GPUである必要があります。現在、同じクラスタでのCPUシェイプとGPUシェイプの混在はサポートされていません。
  1. 左側のナビゲーション・パネルで「作成」をクリックし、「コンピュート」をクリックします。ワークスペースに移動して「コンピュート」をクリックし、「Create cluster」アイコン 「クラスタの作成」をクリックすることもできます。

    「Custom radial」オプションが選択された状態で「Create compute cluster」ダイアログが開きます

  2. クラスタを識別するための名前と説明を指定します。
  3. 「ランタイム・バージョン」を選択します。
  4. クラスタ構成として「カスタム」を選択します。
  5. クラスタ・ドライバ・オプションの場合:
    • 「ドライバ・シェイプ」として「NVIDIA GPU」を選択します。
    • GPU数として1または2を選択します。
  6. クラスタ・ワーカー・オプションの場合:
    • ワーカー・シェイプとして「NVIDIA GPU」を選択します。
    • GPU数として1または2を選択します。
  7. 就業者数が静的か自動的にスケーリングかを選択します。
    • [固定額]の場合は、従業員数を指定します。
    • 「自動スケール」の場合は、クラスタがスケーリングできるワーカーの最小数および最大数を指定します。
  8. 「実行期間」で、設定した非アクティブ期間後にクラスタの実行を停止するかどうかを選択します。「アイドル・タイムアウト」を選択した場合は、クラスタがタイムアウトするまでのアイドル時間を分単位で指定します。
  9. 「作成」をクリックします。

NVIDIA GPUクラスタ・チューニング

GPUプロバイダの推奨事項を使用し、オプションのライブラリをインストールすることで、NVIDIA GPUクラスタをチューニングしてパフォーマンスを最適化できます。

GPUクラスタをチューニングすると、AIデータ・プラットフォーム・ワークベンチでジョブによってコールされたときに、これらのクラスタのパフォーマンスを最適化できます。

NVIDIA GPUベースのクラスタの場合は、NVIDIAのチューニング・ガイドに従って、パフォーマンスを最適化するために実行できる推奨事項とステップを確認できます。

最適化に役立つSpark RAPIDSライブラリをインストールするオプションもあります。

  • Spark RAPIDSライブラリは、Apache Spark用のRAPIDSアクセラレータであり、GPUを利用して処理を高速化する一連のプラグインを提供します。
  • Spark RAPIDS MLライブラリは、Apache SparkでのGPUアクセラレーテッド分散機械学習を可能にし、RAPIDS cuMLライブラリを搭載した複数のPySpark ML互換アルゴリズムを提供します。

Spark RAPIDSライブラリは、最初に機能エンジニアリングおよびデータ・クリーニングに使用され、その後、Spark RAPIDS MLライブラリを使用して大規模に相互検証が実行されます。これらのライブラリは、不正検出(時系列)、Webクリックストリーム、A/B実験などのユース・ケースに使用できます。

表13-2推奨されるSpark構成

設定 Value ノート
spark.executor.instances 4 ワーカー数xワーカー当たりのGPU数

ワーカーの数が4で、ワーカー当たりのGPU数が1の場合、推奨spark.executor.instances構成は4 x 1 = 4です

スパーク.executor.cores 16 GPU数/ワーカー/CPUコア、最大16個
spark.executor.memory 32GB ワーカー当たりのCPUメモリー/GPU数の2GB/コアまたは80% (いずれか小さい方)
スパーク・タスク.リソース.gpu.amount 0.0625 1 / spark.executor.cores
spark.rapids.sql.concurrentGpuタスク 3 GPUメモリ/8GB、最大4
spark.rapids.shuffle.multiThreaded.write.threads 32 ワーカー当たりのCPUコア/GPU数
スパーク・ラピッド・シャッフル・マルチスレッド・リーダー・スレッド 32 ワーカー当たりのCPUコア/GPU数
spark.shuffle. マネージャ com.nvidia.spark.rapids.spark350.RapidsShuffleManager -
spark.rapids.shuffle.mode マルチスレッド -
スパークプラグイン com.nvidia.spark.SQLプラグイン -
スパーク.executor.resource.gpu.amount 1 -
spark.sql.files.maxPartitionバイト数 2GB オプションであり、大規模なデータセットに推奨されます
spark.rapids.sql.batchSizeバイト 2GB オプションであり、大規模なデータセットに推奨されます
spark.rapids.memory.host.spillStorageSize 32G オプションであり、大規模なデータセットに推奨されます
spark.rapids.memory.pinnedPool.size 8G オプションであり、大規模なデータセットに推奨されます
spark.sql.adaptive.coalescePartitions.minPartitionSize 32MB オプションであり、大規模なデータセットに推奨されます
spark.sql.adaptive.advisoryPartitionSizeInバイト 160MB オプションであり、大規模なデータセットに推奨されます
spark.rapids.filecache.enabled True オプション。ワークロードがデータセットを再利用する場合にお薦めします

クラスタの変更

クラスタの設定を変更したり、パラメータを追加したりできます。

  1. ワークスペースに移動し、「コンピュート」をクリックします。
  2. 変更するコンピュート・クラスタの横で、アクションの3つのドット・アイコン 「アクション」をクリックし、「編集」をクリックします。
  3. コンピュート・クラスタの属性を変更するか、必要に応じてパラメータを追加します。
  4. 保存」をクリックします

クラスタの削除

未使用または不要になったコンピュート・クラスタを削除できます。

  1. ワークスペースに移動し、「コンピュート」をクリックします。
  2. 削除するクラスタの横にあるアクションの3つのドット・アイコン 「アクション」をクリックし、「削除」をクリックします。
  3. 「削除」をクリックします

クラスタ詳細の表示

クラスタのシェイプおよび設定は、いつでも確認できます。

  1. ワークスペースに移動し、「コンピュート」をクリックします。
  2. 詳細を表示するクラスタの名前をクリックします。
  3. 「詳細」タブをクリックします。

コンピュート・クラスタのメンテナンス更新

Oracle AI Data Platformコンピュートは、ユーザーの介入なしにメンテナンス更新を自動的に適用します。

メンテナンス更新は、オペレーティング・システムおよびAIデータ・プラットフォーム内部コンポーネントに必要なセキュリティ・パッチまたはバグ修正をカバーしています。AI Data Platformは、これらの月次メンテナンス更新を適用する前に、実行中のクラスタがないことを検証します。