数据源(Datasource)是存储空间数据的场所。所有的空间数据都是存储于数据源中而不是工作空间,任何对空间数据的操作都需要打开或获取数据源,用户可以按照数据的用途,将不同的空间数据保存于数据源中,对这些数据统一进行管理和操作。 对不同类型的数据源,需要不同的空间数据引擎来存储和管理。
SuperMap SDX+ 是 SuperMap 的空间引擎技术,它提供了一种通用的访问机制(或模式)来访问存储在不同引擎里的数据。 各种空间几何对象和影像数据都可以通过 SDX+ 引擎,存放到关系型数据库中,形成空间数据和属性数据一体化的空间数据库。更多 SuperMap SDX+ 空间引擎的介绍请参考“ SuperMap SDX+空间数据引擎 ”专题介绍。
不同类型的空间数据源对应不同的数据引擎。SuperMap 产品支持打开和新建多种数据源类型,分为文件型数据源、数据库型数据源、 Web 数据源以及内存数据源。因此,对应的引擎类型有文件引擎、数据库引擎和 Web 引擎。不同数据引擎支持的数据集类型也不相同,更多 SDX+ 支持的数据集类型请参考“ SDX+ 支持的数据集类型 ”介绍。
将空间数据和属性数据直接存储到文件中。存储扩展名为 *.udb 或*.udbx 的文件。在小数据量情况下使用文件型数据源地图的显示更快,且数据迁移方便。
包含有四类:SuperMap 自定义的 UDB 引擎(可读写)、UDBX 引擎(可读写)、影像插件引擎(直接访问一些影像数据)和矢量文件引擎(直接访问外部矢量文件)。
文件型数据源引擎类型 | |
类型 | 描述 |
UDB | 跨平台文件引擎类型,针对 UDB 数据源。 |
UDBX | UDBX 文件引擎,可以读写以及管理 Spatialite 空间数据,针对 UDBX 数据源,支持的数据集类型包括:点、线、面、文本、CAD、属性表、三维点/线/面、EPS复合点/线/面/文本、栅格、影像、镶嵌数据集。 |
ImagePlugins | 影像只读引擎类型,针对通用影像格式如 BMP,JPG,TIFF,以及超图自定义的影像格式 SIT 等。 |
矢量文件 | 矢量文件引擎类,针对通用矢量格式如 shp,tab,Acad等,支持矢量文件的编辑和保存。 |
将数据源存储在数据库中,目前桌面产品提供 OraclePlus、Oracle Spatial、SQLPlus、PostgreSQL、DB2、KingBase、MySQL、BeyonDB、HighGoDB、KDB 、DM 、PostGIS和 MongoDB 十余种数据库型数据源功能。一般常用于数据量较大的数据存储,便于数据的管理和访问,且支持并发操作便于修改和数据同步。用户在于访问数据库需要本地配置相关的数据库环境和客户端。
SuperMap 空间数据库以大型关系型数据库为存储容器,通过 SuperMap SDX+ 进行管理和操作,将空间数据和属性数据一体化存储到大型关系型数据库中,如Oracle、SQL Server、Sybase 和 DM3 等。如下表所示的空间数据库类型。
数据库型数据源引擎类型 | |
类型 | 描述 |
SQLPlus | SQL Server 引擎类型,针对 SQL Server 数据源。必须有客户端,环境变量配置正确。 |
OraclePlus | OraclePlus 引擎类型,针对 Oracle 数据源,必须安装客户端。 |
OracleSpatial | Oracle Spatial 引擎类型,针对 Oracle Spatial 数据源,必须安装客户端。不支持网络数据集。 |
MySQL | MySQL 引擎类型。不需要安装客户端,但远程服务端必须保证本机有访问权限。 |
DB2 | DB2 引擎类型。针对 IBM DB2 数据库的 SDX+ 数据源,必须安装客户端。 |
Kingbase | Kingbase 引擎类型,针对 Kingbase 数据源,不支持多波段数据。必须有客户端。 |
BeyonDB | BeyonDB 引擎类型。必须有客户端。 |
SinoDB | SinoDB 引擎类型。针对 SinoDB 数据源。必须有客户端。 |
HighGoDB | HighGoDB 引擎类型。无需安装客户端,远程服务端必须保证本机有访问权限。 |
DM | DM 引擎类型。针对达梦(DM)数据源,必须安装客户端,环境变量配置正确。 |
KDB | KDB 引擎类型。必须有客户端,环境变量配置正确。 |
MongoDB | MongoDB 引擎类型。无需安装客户端,远程服务端必须保证本机有访问权限。 |
PostgreSQL | PostgreSQL 引擎类型。无需安装客户端,远程服务端必须保证本机有访问权限。 |
PostGIS | PostgreSQL 的空间数据扩展 PostGIS 引擎类型。针对 PostGIS 数据源,无需安装客户端,远程服务端必须保证本机有访问权限。 |
Tibero | Tibero 引擎类型。是作为企业级数据库服务器,为了进一步完善现有DBMS,采用独有的Hyper Thread Architecture(超线程架构),大幅提高了性能及稳定性。凭借HTA的创建性结构,使用最少的CPU以及内存资源,大幅改善了locking机制,保障比现有DBMS具备更高的可扩展性(scalability)。需安装客户端,远程服务端必须保证本机有访问权限。 |
SuperMap iObjects 支持多种数据库引擎(如下表所示),根据常用引擎需求目前可在桌面端查看到的功能入口有上述17类数据库,用户可通过修改配置文件参数的方式自定义数据库型数据源的功能入口,增加或者删除 SuperMap iObjects 已支持的各种数据库数据源。
支持通过修改配置文件参数的方式自定义数据库型数据源的功能入口,配置文件位于产品包/Configuration/文件夹中的 SuperMap.Desktop.Startup.xml 文件。配置参数编码默认显示如下:
<parameters>
<engine extraEngineType="" hiddenEngineTypes="" >
</parameters >"
SuperMap iObjects 支持的数据源引擎类型 | |
类型 | 枚举值 |
SDE | 4 |
OracleSpatial | 10 |
SQLPlus | 16 |
DMPlus | 17 |
DB2 | 18 |
Kingbase | 19 |
MySQL | 32 |
PostgreSQL | 221 |
MongoDB | 401 |
BeyonDB | 2001 |
GBase | 2002 |
HighGoDB | 2003 |
Altibase | 2004 |
KDB | 2005 |
SRDB | 2006 |
MYSQLPlus | 2007 |
DRDS | 2008 |
GBase8T | 2009 |
Kadb | 2010 |
ES | 2011 |
PGGIS | 2012 |
SQLSpatial | 2013 |
Tibero | 2014 |
SinoDB | 2050 |
DataServer | 2051 |
GreenPlum | 2052 |
Esgyn | 2053 |
Tibero | 2014 |
ShenTong | 2055 |
HWPostgreSQL | 2056 |
Ganos | 2057 |
将数据源存储在网络服务器中,OGC、GoogleMaps、超图云服务、REST 地图服务和天地图地图服务数据源属于 Web 数据源。
Web引擎可以直接访问WFS、WMS、WCS等所提供的Web服务,这类引擎就是把网络上符合OGC标准的Web服务器,作为 SuperMap 的数据源来处理,通过它可以把网络发布的地图和数据与 SuperMap 的地图和数据完全结合,将WFS和WMS的应用融入到 SuperMap 的技术体系,拓展了 SuperMap 数据引擎的应用领域。Web引擎为只读引擎。
Web 型数据源引擎类型 | |
类型 | 描述 |
OGC | OGC 引擎类型,针对于 Web 数据源,目前支持的类型有 WMS,WFS,WCS 和 WMTS。 |
GoogleMaps | GoogleMaps 引擎类型。针对谷歌电子地图服务。 |
SuperMapCloud | SuperMap 云服务引擎类型,针对超图发布的云服务。 |
iServerRest | iServer Rest 服务引擎类型,基于 REST 协议发布的地图服务。 |
MapWorld | 天地图服务引擎类型,针对天地图发布的地图服务。 |
OpenStreetMaps | 又称 OSM 引擎类型,是由网络大众共同打造的免费开源的地图服务。 |
全球地形图 | 分为基础地形图和深色地形图,是超图发布的全球晕渲图地图服务。 |
数据源中的数据都保存在内存中,为临时数据源,不支持保存。一些分析的中间结果可以存储在该数据源中,有利于提高分析的效率,当得到最终数据时可从内存数据源导出为本地数据。
内存数据源对应的数据引擎为内存引擎。
SuperMap 支持 SDX+ 数据引擎,支持存储的数据集对象最大记录数理论值为231-1,即:2147483647条记录,超过该记录值,后续记录将无法显示。