SuperMap 数据存储方式

     今天突然被朋友问道SuperMap的数据存储方式,问了很多人都不是很清楚,在网上搜索了也没有好的介绍,先将自己搜到的和总结的一些关于SuperMap数据存储方面的东西和大家交流一下,如有错误,请指正。

     SuperMap Objects采用独特的多源空间数据无缝集成技术,提供了多种空间数据存储格式。不同的数据存储方式由不同的空间数据引擎负责维护。这些引擎包括:SDB,DGN,DWG,MDB和SDX。这些引擎分别介绍如下:

    SDB引擎:是SuperMap Objects自有的一种基于文件和数据库方式混合的空间数据组织方式。一个SDB数据工程包括两个文件,扩展名为SDB的文件存储空间数据,采用OLE复合文档技术;扩展名为SDD的文件为属性数据库,采用Access 的MDB数据库格式。由于SDB文件采用了复合文档技术,因此提供了在一个SDB工程中存储多个数据集的能力。SDB引擎仅仅支持多用户共享读访问,但只支持单用户写操作。SDB主要面向中、小型系统和桌面应用;

    DGN引擎:也是一个基于文件的空间数据引擎,是SuperMap Objects中实现的第一个访问其它软件数据格式的引擎。DGN引擎提供了直接访问MicroStation DGN数据文件的能力。DGN引擎是一个只读引擎,您可以使用DGN数据源中的数据,但不提供编辑功能。

    DWG引擎:与DGN引擎类似,DWG引擎提供了直接访问AutoCAD的DWG数据文件的能力。DWG引擎也是只读引擎。

    MDB引擎:一种纯数据库引擎,采用Access的MDB数据库作为数据存储容器。基于Microsoft的Jet数据引擎实现。MDB引擎把空间数据和非空间数据存储在同一个MDB数据库中,真正实现了空间数据和非空间数据的无缝组织,同时便于维护数据。MDB支持多用户并发读写操作。一个MDB文件中可以存储多个数据集。与SDB一样,MDB引擎面向中小型桌面应用系统,一个MDB的最大空间容量为1G。MDB引擎适用于中小型应用。

    SDX引擎:是基于大型数据库的纯关系数据库空间引擎。实现了空间数据和属性数据的无缝组织,支持大数据量管理,支持多用户共享读写访问,支持短事务和长事务处理,有严格的权限管理。SDX引擎适合建立大型空间数据应用。SDX引擎针对不同的数据库系统又有细分,目前支持Microsoft SQL Server,Oracle, Oracle Spatial和SyBase。

    SDX Plus引擎:是SuperMap公司的第三代数据库引擎,相对于SDX引擎来讲,各方面性能更加优化。目前支持Microsoft SQL Server,Oracle。具体介绍请参考有关SuperMap SDX(+)引擎的介绍和技术白皮书。

    在以上的几种数据格式中,SDB应用最多,并且超图公司提供了SuperMap D-Builder来支持空间数据格式转换、地理参照系变换、空间数据入库等功能,先将这三方面的功能简单介绍如下:

    空间数据格式转换

    提供把各种其他格式的空间数据,比如CAD数据,SHP数据,E00数据等,转换为SuperMap的SDB数据源。转换的时候按照一一对应的方式进行:一个原始数据文件对应到一个SDB数据文件,并保持原始的文件目录结构,便于用户检查格式转换结果的正确性。为了保证转换的效率,格式转换时,将忽略原始数据的数据组织方式,默认按照GIS分层存储的方式处理,同时忽略原始数据文件的投影信息。

    地理参照系变换

    由于格式转换时忽略掉了原始数据的投影信息,在格式转换完成之后,需要对SDB数据源设置和转换投影信息。投影转换时,只需要设定需要转换的SDB数据源和目标投影信息,系统就可以自动工作。

    空间数据入库

    空间数据入库是在SDB数据源的基础上进行。用户可以根据自己的需求建立自己的建库模型、建库规则、数据重组方式。通过自定义数据重组规则,用户就可以建立起符合实际应用需要的空间数据库。

posted on 2008-02-02 13:53  雷光斌(gis)  阅读(2817)  评论(1编辑  收藏  举报