注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
Foundry オントロジーは、ファイルベースのデータを組織中心のオブジェクトにマッピングし、データ探索、データ分析、運用データ編集、シナリオ分析などのための高速クエリを提供するデータバックエンドです。オントロジーは、各自の目的を持つマルチモーダルストレージバックエンドにデータを保存し、単一のリクエストで柔軟にクエリを実行できます。Foundry オントロジーをクエリするには、以下で説明する基本的な概念の知識が必要です。
Palantir とのエンタープライズ契約がある場合は、コンピュート使用計算を進める前に Palantir の担当者に連絡してください。
最初の重要な概念は、オブジェクトタイプとそれに対応するオブジェクトセットの違いです。オブジェクトタイプは、エンティティ自体のセマンティックな表現(オブジェクトの名前やプロパティなど)です。
オブジェクトタイプには対応するオブジェクトセットがあり、そこにはオブジェクト自体が含まれています。オブジェクトセットのサイズは、インカミングデータセットの行数とオントロジーアクションによって作成および削除されたオブジェクトの数に対応します。
次に重要な概念は、クエリタイプの概念です。これにはフィルター処理、集計、Search Around、書き戻し操作が含まれます。各クエリタイプの実行にはコンピュートが必要です。
sum
やavg
など)を実行します。クエリタイプについてさらに学ぶには、APIドキュメントを参照してください。
Foundry オントロジーを使用する場合、クエリタイプは次の Foundry アプリケーション によってオブジェクトセットに対して実行されます。
これらのソースからオントロジーをクエリするには、次のようにクエリを実行するためのコンピュート秒を使用します。
Object Storage V1 (Phonograph) は、耐久性のある水平スケーラブルなクラスター内の分散インデックスセットにデータを保存します。これらのインデックス内で、データはオントロジークエリエンジンによってトラバースされる大規模なデータ構造に格納されます。クエリが実行されると、エンジンはインデックスをトラバースすることで検索中に大量のデータの処理を回避できます。このプロセスは「プルーニング」として知られています。
このエンジンを使用すると、最大 1000 倍少ないレコードを評価して数十億のレコードを検索できます。レコードの各物理的な評価を「ヒット」と呼びます。Object Storage V1 は、各クエリでのヒット数を最小限に抑えるように設計されています。
Object Storage V2 (OSv2) は、高速インデックス作成、Search Around、および書き戻しのために Palantir によって最適化された強化インデックス形式でオブジェクトを保存し、複雑なタスクを実行するために複数のコンピュートバックエンドへのスムーズなハンドオフをサポートします。これには、クエリの一部として完全に並列化された Spark コンピュートの組み合わせが含まれます。
Object Storage V2 も効率的なインデックス構造を使用しているため、基本的なクエリについては Object Storage V1 のヒットの原理が適用されます。ただし、クエリの一部としてスピンアップされるオンデマンド Spark コンテナによってもコンピュート秒が使用される場合があります。
Object Storage V2 バックエンドのオブジェクトに対して行われたクエリは、以下のパターンでコンピュートを使用します。
16
コンピュート秒の固定オーバーヘッド。4
コンピュート秒の固定オーバーヘッド。Object Storage V2 の最適化された構造により、Object Storage V1 よりもオーバーヘッドが少なくなるため、固定コンピュート秒のオーバーヘッドが減少します。18
コンピュート秒のオーバーヘッドがあります。アクションは、書き戻しリクエストで編集されるオブジェクトの数に応じてスケーリングし、最初のオブジェクトインスタンスを超えて編集されたオブジェクトインスタンスごとに追加の 1
コンピュート秒が発生します。4
コンピュート秒の固定オーバーヘッドがあります。以下の表は、クエリタイプごとの最小コンピュート秒使用をまとめたものです。
クエリタイプ | 最小コンピュート秒 |
---|---|
オントロジー V1 クエリ | 16 |
オントロジー V2 クエリ | 4 |
オブジェクトのアクション | 18 |
オブジェクトの関数 | 4 |
Foundry では、コンピュート秒はリソースに対してではなく、それらのリソースと対話しているユーザーに対して割り当てられます。
オントロジークエリに関しては、コンピュートが割り当てられる方法はいくつかあります。一般的なルールとして、コンピュートはクエリが発生したリソースにアタッチされます。ただし、(API 経由など)コンピュートを生成するために使用される保存されたリソースがない場合、コンピュートはクエリされるオブジェクトタイプにアタッチされます。単一のリクエストで複数のオブジェクトがクエリされた場合、コンピュートはオブジェクト間で均等に分割されます。
次のリソースタイプには、基礎となるオブジェクトではなく、オントロジークエリコンピュートが割り当てられます。
次のインタラクションパターンでは、設定されたリソースがないため、オントロジークエリコンピュートが直接クエリされるオブジェクトタイプにアタッチされます。