このトピックでは、ラスタオブジェクトのピラミッドを作成するために使用されるST_BuildPyramid関数について説明します。
構文
raster ST_BuildPyramid(raster source,
integer pyramidLevel default -1,
ResampleAlgorithm algorithm default 'Near',
cstring chunkTableName default '',
cstring storageOption default '{}',
cstring buildOption default '{}');
パラメーター
パラメーター | 説明 |
ソース | ラスターオブジェクトの名前です。 |
chunkTableName | ピラミッドに格納されているチャンクテーブルの名前。 このパラメーターは、ラスターオブジェクトがobject Storage Service (OSS) バケットに保存されている場合にのみ有効になります。 |
pyramidLevel | ピラミッド内のレベルの数。 値-1は、ピラミッド内で最大数のレベルが作成されることを指定します。 |
アルゴリズム | ピラミッドの作成に使用されるリサンプリングアルゴリズム。 有効な値:
|
storageOption | ストレージ関連のパラメーターを指定するために使用されるJSON文字列。 これらのパラメータは、ピラミッドのチャンク記憶情報を記述するために使用される。 このJSON文字列は、ラスターオブジェクトがOSSバケットに保存されている場合にのみ有効です。 |
buildOption | ピラミッドの建物関連のパラメーターを指定するために使用されるJSON文字列。 PolarDBはparallelパラメーターをサポートしています。 このパラメータは、並列処理の程度を指定します。 このパラメーターのデータ型はINTEGERです。 このパラメーターの値は1から64の範囲です。 parallelパラメーターを指定しない場合、GUCパラメーターganos.parallel.de greeの値がデフォルトの並列度として使用されます。 詳細については、「ganos.parallel.de gree」をご参照ください。 説明 スレッドを並列に実行してピラミッドを作成する場合、トランザクションはサポートされません。 ピラミッドを作成できない場合、またはトランザクションをロールバックする必要がある場合は、ST_deletePyramid関数を呼び出してピラミッドを削除できます。 詳細については、「ST_deletePyramid」をご参照ください。 |
次の表に、storageOptionのパラメーターを示します。
パラメーター | データ型 | 説明 |
chunkdim | String | ラスタオブジェクトのデータをチャンクするために使用されるディメンション。 このパラメーターの値は |
interleaving | String | ラスターオブジェクトのデータをインターリーブするために使用されるメソッド。
|
compression | String | ラスターオブジェクトのデータを圧縮する形式。 有効な値:
|
品質 | integer | 圧縮の質。 このパラメーターは、JPEGまたはJPEG 2000圧縮形式を使用する場合にのみ有効になります。 値の範囲: 1-99。 デフォルト値: 75。
|
説明
この機能は、GPU高速コンピューティングをサポートします。 デフォルトでは、GPUを備えたアクティブ環境では、Ganosは自動的にGPU高速コンピューティングを有効にします。
例
Update raster_table set raster_obj = ST_BuildPyramid(raster_obj) where id = 1;
Update raster_table set raster_obj = ST_BuildPyramid(raster_obj, 'chunk_table') where id = 2;
-- Use JPEG 2000 to compress the data of the raster object.
-- Make sure that all bands are within one chunk.
Update raster_table set raster_obj = ST_BuildPyramid(
raster_obj,
-1,
'Near',
'chunk_table',
'{"compression":"jp2k", "quality": 75, "chunkdim":"(256,256,4)","interleaving":"auto"}')
where id = 3;
-- Create the pyramid by using parallel operations.
Update raster_table set raster_obj = ST_BuildPyramid(
raster_obj,
-1,
'Near',
'chunk_table',
'{"compression":"jp2k", "quality": 75, "chunkdim":"(256,256,4)","interleaving":"auto"}',
'{"parallel":4}')
where id = 3;