注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
このページでは、従来の Spark および Direct Read SQL エンジンのアーキテクチャについて説明します。Foundry は、パフォーマンス、柔軟性、互換性が強化された次世代 SQL エンジンである Furnace への移行を進めています。この移行は自動的に行われ、既存のワークフローを変更する必要はありません。
このセクションで説明する外部 SQL 接続と BI ツール統合は、Foundry SQL Server というサービスによって実現されています。このサービスは、Foundry データセットに対する読み取り専用クエリ向けに、軽量な SQL セッションおよびステートメント管理を提供します。Palantir は、オープン標準を使用したクライアントとこのサービス間のインタラクションを容易にする JDBC および ODBC ドライバーに加え、これらのドライバーを活用する特定のサードパーティプラットフォーム向けのプラグイン実装を提供しています。
サポートされている SQL 方言は ANSI、ODBC、SparkSQL で、読み取り専用の機能に限定されます。
Foundry SQL Server は、クエリの複雑さに基づいて実行エンジンを自動的に選択します。実行エンジンごとに、全体的なパフォーマンス、結果サイズの制限、サポートされるクエリの複雑さについてトレードオフがあります。
クエリのデフォルトの実行エンジンは、Spark SQL の機能を活用します。このエンジンは、集計、結合、並べ替え、フィルターなど、SQL による計算機能をすべてサポートします。この実行エンジンを必要とするクエリには、データ規模に関する制限が適用されます。これは、結果をクライアントアプリケーションに渡す前に、Spark ドライバーのメモリーに収集する必要があるためです。これらの制限は、計算結果の行数とバイト数によって決まります。
可能な場合、Foundry SQL Server は Direct Read エンジンを使用してクエリを実行します。クエリに SQL による計算が不要な場合、Foundry SQL Server は Spark SQL を経由せず、データセットの元ファイルからレコードを直接ストリーミングします。Direct Read クエリには、SQL による本格的な計算を必要とするクエリと同じ規模の制限は適用されません。
クエリが Direct Read の対象となるのは、次の条件を満たす場合です。
array、map、struct は Direct Read の対象外です。Direct Read クエリでは、大文字と小文字が区別されます。