リファレンスガイド> データソースの機能サポート> プッシュ、非プッシュ関数
 
プッシュ、非プッシュ関数
多数のSQL関数は、TDVサーバー内で実行することも、実行のためにデータソースにプッシュダウンすることもできます。
一般に、実行を高速化し、データ転送を減らすために、関数の実行をデータソースにプッシュすることが望ましいです。ただし、クエリフェデレーションなどのさまざまな理由から、関数の実行をデータソースにプッシュしない方が望ましい場合があります。クエリエンジンの実行プラン、または明示的なSQLクエリオプション(TDVクエリエンジンオプションで説明)は、データソースではなくTDVサーバーで強制的に実行される場合があります。
SQL関数のTDVサポートを参照して、TDVサーバーで実行できる(つまり、プッシュされない)関数を確認してください。 TDVはさまざまな機能をサポートしていますが、すべてのデータソースですべての機能を使用できるわけではありません。
DENSE_RANKやFIRST_VALUEなどのいくつかの関数は、データソースでのみ実行できます。これらは「プッシュのみ」の機能と呼ばれます。 関数サポートの概要には、プッシュ専用の関数を示す列があります。
データソースは多くの機能を互いに異なる方法で、またTDVとは異なる方法で実装するため、実行結果は同じではない可能性があります。 データソースを組み合わせる際の関数サポートの問題のセクションでは、これらの違いの多くについて説明しています。