将基于对象存储的倾斜摄影项目(OSGB格式)导入到数据库中。
语法
boolean ST_ImportOSGB(cstring table_name, cstring url, cstring options default '{}');
参数
参数名称 | 描述 |
table_name | osg表名及其瓦片表前缀。 |
url | 基于对象存储服务的路径。更多信息,请参见对象存储服务路径。 |
options | 导入选项:
|
描述
将基于对象存储的OSGB文件导入到数据库中。
导入限制说明:
仅支持OSGB格式的文件。
指定目录下需要存在一个名为
metadata.xml
的文件,文件可以位于根目录或任意子目录下。需要导入完整的OSGB文件,否则将丢失相关信息。
当数据量较大,且使用客户端连接数据库进行OSGB文件导入时,请适当调整客户端超时限制,避免因超时终止而导致的数据导入失败。
导入成功后会在数据库内生成两张表:
重要
如果并行度不为1,将不支持自动建表,需要您预先手动创建,建表语句如下:
# 以在默认schema下创建一个名为test_osgb的表为例
# 创建主表
CREATE TABLE IF NOT EXISTS test_osgb(
project_id uuid primary key,
project_name text,
srid integer,
ref_point geometry,
extent geometry,
aux text,
tiletable varchar(64) NOT null
);
# 创建瓦片表
CREATE TABLE IF NOT EXISTS test_osgb_tile(
project_id uuid NOT NULL,
project_name text,
uid uuid NOT NULL,
lod integer,
precision float8,
parent uuid,
children uuid[],
aux jsonb,
tile scene NOT NULL,
PRIMARY KEY(project_id, uid)
);
示例
-- 常规导入
SELECT ST_ImportOSGB('test_osgb', 'OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/path_to_oblique_project/');
---------
t
-- 并行导入
SELECT ST_ImportOSGB('test_osgb', 'OSS://<ak>:<ak_secret>@oss-cn-beijing-internal.aliyuncs.com/mybucket/path_to_oblique_project/', '{"parallel": 4}');
---------
t
文档内容是否对您有帮助?