注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。

ストリーミングプロファイル

Palantir プラットフォームでストリーミングを行う場合、Flink ジョブ設定の適切でコスト効率の高いデフォルト値を含め、Flink ランタイム環境の設定に関するすべての側面が管理されます。ほとんどの場合、Flink 計算エンジンでジョブを高いパフォーマンスで実行し始めるために、自分で設定する必要はありません。

ただし、Foundry のストリーミングでデフォルトで提供されるリソースよりも多くのリソースをジョブが必要とする場合があります。たとえば、ストリームのスループットが非常に高い場合には並列度の追加が、状態やレコードが非常に大きい場合には JobManager や TaskManager 用のリソースの追加が必要になることがあります。

ジョブが追加のリソースを必要とするこうしたケースに対応するため、Palantir は特定の設定オプションを調整できるジョブプロファイルを提供しています。Palantir のストリーミングプラットフォームがほとんどの項目を管理できるため、これらのプロファイルで変更できるのは、利用可能な Flink 設定全体のうち限られた項目のみです。

Code Repositories の Spark プロファイルと同様に、各ストリーミングジョブプロファイルはストリーミングジョブのリソース要件の特定の要素を管理します。また、ユースケースの要件を満たすように、ストリーミングジョブプロファイルを組み合わせることができます。

ストリーミングプロファイルを使用する場面

デフォルトのストリーミング設定は、大半のユースケースで高いパフォーマンスとコスト効率を実現するように設計されているため、通常、プラットフォームでストリーミングプロファイルを使用する必要はありません。ただし、ストリーミングジョブで次の事項に関する具体的な問題が発生している場合に限り、ストリーミングプロファイルの使用を推奨します。

  • 非常に高いスループット
  • 非常に大きいレコード
  • 非常に大きい状態を必要とする要件

ジョブの要件、JobTracker インターフェースで確認できるログやエラーメッセージ、および Flink の基本的な知識を踏まえて、必要な追加プロファイルを判断できます。

ストリーミングプロファイルを設定する

ストリーミングプロファイルの設定インターフェースは、Foundry のストリーミングプラットフォームを使用する場所によって異なります。

ほとんどの場合、ストリーミングのユースケースを設定する際には、利用可能なすべてのストリーミングプロファイルが一覧表示される選択ボックスがあります。たとえば、Pipeline Builderでは、デプロイボタンの横にあるビルド設定を選択すると、設定可能なストリーミングプロファイルの一覧を確認できます。

Pipeline Builder の組み込み Flink プロファイルのスクリーンショット

また、Pipeline Builder では、アドバンスドプロファイルオプションを使用して、これらのプロファイルのさまざまな要素を組み合わせることができます。

Pipeline Builder のアドバンスド Flink プロファイルのスクリーンショット。

選択できるストリーミングプロファイルは、使用しているアプリケーションや、作業環境に適用されているその他のセキュリティ要件または表示に関する要件によって異なる場合があります。

ストリーミングプロファイルを管理する

ストリーミングプロファイルを使用して、継続的に実行されるストリーミングジョブに割り当てるリソースの総量を決定できるため、ストリーミングのコストを管理するための管理者向け制御が、これらのプロファイルにいくつか設けられています。

プロジェクト参照

Palantir プラットフォームでは、プロジェクトは関連する作業の概念的な境界と、アクセスを適用および管理するためのセキュリティ境界を定義します。セキュリティおよび管理者向け制御は、デフォルトでプロジェクト単位で適用されます。通常、データやリソースを使用するには、それらが現在のプロジェクト内に存在するか、現在のプロジェクトにインポートされてプロジェクト参照が付与されている必要があります。プロジェクト内のすべての参照は、プロジェクトワークスペースのサイドパネルの参照セクションで確認できます。

ストリーミングプロファイルに適用される主要な管理者向け制御は、関連するストリーミングパイプラインまたはアプリケーションと同じプロジェクトに、プロファイルをプロジェクト参照として追加しなければならないという要件です。プロジェクトにインポートされていないストリーミングプロファイルを使用しようとすると、この要件が満たされていないことを示すエラーが発生し、ジョブの実行に失敗します。

プロジェクト参照を管理者向け制御として使用することで、上級ユーザーに、ほかのユーザーに代わってプロファイルをプロジェクトにインポートする権限を付与できます。これにより、管理者はストリーミングプロファイルの使用場所を細かく制御できる一方、日常的な操作を担うユーザーはアクセス権を付与されたプロファイルを使用できます。

プロファイルをプロジェクト参照としてインポートする

通常、関連するアプリケーション内でプロファイルセレクターコンポーネントを使用すると、プロファイルはプロジェクトに自動的にインポートされます。たとえば、Pipeline Builder のプロファイルセレクターは、選択したプロファイルを自動的にインポートします。

リソースをインポートするための十分な権限があれば、すべてのユーザーは、ほとんどのプロファイルを自身のプロジェクトにプロジェクト参照としてインポートできます。これは一般に、プロジェクトに対する compass:import-resource-to 権限を付与するロールがユーザーに割り当てられていることを意味します。ロールの設定は、ユーザーの設定にあるロールタブで確認できます。ページ上の操作を絞り込む...検索ツールを使用して、権限を検索します。

利用可能なすべてのストリーミングプロファイルの一覧を表示するには、Control Panel の「エンロールメントの設定」セクションにある「ストリーミングプロフィール(Streaming profiles)」タブに移動します。ここで任意のプロファイルを選択すると、そのプロファイルがプロジェクト参照として追加されているすべてのプロジェクト(アクセス権があるもの)を確認できるほか、新しいプロジェクトにインポートすることもできます。また、プロファイルがインポートされているプロジェクトから、そのプロファイルへの参照を削除することもできます。ただし、この操作により、そのプロジェクト内で当該プロファイルに依存するストリーミングジョブはすべて動作しなくなります。プロファイルを使用するには、ストリーミングジョブと同じプロジェクトにプロファイルをインポートする必要があるためです。

大規模なストリーミングプロファイルを使用する

大量のリソースを割り当てるプロファイルでは、Control Panel のエンロールメントの設定セクションにあるストリーミングプロフィール(Streaming profiles) タブを使用して、プロジェクト参照を作成する必要があります。この設定は、エンロールメントリソース管理者に指定されたユーザーに対してのみ有効になります。これらの管理者はエンロールメント権限タブで割り当てることができ、アクセス権がある任意のプロジェクトに制限付きプロファイルをインポートできます。

管理者がプロファイルをプロジェクトにインポートすると、そのプロジェクトへのアクセス権があるすべてのユーザーが、そのプロファイルを使用できるようになります。