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

Funnel ストリーミングパイプライン

Object Storage v2 は、オントロジーデータのバッチインデックス化に加えて、Foundry ストリームを入力データソースとして使用することで、オントロジーへの低遅延のストリーミングデータインデックス化に対応しています。ストリームは、非ストリーミングの Foundry データセットで使用されるバッチインフラストラクチャとは異なる仕組みを採用しているため、秒単位または分単位で Foundry オントロジーにデータをインデックス化でき、低遅延が求められる運用ワークフローに対応できます。

オントロジーのストリーミング動作についてさらに疑問がある場合は、よくある質問のドキュメントを参照してください。

ストリーミングパイプラインのパフォーマンスと低遅延に関するガイダンスについては、ストリーミングのパフォーマンスに関する考慮事項のドキュメントを参照してください。

ストリーミングオブジェクトタイプに関する現在の製品上の制限

Object Storage v2 のストリーミングは、「最後に受信した更新を優先する」方式を使用し、すべてのストリームを変更履歴ストリームとして扱います。ソースからのイベントが順序どおりに届かない場合、オントロジー内のデータは不正確になります。入力ストリームの順序を保証できる場合、Object Storage v2 のストリーミングはその順序どおりに更新を処理します。

オントロジーのストリーミング動作とその機能は、現在も積極的に開発されています。オントロジーのストリーミングを使用する前に考慮すべき、現在の製品上の制限を以下に示します。

  • ストリーミングオブジェクトタイプでは、ユーザーによる編集は利用できません。回避策として、ユーザーによる編集をデータ変更として入力ストリームに送信するか、非ストリーミングの入力データソースを持つオブジェクトタイプを追加で設定し、その補助オブジェクトタイプでユーザーが編集できるようにすることができます。また、オブジェクトの元データソースをダイレクトデータソースに切り替えることで、ストリームを元データソースとするオブジェクトタイプで編集を有効にできます。
  • ストリーミングオブジェクトタイプでは、マルチデータソースオブジェクトタイプ(MDO)は利用できません。
  • Workshop以外の Foundry フロントエンドアプリケーションは、従来ストリーミング更新を想定していなかったため、ライブデータの更新に対応していません。ストリーミングオブジェクトタイプでは、基になるオントロジーデータは常に変化していますが、Workshop 以外で新しいデータを取得するには、その都度更新する必要があります。
  • Ontology Manager のオブジェクトタイプのデータソースタブでは、Funnel バッチパイプラインの失敗や無効なレコードに対するモニターを設定できます。現在、ストリームデータソースを持つオブジェクトタイプでは、モニターやメトリクス(たとえば、パイプラインの低遅延)は利用できません。
  • レコードサイズは 1 MB を超えることはできず、オブジェクトタイプに含められるプロパティは250個までです。より大きなレコードをオントロジーにストリーミングする必要がある場合は、より小さなオブジェクトタイプを使用する別のオントロジーモデルを検討してください。

ストリーミングオブジェクトタイプを設定する

ストリーム入力データソースを持つオブジェクトタイプは、ほかの Foundry オントロジーのオブジェクトタイプと同様に、Pipeline Builderまたは Ontology Managerで直接設定します。

ストリームデータソースは、多対多リンクタイプにも設定できます。

入力ストリームをまだ設定していない場合は、Data Connection アプリケーションで既存のストリームと統合するか、Pipeline Builder でストリームパイプラインを構築することで作成できます。 :::

新しいオブジェクトタイプを作成した後(または既存のオブジェクトタイプを使用して)、Ontology Manager のデータソースタブに移動し、以下に示すように元データソースセクションでストリーム入力データソースを選択して、変更を Foundry オントロジーに保存します。

オントロジーのストリーミング設定

入力データソースのストリームに対して追加の設定を行うには、以下に示すように省略記号ボタンを選択して、その他のオプションを表示します。

追加のストリーミング設定 追加のストリーミング設定

ストリーム設定セクションには、オブジェクトタイプのストリーミングジョブを最適化するためのオプションがあります。

  • ストリームコンピュートプロファイル: デフォルトでは、オブジェクトタイプのストリーミングジョブは、ほとんどの入力ストリームに適したコンピュートプロファイルを使用します。ただし、非常に高いスループットのストリームを元データソースとするオブジェクトタイプでは、パイプラインの処理が遅れないように、より多くのリソースが必要になる場合があります。一方、低スループットのストリームを元データソースとするオブジェクトタイプでは、より小さなプロファイルを使用してコンピュートリソースのコストを節約できます。利用可能な選択肢のいずれも適していない場合は、Palantir の担当者にお問い合わせください。
  • ストリームの一貫性保証: デフォルトでは、オブジェクトタイプのストリーミングジョブは exactly-once の一貫性保証を使用します。これは at-least-once と比べて遅延が増加しますが、Foundry アプリケーションがオブジェクトセットの更新を正確に1回だけ受信することを保証します。at-least-once の一貫性保証を有効にすると遅延が減少します。ただし、まれに、オブジェクトセットが変更された際に Foundry アプリケーションが重複した更新を受信する場合があります。たとえば、オブジェクトセットに基づく自動化が複数回トリガーされる可能性があります。低遅延が求められるオブジェクトタイプでは、at-least-once を有効にすることを検討してください。

ストリーム設定セクション。

オブジェクトタイプのストリーム設定を変更すると、関連するストリーミングジョブが再起動され、新しいストリーミングレコードの処理に一時的な遅延が生じます。

ストリーミングパイプラインをデバッグする

ストリームとオントロジーの間のインターフェースは、概念的には変更履歴データセットと同様と考えることができます。入力ストリームの各レコードには、オントロジーに書き込まれる各プロパティのデータが含まれます。各レコードは、主キーで指定されたオブジェクトのすべてのプロパティを更新します。入力ストリームにメタデータを設定することで、入力レコードに削除を指定できます。

Funnel は、データソースストリームに書き込まれた順序でレコードをインデックス化するため、これらのストリームは主キーでパーティション分割し、イベントタイムスタンプ順に並べる必要があります。これは、上流の Pipeline Builder パイプラインで行えます。

ストリームパイプラインに問題がある場合は、失敗しているストリームをデバッグするドキュメントを参照してください。

オブジェクトタイプのストリーミングジョブの詳細とメトリクスを表示するには、パイプライン図のストリームバブルを選択します。

ストリーミングジョブの詳細とメトリクスにアクセスする。