データ接続と統合ストリーミングリソースガイドストリーミングプロファイル
Warning

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

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

Palantirプラットフォームでストリーミングを行うとき、Flinkランタイム環境の設定すべてが自動で管理されます。これには、Flinkジョブ設定の合理的でコスト効率の良いデフォルト設定も含まれます。ほとんどの場合、Flink計算エンジンでジョブをパフォーマントに実行するために、ユーザーが何かを設定する必要はありません。

しかし、場合によっては、Foundryのストリーミングがデフォルトで提供するよりも追加のリソースが必要になることがあります。そのようなリソースには、追加のパラレリズム(ストリームのスループットが非常に高い場合など)や、非常に大きな状態や非常に大きなレコードがある場合に必要となる追加のJobManagersやTaskManagersのリソースが含まれるかもしれません。

ジョブが追加のリソースを必要とするこれらのケースに対して、Palantirでは特定の設定オプションを調整するために使用できる一連のジョブプロファイルを提供しています。Palantirのストリーミングプラットフォームがほとんどのことをユーザーのために管理できるため、利用可能なFlink設定のうちの限定的なセットだけにアクセスを提供することに注意してください。

コードリポジトリ内のSparkプロファイルと同様に、各ストリーミングジョブプロファイルはストリーミングジョブのリソース要件の特定のコンポーネントを管理し、ストリーミングジョブプロファイルはユーザーのユースケース要件を満たすために互いに組み合わせることができます。

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

通常、私たちのデフォルトのストリーミング設定は大半のユースケースに対してパフォーマントでコスト効率が良いように設計されているため、プラットフォーム内でストリーミングプロファイルを使用する必要はありません。しかし、以下のような特定の問題がストリーミングジョブに関連している場合には、ストリーミングプロファイルの使用を推奨します。

  • 非常に高いスループット
  • 非常に大きなレコード
  • 非常に大きな状態要件

ユーザーは、ジョブ要件、JobTrackerインターフェース内の利用可能なログとエラーメッセージ、そして基本的なFlinkの理解を考慮に入れて、どの追加プロファイルが必要かを決定できます。

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

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

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

Pipeline Builder Built-in Flink Profilesのスクリーンショット

さらに、Pipeline Builderは、Advancedプロファイルオプションを使用して、これらのプロファイルの異なる側面を組み合わせることができます:

Pipeline Builder Advanced Flink profileのスクリーンショット

ユーザーが使用しているアプリケーションや、ワーキング環境に適用されている他のセキュリティや可視性の要件に基づいて、利用可能なストリーミングプロファイルの選択肢が異なる可能性があることに注意してください。

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

ストリーミングプロファイルは、絶えず実行中のストリーミングジョブに割り当てるリソースの合計数を決定するために使用できるため、これらのプロファイルにはストリーミングコストを管理するためのいくつかの管理制御が設けられています。

プロジェクトリファレンス

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

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

管理制御としてプロジェクトリファレンスを使用することで、より高度なユーザーに他のユーザーの代わりにプロジェクトにプロファイルをインポートする能力を付与できます。これにより、管理者はストリーミングプロファイルがどこで使用されるかをより詳細なレベルで制御しながら、より運用的なユーザーにアクセス権が付与されたプロファイルを使用することを可能にします。

プロジェクトリファレンスとしてプロファイルをインポートする

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

すべてのユーザーは、ほとんどのプロファイルをプロジェクトリファレンスとして自分のプロジェクトにインポートすることができます。ただし、リソースをインポートする十分な権限が必要です。これは一般的に、ユーザーがプロジェクトに対してcompass:import-resource-to権限を付与するロールが割り当てられていることを意味します。ユーザーは、ユーザーの設定内のロールタブをナビゲートすることでロール設定を確認できます。ページ上のFilter operations...検索ツールを使用して権限を検索します。

利用可能なすべてのストリーミングプロファイルのリストを表示するには、コントロールパネルの「エンロールメント設定」セクションの「ストリーミングプロファイル」タブを訪れてください。ここから、ユーザーは特定のプロファイルを選択し、そのプロファイルがプロジェクトリファイルとして追加されたすべてのプロジェクト(ユーザーがアクセスできるもの)を確認し、新しいプロジェクトにインポートすることもできます。また、インポートされたプロジェクトからプロファイルへのリファレンスを削除することもできますが、そのプロジェクト内でそのプロファイルに依存するすべてのストリーミングジョブが失敗することに注意してください。なぜなら、私たちはストリーミングジョブと同じプロジェクトにプロファイルをインポートすることが必要とされているからです。

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

大量のリソースを付与するプロファイルについては、コントロールパネルの「エンロールメント設定」セクションの「ストリーミングプロファイル」タブを使用してプロジェクトリファレンスを作成する必要があります。この設定は、「エンロールメントリソース管理者」として指定されたユーザーだけが有効にできます。これらの管理者は「エンロールメント権限」タブで割り当てることができ、アクセス権を持つ任意のプロジェクトに制限付きプロファイルをインポートできます。

管理者がプロジェクトにプロファイルをインポートすると、そのプロジェクトにアクセス権を持つ任意のユーザーがそのプロファイルを使用することができます。