SAS FedSQLは、ANSI SQL:1999コア規格のSAS独自の実装です。これにより、新しいデータ型、他のANSI 1999コア準拠機能、独自の拡張がサポートされます。FedSQLが提供するデータのアクセステクノロジにより、スケーラブルで、スレッド対応、ハイパフォーマンスな方法で、複数データソースにあるリレーショナルデータをアクセス、管理、共有できます。可能な場合、FedSQLクエリは、大規模な操作の問題を解決するためにマルチスレッドアルゴリズムを使用して最適化されます。FedSQLは、アプリケーションには、すべてのデータソースにおいて共通のSQL構文を提供します。つまり、FedSQLはベンダに依存しないSQLダイアレクトであり、データソースに固有のSQLダイアレクトでクエリをサブミットせずに各種データソースのデータにアクセスします。さらに、1つのFedSQLクエリで複数データソースのデータをターゲットとして、1つの結果テーブルを返すこともできます。FEDSQLプロシジャを使用すると、Base
SASセッションからFedSQL言語ステートメントをサブミットできます。
初回リリースで、FedSQLでは、SASデータセット、SAS Scalable Performance Data Engine (SPD Engine)データセット、およびAster、DB2
for UNIX/PC、Greenplum、MySQL、Netezza、ODBCデータベース(Microsoft SQL Serverなど)、Oracle、SAP
(読み取り専用)、Sybase IQ、Teradataなどのデータベースへのアクセスが提供されました。
SAS 9.4M1では、メモリデータストア(MDS)、SAP HANA、SASHDATデータソースのサポートが追加されました。
SAS 9.4M2では、次のFedSQL拡張が行われました。
-
Hive、HDMDおよびPostgreSQLデータソースのサポート。各データソースに対してすべてのFedSQLステートメントがサポートされているわけではありません。ステートメントのサポートを確認するにはFedSQLステートメントのドキュメントを参照してください。
-
ODBCのCAST関数で、あるデータ型から別のデータ型に値を変換できます。
-
インデックスの作成時に、DBMS固有の句を追加できます。
-
SAS 9.4M3では、次のFedSQL拡張が行われました。
-
HadoopのHAWQおよびImpalaの配布のサポート。Impalaのサポートにはバルクロードが含まれます。
-
DBCREATE_TABLE_OPTS=テーブルオプションを使用すると、DBMS固有の構文を指定してCREATE TABLEステートメントに追加できます。
-
ENCODING=テーブルオプションを使用すると、SASデータセットに対してエンコーディングを設定できます。
-
HDMDでのデータ定義および読み取りにDECIMAL/NUMERIC(p,s)データ型を使用できます。
-
Hiveでのデータ定義および読み取りにDECIMAL/NUMERIC(p,s)データ型およびVARBINARYデータ型を使用できます。
-
HiveのARRAY、MAP、STRUCT、UNION複合型はHiveから読み取ります。
SAS 9.4M4では、次のFedSQL拡張が行われました。
-
SAS Scalable Performance Data (SPD) Serverテーブルの読み書きに対するサポート
-
-
Hiveテーブルの作成および読み取り時の3レベル名に対するサポート
-