Todos os produtos
Search
Central de documentação

ApsaraDB RDS:ST_ImportFrom

Última atualização: Jun 26, 2026

Cria um objeto raster no Ganos e importa dados de um objeto do Object Storage Service (OSS), de um objeto do Multi-Cloud Object Storage (MinIO) ou de um arquivo do Hadoop Distributed File System (HDFS) para ele.

Para verificar quais formatos de dados são suportados, chame ST_RasterDrivers.

Sintaxe

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

Parâmetros

ParâmetroDescrição
chunkTableNameO nome da tabela de chunks. Deve estar em conformidade com as convenções de nomenclatura de tabelas do Ganos.
urlA URL do objeto OSS, do objeto MinIO ou do arquivo HDFS. Para o formato de URL de cada tipo de armazenamento, consulte Caminhos de armazenamento de objetos.
storageOptionUma string JSON que controla como o objeto raster é armazenado. O padrão é {}.
importOptionUma string JSON que controla o processo de importação. O padrão é {}.

Campos de storageOption

CampoTipoPadrãoDescrição
chunkingBooleantrueEspecifica se os dados raster serão armazenados como chunks.
chunkdimstringIgual à origemAs dimensões dos chunks no formato (w, h, b). Entra em vigor somente quando chunking é true.
compressionstringlz4O formato de compressão. Valores válidos: none, jpeg, zlib, png, lzo, lz4, snappy, zstd, jp2k.
qualityinteger75A qualidade de imagem do objeto raster após a compressão. Entra em vigor somente quando compression é jpeg ou jp2k.
interleavingstringIgual à origemO método de intercalação de bandas. Valores válidos: bip (Band Interleaved by Pixel), bil (Band Interleaved by Line), bsq (Band Sequential).
blockendianstringNDRA ordem de bytes para chunks de dados. Valores válidos: NDR (little endian), XDR (big endian).
celltypestringIgual à origemO tipo de pixel do objeto raster. Valores válidos: 1bb, 2bui, 4bui, 8bsi, 8bui, 16bsi, 16bui, 32bsi, 32bui, 32bf, 64bsi, 64bui, 64bf.

Campos de importOption

CampoTipoPadrãoDescrição
mapping_oss_fileBooleanfalseEspecifica se o objeto OSS será mapeado para um arquivo em memória no Ganos. Ative esta opção quando o driver gerar muitas requisições de leitura pequenas contra o OSS, o que degrada o desempenho. O tamanho máximo do arquivo para mapeamento em memória é controlado pelo parâmetro ganos.raster.memory_oss_file_max_size Grand Unified Configuration (GUC).
parallelintegerIgual ao parâmetro GUC ganos.parallel.degreeO grau de paralelismo durante a importação. Valores válidos: 1–64.
compute_statsBooleanfalseDefine se as estatísticas de banda serão calculadas automaticamente durante a importação.
approxBooleanfalseEspecifica se a amostragem será utilizada ao calcular as estatísticas de banda. Se true, os resultados podem ser menos precisos.
factorinteger4O fator de amostragem. Cada unidade de amostragem cobre n pixels. Entra em vigor somente quando approx é true.
exclusive_nodataBooleantrueIndica se os valores nodata serão excluídos.

Exemplos

Todos os exemplos usam a mesma assinatura de função — apenas o esquema de URL e os valores de opção variam conforme o tipo de armazenamento e o caso de uso.

Importar do OSS

-- Basic import: AccessKey ID, AccessKey secret, and endpoint embedded in the URL
SELECT ST_ImportFrom(
    'chunk_table',
    'OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.tif'
);

-- Import into a specific schema
SELECT ST_ImportFrom(
    'schema.chunk_table',
    'OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.tif'
);

Importar do MinIO

-- MinIO URL includes host and port
SELECT ST_ImportFrom(
    'chunk_table',
    'MIO://<ak>:<ak_secret>@10.0.0.1:443/mybucket/data/image.tif'
);

Importar do HDFS

-- HDFS URL includes the username and NameNode address
SELECT ST_ImportFrom(
    'chunk_table',
    'HDFS://<user_name>@10.0.0.1:8020/path/image.tif'
);

Importar arquivos com subconjuntos

Para formatos com múltiplas variáveis, como NetCDF e HDF5, adicione o identificador do subconjunto à URL.

-- NetCDF: append subset name after a colon
SELECT ST_ImportFrom(
    'chunk_table',
    'OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.nc:hcc'
);

-- HDF5: append dataset path after ://
SELECT ST_ImportFrom(
    'chunk_table',
    'OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.hdf5://ds/hcc'
);

Controlar o layout de armazenamento e o paralelismo

-- Set chunk dimensions to 128x128 pixels with 3 bands, disable compression
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"}'  -- storageOption
);

-- Set the degree of parallelism to 4 to speed up large imports
SELECT ST_ImportFrom(
    'chunk_table',
    'OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.nc:hcc',
    '{}',
    '{"parallel": 4}'  -- importOption
);

-- Map the OSS object to an in-memory file to reduce small read overhead,
-- then import in parallel with 4 workers
SELECT ST_ImportFrom(
    'chunk_table',
    'OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.nc:hcc',
    '{}',
    '{"parallel": 4, "mapping_oss_file": true}'  -- importOption
);

Calcular estatísticas de banda durante a importação

-- Automatically calculate band statistics during import
SELECT ST_ImportFrom(
    'chunk_table',
    'OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.tif',
    '',
    '{"compute_stats": true}'  -- importOption
);