Topik ini menjelaskan fungsi ST_BuildPyramid, yang digunakan untuk membuat piramida untuk objek raster.
Sintaksis
raster ST_BuildPyramid(raster source,
integer pyramidLevel default -1,
ResampleAlgorithm algorithm default 'Near',
cstring chunkTableName default '',
cstring storageOption default '{}',
cstring buildOption default '{}');Parameter
| Parameter | Deskripsi |
| source | Nama dari objek raster. |
| chunkTableName | Nama tabel chunk yang disimpan dalam piramida. Parameter ini hanya berlaku ketika objek raster disimpan dalam Bucket OSS (Object Storage Service). |
| pyramidLevel | Jumlah level dalam piramida. Nilai -1 menentukan bahwa jumlah level terbesar dibuat dalam piramida. |
| algorithm | Algoritma resampling yang digunakan untuk membuat piramida. Nilai valid:
|
| storageOption | String JSON yang digunakan untuk menentukan parameter terkait penyimpanan. Parameter ini digunakan untuk menggambarkan informasi penyimpanan chunk dari piramida. String JSON ini hanya berlaku ketika objek raster disimpan dalam Bucket OSS. |
| buildOption | String JSON yang digunakan untuk menentukan parameter terkait pembuatan piramida. PolarDB mendukung parameter parallel. Parameter ini menentukan tingkat paralelisme. Tipe data dari parameter ini adalah INTEGER. Nilai parameter ini berkisar antara 1 hingga 64. Jika Anda tidak menentukan parameter parallel, nilai parameter GUC ganos.parallel.degree digunakan sebagai tingkat paralelisme default. Untuk informasi lebih lanjut, lihat ganos.parallel.degree. Catatan Jika Anda menjalankan thread secara paralel untuk membuat piramida, transaksi tidak didukung. Jika piramida tidak dapat dibuat atau Anda perlu membatalkan transaksi, Anda dapat memanggil fungsi ST_deletePyramid untuk menghapus piramida. Untuk informasi lebih lanjut, lihat ST_deletePyramid. |
Tabel berikut menjelaskan parameter dalam storageOption.
| Parameter | Tipe | Deskripsi |
| chunkdim | string | Dimensi yang digunakan untuk meng-chunk data objek raster. Nilai parameter ini mengikuti format (w, h, b). Secara default, ukuran per chunk diperoleh dari data gambar asli. |
| interleaving | string | Metode yang digunakan untuk menyusun ulang data objek raster.
|
| compression | string | Format ke mana Anda ingin menekan data objek raster. Nilai valid:
|
| quality | integer | Kualitas kompresi. Parameter ini hanya berlaku ketika Anda menggunakan format kompresi JPEG atau JPEG 2000. Rentang nilai: 1-99. Nilai default: 75. |
Deskripsi
Fungsi ini mendukung komputasi yang dipercepat GPU. Secara default, dalam lingkungan aktif dengan GPU, Ganos secara otomatis mengaktifkan komputasi yang dipercepat GPU.
Contoh
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;
-- Gunakan JPEG 2000 untuk menekan data objek raster.
-- Pastikan semua band berada dalam satu 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;
-- Buat piramida dengan menggunakan operasi paralel.
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;