全部產品
Search
文件中心

PolarDB:ST_ImportFrom

更新時間:Jul 06, 2024

從一個OSS、MinIO或HDFS檔案匯入到資料庫。

文法

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

參數

參數名稱描述
chunkTableName塊表的名稱,名稱必須符合資料庫表名的規範。
u​rl外部檔案路徑。詳情請參見ST_CreateRast中構建路徑的描述。
storageOptionJSON字串,用於指定raster對象的儲存資訊。
importOptionJSON字串,用於指定匯入選項。

storageOption參數說明如下:

參數名稱類型預設值說明
chunkingbooleantrue 是否使用分Block Storage。
chunkdimstring與未經處理資料一致分塊的維度資訊。格式為:(w, h, b)。
說明 chunking=true時,該參數才生效。
compressionstringlz4壓縮演算法類型。取值如下:
  • none
  • jpeg
  • zlib
  • png
  • lzo
  • lz4
  • snappy
  • zstd
  • jp2k

Default:lz4

qualityinteger75壓縮品質。只針對jpeg和jp2k壓縮演算法生效。
interleavingstring與未經處理資料一致交錯方式。取值如下:
  • bip : Band interleaved by pixel
  • bil : Band interleaved by line
  • bsq : Band Sequential
blockendianstring'NDR'Block Storage位元組序。取值如下:
  • NDR:little endian
  • XDR:big endian
celltypestring與未經處理資料一致像素類型。取值如下:
  • 1bb :1 bit
  • 2bui:2bit unsigned integer
  • 4bui : 4bit unsigned integer
  • 8bsi : 8bit signed integer
  • 8bui : 8bit unsigned integer
  • 16bsi : 16bit signed integer
  • 16bui : 16bit unsigned integer
  • 32bsi : 32bit signed integer
  • 32bui : 32bit unsigned integer
  • 32bf : 32bit float
  • 64bsi : 64bit signed integer
  • 64bui : 64bit unsigned integer
  • 64bf : 64bit float
importOption參數說明如下。
參數名稱類型預設值說明
mapping_oss_filebooleanfalse是否將OSS上檔案對應為記憶體檔案。
說明 柵格資料讀取時部分驅動未對OSS儲存的資料進行最佳化,會產生大量小資料量請求導致效能較低。此參數可以將OSS完整映射為記憶體對象從而提升效能。檔案總大小由GUC參數ganos.raster.memory_oss_file_max_size設定。
parallelinteger使用GUC參數ganos.parallel.degree的值。 設定作業並行度。取值範圍為1~64。

描述

函數將建立一個raster對象,並將外部OSS檔案匯入到該對象中。

支援的資料類型請通過ST_RasterDrivers函數擷取。

樣本

-- 僅指定外表名稱和路徑
Select ST_ImportFrom('chunk_table','OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.tif');

-- 指定具有Subset的NetCDF對應的影像
Select ST_ImportFrom('chunk_table','OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.nc:hcc');

-- 匯入時指定分塊大小與壓縮類型
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"}');

-- 匯入時指定並行度
Select ST_ImportFrom('chunk_table','OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.nc:hcc', '{}', '{"parallel": 4}');