All Products
Search
Document Center

PolarDB:ST_BuildPyramid

Last Updated:Aug 26, 2026

Membuat piramida vektor pada tabel geometri spasial untuk mempercepat visualisasi data.

Sintaksis

boolean ST_BuildPyramid(cstring table, cstring geom, cstring fid, cstring config)

Parameter

Parameter

Deskripsi

table

Nama tabel geometri spasial.

geom

Nama bidang geometri.

fid

Nama bidang ID fitur.

config

Parameter untuk membuat piramida, dalam bentuk string JSON.

config: Tabel berikut menjelaskan parameter-parameter tersebut.

Parameter

Tipe

Nilai default

Deskripsi

name

string

Sama dengan nama tabel

Nama piramida.

parallel

int

0

Jumlah tugas build paralel. Anda harus mengatur parameter max_prepared_transactions. Nilai 0 menunjukkan paralelisme maksimum.

tileSize

int

1024

Ukuran tile. Harus > 0 dan < 4096.

tileExtend

int

8

Padding tile. Harus > 0.

userExtent

array[double]

null

Ekstensi geografis kustom. Atur [] dengan nilai: minx, miny, maxx, maxy.

splitSize

int

10000

Jumlah maksimum fitur yang menentukan pemisahan node indeks. Nilai yang lebih besar menghasilkan piramida yang lebih jarang.

maxLevel

int

16

Tingkat piramida maksimum. Nilai yang valid: 0–20.

sourceSRS

int

-1

Sistem koordinat data sumber. Jika tidak diatur, SRID dari metadata akan dibaca.

destSRS

int

3857

Kode EPSG dari sistem referensi koordinat tile output. Hanya 3857 dan 4326 yang didukung.

updateExtentSRS

int

4326

Format EPSG yang digunakan untuk rentang pembaruan fungsi pembaruan piramida. Untuk detailnya, lihat deskripsi fungsi ST_UpdatePyramid.

updateBoxScale

int

10

Mempengaruhi presisi operasi pembaruan piramida. Untuk detailnya, lihat deskripsi fungsi ST_UpdatePyramid.

buildRules

array[object]

null

Aturan pembuatan. Setiap objek berisi nilai level dan value.

└level

array[int]

null

Tingkat penerapan aturan.

└value

object

null

Nilai aturan pembuatan.

└filter

string

""

Ekspresi filter menggunakan sintaksis kueri PostgreSQL.

└attrFields

array[string]

null

Nama bidang atribut dalam output MVT.

└merge

array[string]

null

Kondisi filter untuk pengelompokan dan penggabungan.

config: Contoh:

{
   "name" : "hello",           
   "parallel": 4,         
   "tileSize": 512,           
   "tileExtend": 8,
   "userExtent": [-180,-90,180,90],
   "splitSize": 5000,
   "maxLevel": 16,  
   "destSRS": 3857,
   "buildRules": [             
     {
       "level": [0,1,2],  
       "value": {
         "filter": "code!=0",
         "attrFields": ["name","color"],    
         "merge":["code=1"]
       }
     }
   ]
}

Contoh

-- Buat piramida vektor untuk tabel geometri spasial roads.
select ST_BuildPyramid('roads', 'geom', 'id', '');
st_buildpyramid
----------
t