すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB RDS:ST_BuildPyramid

最終更新日:Mar 28, 2026

空間ジオメトリデータテーブルに対してベクターピラミッドを作成し、空間データのレンダリングを高速化します。

構文

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

パラメーター

パラメーター説明
table空間ジオメトリデータテーブルの名前です。
geomジオメトリ列の名前です。
fid要素 ID フィールドの名前です。
configピラミッドの構成(JSON 文字列形式で指定)です。

config のフィールド

フィールドデフォルト値説明
name文字列テーブル名と同一ピラミッドの名前です。
parallel整数0ピラミッド構築時に並列実行されるタスクの最大数です。この設定を利用するには、max_prepared_transactions パラメーターが設定されている必要があります。制限を解除する場合は 0 を指定します。
tileSize整数1024ピラミッドのタイルサイズです。有効な値:0 より大きく、4096 より小さい整数。
tileExtend整数8ピラミッドのタイル拡張サイズです。有効な値:0 より大きい整数。
userExtent配列[double]nullピラミッドの地理的範囲を定義する JSON 配列(4 つの値:minxminymaxxmaxy)です。[] を指定すると null 値として扱われます。
splitSize整数10000インデックスノード分割ごとの最大要素数です。値を大きくすると、より疎なピラミッドが生成されます。
maxLevel整数16ピラミッドの最大レベル数です。有効な値:0 ~ 20。
sourceSRS整数-1ソースデータの空間参照系(SRS)です。デフォルトでは、関数がテーブルのメタデータから空間参照識別子(SRID)を読み取ります。
destSRS整数3857タイル座標系の EPSG コードです。有効な値: 3857(EPSG 3857)および 4326(EPSG 4326)。
buildRules配列[オブジェクト]nullピラミッド構築に使用するルールです。複数のルールを指定できます。

buildRules のフィールド

フィールド説明
level配列[整数]このルールを適用するピラミッドのレベルです。
valueオブジェクトルールの構成です。以下のサブフィールドを含みます:filterattrFields、および merge
value.filter文字列データに適用する PostgreSQL フィルター式です。
value.attrFields配列[文字列]Mapbox Vector Tile(MVT)フォーマットを使用する際に含める属性フィールドです。
value.merge配列[文字列]データレコードをグループ化するためのフィルター条件です。

config の例

{
   "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"]
       }
     }
   ]
}

使用例

roads という名前の空間ジオメトリデータテーブルに対してピラミッドを作成します:

SELECT ST_BuildPyramid('roads', 'geom', 'id', '');

期待される出力:

st_buildpyramid
---------------
t