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

PolarDB:ST_CreateRast

最終更新日:Mar 29, 2026

OSS バケット、MinIO バケット、または HDFS ファイルに格納されたファイルからラスターオブジェクトを作成します。また、1 次元配列からもラスターオブジェクトを作成します。

構文

raster ST_CreateRast(cstring url);
raster ST_CreateRast(cstring url, cstring storageOption);
raster ST_CreateRast(anyarray data, integer width, cstring storageOption, geometry extent);

パラメーター

パラメーター説明
urlソースファイルのパスです。サポートされているパス形式については、「オブジェクトストレージパス」をご参照ください。
storageOptionラスターピラミッドのチャンクストレージオプションを指定する JSON 文字列です。
dataラスターを表す 1 次元配列です。配列の長さは、列数 × 行数と等しくする必要があります。
widthラスターの列数です。
extent(任意)ジオメトリで表現される 3 次元空間です。

storageOption のフィールド

フィールドフォーマットデフォルト値説明
chunkdim文字列(w,h,b)ソースファイル内のチャンクサイズと同じラスターデータの保存に使用される各チャンクのサイズです。
interleaving文字列bsqインタリーブ方式です。有効な値: bip(ピクセル単位バンドインタリーブ)、bil(ライン単位バンドインタリーブ)、bsq(バンド逐次)、auto(自動判定)。
chunk_table文字列なしチャンクテーブルの名前です。1 次元配列からラスターオブジェクトを作成する場合に必須です。

注意事項

chunkdim および interleaving のデフォルト値を上書きする場合は、以下のケースのみ対応してください。

  • RGB 多バンド表示interleavingbsq であるものの、ラスターが多バンド RGB 組み合わせでレンダリングされる場合、interleavingbip に設定してください。

  • チャンクサイズの不一致: ソースイメージのチャンクサイズが 1 行 × n 列であるものの、256 × 256 のチャンクが必要な場合、chunkdim を要求されるチャンクサイズに設定してください。

サポートされているデータ形式のリストを取得するには、ST_RasterDrivers 関数を呼び出します。

すべての例では、異なるストレージバックエンドからラスターオブジェクトを作成するために ST_CreateRast を使用しています。

-- AccessKey 認証情報と内部エンドポイントを使用して、OSS ファイルからラスターオブジェクトを作成します。
SELECT ST_CreateRast('OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.tif');

-- URL 内のホストおよびポートを使用して、MinIO バケットからラスターオブジェクトを作成します。
SELECT ST_CreateRast('OSS://<ak>:<ak_secret>@10.0.XX.XX:443/mybucket/data/image.tif');

-- URL 内のユーザー名を使用して、HDFS ファイルからラスターオブジェクトを作成します。
SELECT ST_CreateRast('HDFS://<user_name>@10.0.XX.XX:8020/path/image.tif');

-- カスタムチャンクサイズおよびインタリーブ方式を指定してラスターオブジェクトを作成します。
SELECT ST_CreateRast('OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.tif', '{"chunkdim":"(256,256,3)","interleaving":"auto"}');

-- NetCDF ファイルからラスターオブジェクトを作成し、hcc サブセットを選択します。
SELECT ST_CreateRast('OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.nc:hcc');

-- 1 次元配列およびジオメトリの範囲を指定してラスターオブジェクトを作成します。
SELECT ST_FixedRid(ST_CreateRast(ARRAY[10, 11, 8, 12], 2, '{"chunktable":"rbt"}', ST_GeomFromText('POLYGON((0 0, 10 0, 10 10, 0 10, 0 0))', 4326)));

-- array_agg を使用してテーブルから集計した値でラスターオブジェクトを作成します。
SELECT ST_FixedRid(ST_CreateRast((SELECT array_agg(value) FROM point_table), 300, '{"chunktable":"rbt"}'));