Topik ini menjelaskan fungsi ST_ImportFrom, yang digunakan untuk mengimpor objek Object Storage Service (OSS), objek Multi-Cloud Object Storage (MinIO), atau file Hadoop Distributed File System (HDFS) ke dalam objek raster di Ganos.
Sintaksis
raster ST_ImportFrom(cstring chunkTableName,
cstring url,
cstring storageOption default '{}',
cstring importOption default '{}');Parameter
Parameter | Deskripsi |
chunkTableName | Nama dari objek OSS. Objek OSS adalah tabel chunk. Nama harus sesuai dengan konvensi penamaan tabel PolarDB. |
url | URL dari objek OSS. Untuk informasi lebih lanjut, lihat deskripsi parameter url di ST_CreateRast. |
storageOption | String JSON yang digunakan untuk menentukan informasi penyimpanan tentang objek raster. |
importOption | String JSON yang digunakan untuk mengonfigurasi parameter untuk impor objek OSS. |
Tabel berikut menjelaskan parameter dalam storageOption.
Parameter | Tipe | Nilai default | Deskripsi |
chunking | boolean | true | Menentukan apakah akan menyimpan data sebagai chunk. |
chunkdim | string | Nilai defaultnya sama dengan nilai untuk data mentah. | Dimensi yang digunakan untuk membagi data. Format: w, h, b. Catatan Parameter ini hanya berlaku jika Anda menetapkan parameter chunking ke true. |
compression | string | lz4 | Format yang digunakan untuk mengompres data objek OSS. Nilai valid:
Default: lz4 |
quality | integer | 75 | Kualitas gambar objek raster setelah kompresi. Parameter ini hanya valid untuk format kompresi JPEG dan JPEG 2000. |
interleaving | string | Nilai defaultnya sama dengan nilai untuk data mentah. | Metode yang digunakan untuk menggabungkan data objek OSS. Nilai valid:
|
blockendian | string | 'NDR' | Urutan yang digunakan untuk menyimpan byte dalam setiap potongan data. Nilai valid:
|
celltype | string | Nilai defaultnya sama dengan nilai untuk data mentah. | Tipe piksel objek raster. Nilai valid:
|
Tabel berikut menjelaskan parameter dalam importOption.
Parameter | Tipe | Nilai default | Deskripsi |
mapping_oss_file | boolean | false | Menentukan apakah akan memetakan objek OSS ke objek memori. Catatan Saat data raster dibaca, beberapa driver tidak mengoptimalkan data yang disimpan di OSS. Akibatnya, banyak permintaan yang membutuhkan volume data kecil dihasilkan. Ini mengurangi kinerja. Parameter ini dapat memetakan objek OSS ke objek memori untuk meningkatkan kinerja. Anda dapat menggunakan parameter Global User Configuration (GUC) ganos.raster.memory_oss_file_max_size untuk menentukan ukuran objek OSS. |
parallel | integer | Nilai parameter GUC ganos.parallel.degree | Tingkat paralelisme. Nilai valid: 1 sampai 64. |
Deskripsi
Fungsi ini digunakan untuk membuat objek raster dan mengimpor objek OSS ke dalam objek raster tersebut.
Anda dapat menggunakan fungsi ST_RasterDrivers untuk menanyakan tipe data yang didukung oleh ST_ImportFrom. Untuk informasi lebih lanjut tentang ST_RasterDrivers, lihat ST_RasterDrivers.
Contoh
-- Tentukan hanya nama dan jalur objek OSS yang ingin Anda impor.
Select ST_ImportFrom('chunk_table','OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.tif');
-- Tentukan gambar NetCDF yang berisi subset.
Select ST_ImportFrom('chunk_table','OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.nc:hcc');
-- Tentukan ukuran per chunk dan format kompresi dalam proses mengimpor objek OSS.
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"}');
-- Tentukan tingkat paralelisme dalam proses mengimpor objek OSS.
Select ST_ImportFrom('chunk_table','OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/data/image.nc:hcc', '{}', '{"parallel": 4}');