Cmdlets for Presto

Build 22.0.8479

クエリ処理

クエリ処理

CData は、クライアントサイドのSQL エンジンを本製品 ライブラリに組み込んでいます。これにより、フィルタ、集約、関数など、SQL-92 が提供する全機能をサポートすることができます。

SQL-92をサポートしないソースに対しては、本製品 はPresto にSQLステートメントの処理を可能な限りオフロードし、残りのクエリをクライアントサイドのインメモリで処理します。その結果、最適なパフォーマンスを得ることができます。

限られたクエリ能力のデータソースに対しては、本製品 はSQL クエリの変換をおこない、本製品 がより単純になるよう処理します。 目標はデータソースのクエリ能力に基づいて賢く判断し可能な限り計算を抑えることです。Presto のクエリ評価コンポーネントはSQL クエリを検証し、本製品 がネイティブに実行できないクエリ部分を示す情報を返します。

Presto のクエリスライサーコンポーネントはより具体的なケースにおいて1つのクエリを複数の独立したクエリに分割するために使用されます。クライアントサイドのクエリエンジンはクエリの簡素化、複数のクエリへの分割、結果セットのサイズを最小化しながらクライアントサイドで集約のプッシュダウンや計算をするなどの決定を行います。

クエリを部分的にでもクライアントサイドで評価するということには大きなトレードオフがあります。このモデルでは効果的に実行することが不可能なクエリは常に存在し、この方法で計算すると特にコストが高くなるものもあります。CData は可能な限り効率的なクエリを生成し、最も柔軟なクエリ機能を提供するために常にデータソースに対して実行可能な限りのクエリをプッシュダウンしています。

追加情報

CData がどのようにクエリ処理を行うかについては、CData Architecture: Query Execution を参照してください。

Copyright (c) 2023 CData Software, Inc. - All rights reserved.
Build 22.0.8479