GanosBaseは複数のCPUコアを使用して、クエリや計算のパフォーマンスを向上させることができます。 このメカニズムは並列操作と呼ばれます。 GanosBaseは、SQL文の並列実行と、ユーザー定義関数 (UDF) に対する並列操作をサポートしています。
SQL文の並列実行
GanosBaseは複数のCPUコアを使用して並列クエリプランを生成できます。 次に、GanosBaseはクエリプランを異なるCPUコアに配布します。 これにより、クエリのパフォーマンスが向上します。
マルチCPUコア環境では、データベースオブジェクトに対するクエリは自動的にサブセットに分割され、異なるCPUコアで独立して実行されます。
UDFの並列操作
ほとんどの場合、UDFの一部の操作には時間がかかります。 GanosBaseは、単一のUDFの操作を並列に実行できます。 操作プロセスでは、GanosBaseは複数のCPUコアを使用して、UDFのサブセットの計算を並列に実行します。 これにより、UDFの全体的な計算に必要な時間が短縮される。 UDFの各サブセットは独立して計算される。 UDFのすべてのサブセットが計算されると、UDFの全体的な計算も完了する。
DOP
並列操作をサポートする関数の並列度 (DOP) を指定しない場合、またはDOPを0に設定しない場合、システムは自動的にganos.parallel.de greeパラメーターの値をDOPとして使用します。 ganos.parallel.de greeパラメーターは、Grand Unified Configuration (GUC) パラメーターです。 ganos.parallel.de greeパラメーターのデフォルト値は1です。 デフォルト値は、並列実行または操作がサポートされていないことを示します。
並列操作をサポートする各関数には、DOPを指定するパラメータが含まれます。 DOPを正の整数に設定すると、ラスタオブジェクトの計算を独立して実行できる並列タスクに分割できます。
トランザクションの整合性
ganos.parallel.transaction GUCパラメーターを使用して、トランザクションの一貫性のレベルを指定できます。 有効な値:
transaction_commit: プライマリトランザクションに基づいて、並列トランザクションをコミットまたはロールバックできることを指定します。 デフォルト値です。
fast_commit: 並列トランザクションをロールバックできないことを指定します。
使用上の注意
並列操作の場合、テーブルは作成できません。 並列操作を実行する前に、必要なテーブルを作成することをお勧めします。