分析接続性: SQL & BIアーキテクチャ

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

アーキテクチャ

このページでは、従来の Spark および Direct Read SQL エンジンのアーキテクチャについて説明します。Foundry は、パフォーマンス、柔軟性、互換性が強化された次世代 SQL エンジンである Furnace への移行を進めています。この移行は自動的に行われ、既存のワークフローを変更する必要はありません。

このセクションで説明する外部 SQL 接続と BI ツール統合は、Foundry SQL Server というサービスによって実現されています。このサービスは、Foundry データセットに対する読み取り専用クエリ向けに、軽量な SQL セッションおよびステートメント管理を提供します。Palantir は、オープン標準を使用したクライアントとこのサービス間のインタラクションを容易にする JDBC および ODBC ドライバーに加え、これらのドライバーを活用する特定のサードパーティプラットフォーム向けのプラグイン実装を提供しています。

サポートされている SQL 方言

サポートされている SQL 方言は ANSI、ODBC、SparkSQL で、読み取り専用の機能に限定されます。

実行エンジン

Foundry SQL Server は、クエリの複雑さに基づいて実行エンジンを自動的に選択します。実行エンジンごとに、全体的なパフォーマンス、結果サイズの制限、サポートされるクエリの複雑さについてトレードオフがあります。

Spark エンジン

クエリのデフォルトの実行エンジンは、Spark SQL の機能を活用します。このエンジンは、集計、結合、並べ替え、フィルターなど、SQL による計算機能をすべてサポートします。この実行エンジンを必要とするクエリには、データ規模に関する制限が適用されます。これは、結果をクライアントアプリケーションに渡す前に、Spark ドライバーのメモリーに収集する必要があるためです。これらの制限は、計算結果の行数とバイト数によって決まります。

Direct Read エンジン

可能な場合、Foundry SQL Server は Direct Read エンジンを使用してクエリを実行します。クエリに SQL による計算が不要な場合、Foundry SQL Server は Spark SQL を経由せず、データセットの元ファイルからレコードを直接ストリーミングします。Direct Read クエリには、SQL による本格的な計算を必要とするクエリと同じ規模の制限は適用されません。

クエリが Direct Read の対象となるのは、次の条件を満たす場合です。

  1. データセットに対して実行されること。ビューは現在サポートされていません。
  2. データセットのファイルがサポート対象の形式であること。Direct Read が現在サポートしている形式は、Parquet、CSV、Avro、Soho です。
  3. クエリが SQL による計算を必要としないこと。集計、フィルター、結合、並べ替えの述語を含むクエリは、Direct Read の対象外です。
  4. クエリが Direct Read の対象外のデータ型を持つ列からデータを選択しないこと。array、map、struct は Direct Read の対象外です。

Direct Read クエリでは、大文字と小文字が区別されます。

留意事項

  • この機能は、PowerBI、Tableau、その他の下流のアプリケーションなど、Foundry プラットフォーム外部のクライアントをサポートすることを目的としています。Foundry プラットフォーム内で SQL を使用してデータを加工する場合は、SQL トランスフォームを参照してください。
  • Foundry SQL Server のアーキテクチャは、中程度の規模のデータに対するアドホックな対話型クエリ向けに最適化されています。