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

PolarDB:ST_ImportFrom

最終更新日:Sep 26, 2024

このトピックでは、ST_ImportFrom関数について説明します。 この関数は、Object Storage Service (OSS) オブジェクト、Multi-Cloud object Storage (MinIO) オブジェクト、またはHadoop Distributed File System (HDFS) ファイルをGanosのラスターオブジェクトにインポートするために使用されます。

構文

raster ST_ImportFrom(cstring chunkTableName, 
                     cstring url, 
                     cstring storageOption default '{}',
                     cstring importOption default '{}');

パラメーター

パラメーター

説明

chunkTableName

OSSオブジェクトの名前。 OSSオブジェクトはチャンクテーブルです。 名前は、PolarDBのテーブル命名規則に準拠している必要があります。

url

OSSオブジェクトのURL。 詳細については、 ST_CreateRastのurlパラメーターの説明をご参照ください。

storageOption

ラスターオブジェクトに関するストレージ情報を指定するために使用されるJSON文字列。

importOption

OSSオブジェクトインポートのパラメーターを設定するために使用されるJSON文字列。

次の表に、storageOptionのパラメーターを示します。

パラメーター

データ型

デフォルト値

説明

チャンキング

Boolean

true

データをチャンクとして保存するかどうかを指定します。

chunkdim

String

デフォルト値は、生データの値と同じです。

データのチャンクに使用されるディメンション。 形式: w, h, b.

説明

このパラメーターは、chunkingパラメーターをtrueに設定した場合にのみ有効になります。

compression

String

lz4

OSSオブジェクトのデータを圧縮するために使用される形式。 有効な値:

  • none

  • jpeg

  • zlib

  • png

  • lzo

  • lz4

  • snappy

  • zstd

  • jp2k

デフォルト: lz4

品質

integer

75

圧縮後のラスターオブジェクトの画質。 このパラメーターは、JPEGおよびJPEG 2000圧縮形式に対してのみ有効です。

interleaving

文字列

デフォルト値は、生データの値と同じです。

OSSオブジェクトのデータをインターリーブするために使用されるメソッド。 有効な値:

  • bip: ピクセルによってインターリーブされるバンド

  • bil: ラインによってインターリーブされるバンド

  • bsq: バンドシーケンシャル

blockendian

文字列

「NDR」

各データチャンクのバイトを格納するために使用されるシーケンス。 有効な値:

  • NDR: 少しエンディアン

  • XDR: ビッグエンディアン

セルタイプ

String

デフォルト値は、生データの値と同じです。

ラスターオブジェクトのピクセルタイプ。 有効な値:

  • 1bb: 1ビット

  • 2bui: 2ビット符号なし整数

  • 4bui : 4ビット符号なし整数

  • 8bsi : 8bit符号付き整数

  • 8bui : 8bit符号なし整数

  • 16bsi : 16bit符号付き整数

  • 16bui : 16ビット符号なし整数

  • 32bsi : 32ビット符号付き整数

  • 32bui : 32ビット符号なし整数

  • 32bf : 32bitフロート

  • 64bsi : 64bit符号付き整数

  • 64bui : 64bit符号なし整数

  • 64bf : 64bitフロート

次の表に、importOptionのパラメーターを示します。

パラメーター

データ型

デフォルト値

説明

mapping_oss_ファイル

Boolean

false

OSSオブジェクトをメモリオブジェクトにマップするかどうかを指定します。

説明

ラスターデータを読み取るとき、一部のドライバーはOSSに保存されているデータを最適化しません。 結果として、少量のデータを必要とする多数の要求が生成される。 これは性能を低下させる。 このパラメーターは、パフォーマンスを向上させるためにOSSオブジェクトをメモリオブジェクトにマッピングできます。 グローバルユーザー設定 (GUC) パラメーター ganos.raster.memory_oss_file_max_sizeを使用して、OSSオブジェクトのサイズを指定できます。

パラレル

integer

GUCパラメーター ganos.parallel.de greeの値

並列処理の程度。 有効な値: 1 ~ 64。

説明

この関数は、ラスターオブジェクトを作成し、作成したラスターオブジェクトにOSSオブジェクトをインポートするために使用されます。

ST_RasterDrivers関数を使用して、ST_ImportFrom関数でサポートされているデータ型を照会できます。 ST_RasterDrivers機能の詳細については、「 ST_RasterDrivers」をご参照ください。

-- Specify only the name and path of the OSS object that you want to import.
Select ST_ImportFrom('chunk_table','OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.tif');

-- Specify a NetCDF image that contains subsets.
Select ST_ImportFrom('chunk_table','OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.nc:hcc');

-- Specify the size per chunk and the compression format in the process of importing the OSS object.
Select ST_ImportFrom('chunk_table','OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.tif', '{"chunkdim":"(128,128,3)", "compression":"none"}');

-- Specify the degree of parallelism in the process of importing the OSS object.
Select ST_ImportFrom('chunk_table','OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.nc:hcc', '{}', '{"parallel": 4}');