リソースヒント
リソースヒントを使用すると、パイプラインの作成者は計算リソースの要件に関する情報をランナーに提供できます。 リソースヒントを使用して、特定の変換またはパイプライン全体の要件を定義できます。 ランナーはリソースヒントを解釈する責任があり、ランナーはサポートされていないヒントを無視できます。
リソースヒントはネストできます。 たとえば、複合変換のサブ変換にリソースヒントを指定でき、その複合変換にもリソースヒントを適用できます。 デフォルトでは、最も内側のヒントが優先されます。 ただし、ヒントはカスタムの調整動作を定義できます。 たとえば、`min_ram`は、パイプラインの特定のステップに設定されたすべての`min_ram`値の最大値を取ります。
- Java SDK
- Python SDK
利用可能なヒント
現在、Beamは次のリソースヒントをサポートしています
- `min_ram="numberXB"`:ワーカーに割り当てるRAMの最小量。 Beamは、MB、GB、MiB、GiBなど、さまざまなバイト単位を解析できます(たとえば、`min_ram="4GB"`)。 このヒントは、変換を処理するための推奨される最小メモリ要件を提供することを目的としています。
- `accelerator="hint"`:このヒントは、変換の処理に使用するハードウェアアクセラレータを記述することを目的としています。 たとえば、Dataflowランナーの有効なアクセラレータ構文は次のとおりです。`accelerator="type:<type>;count:<n>;<options>"`
リソースヒントの解釈と実行は、ランナーによって異なる場合があります。 実装例については、Dataflowリソースヒントを参照してください。
パイプラインのリソースヒントの指定
パイプライン全体にリソースヒントを指定するには、パイプラインオプションを使用できます。 次のコマンドは、基本的な構文を示しています。
変換のリソースヒントの指定
setResourceHintsを使用して、パイプライン変換にプログラムでリソースヒントを設定できます。
PTransforms.with_resource_hintsを使用して、パイプライン変換にプログラムでリソースヒントを設定できます(ResourceHintも参照)。
最終更新日:2024/10/31
お探しのものはすべて見つかりましたか?
すべて役に立ち、明確でしたか? 変更したいことはありますか? ご意見をお聞かせください!