FME的简单介绍

碎语

在介绍之前,习惯性的调侃几句。“FME是个好东东”,为那“倒霉”的GIS数据转换带来了福音,为什么说GIS数据转换“倒霉”呢?因为各家GIS软件都带有定制的数据模型和数据格式,彼此之间没有共同的标准和逻辑转换规律,以至于我们这些用户就成了“倒霉蛋”,想换个更合适的GIS软件时,就发现数据没法转换或者迁移成本过高,使我们纠结于是否换GIS软件,亦或是硬着头皮一路摸黑走到底……这个时候FME就适时的解决了这个问题,可以说很漂亮的实现了数据间的转换工作。

继续调侃,FME在北美,也就是USCanada,应用是很广泛的,从它与AutoCADESRIIntergraph等的合作就可以看出,它已在GIS界占有重要的一席之地。不过有趣的,FME在中国却没有达到应有的地位和市场应用,没能成为众多GIS项目和解决方案的“必选套餐”,甚至连“可选套餐”都不算。当然这也是与FME进入中国市场较晚,市场运作、推广以及技术储备不足有关,因此本文试图为FME摇旗呐喊——让好的GIS产品被更多的用户接受和采纳。

正文——1

产品介绍。

来自加拿大Safe Software公司的FME(全称Feature Manipulate Engine)产品,是一套将不同GIS数据模型和要素进行整合与同构化的产品,也就是可用于读写存储和转换各种空间数据。

FME产品包含了多种版本,关于FME产品套件的各种版本划分,请参考http://blog.csdn.net/NewMap/archive/2008/02/23/2115440.aspx(摘抄如下),目前更新版本的FME Suite也没有发生大的版本划分区别。

摘抄如下:

FME产品分为三个层次:

一、入门级

1、特点:支持常见的GIS软件的数据交换,如 MapInfo TAB, DGN, DXF, DWG, SDTS, SHP, and TIGER;可以运行大部分函数(FuntionFactory);不支持由Plug-in开发的第三方格式;

2、产品:FME Desktop Suite

二、专业级

1、特点:支持超过100GIS数据格式(不同的具体版本有差异);支持全部函数;支持Plug-in开发的第三方格式;

2、产品:

1FME Professional Suite:一个基础版本,包括大部分数据格式,对于ArcInfo只支持E00格式;

2FME ESRI Suite:比FME Professional Suite增加了ESRI ArcInfo Coverages ArcSDE的写(输出)能力;

3FME Intergraph Suite:比FME Professional Suite增加了Intergraph产品(如GeoMedia SQL Server)的写(输出)能力;

4FME Oracle Suite:在FME ESRI SuiteFME Intergraph Suite的基础上又增加了Oracle 8i9i Spatial的写(输出)能力;

5FME DB2 Suite:在FME ESRI SuiteFME Intergraph Suite的基础上又增加了IBM DB2 Spatial的写(输出)能力;

6FME Smallworld Suite:在FME Oracle Suite的基础上又增加了Smallworld的读写能力。

补充说明:

1. FME Professional Suite支持GeoMedia Access Warehouse的读/写(写功能需要安装GeoMedia平台);支持GeoMedia SQL Server Warehouse的读、但不支持写;支持ESRI ShapeESRI E00的读写,不支持SDEPersonal GeoDatabase (Access)

2. FME Intergraph SuiteFME ESRI Suite支持的格式实际上是完全相同的;

3.对于开源数据库,MySqlPostgreSQLPostGIS)也提供支持(在版本2006)。

三、服务器级

1、特点:主要是为大规模企业应用提供数据转换服务,支持绝大多数格式和函数。

2、产品:FME Server Edition

另外,关于FME产品中各个子模块的划分,请参考http://www.cnblogs.com/jambol/archive/2007/11/01/945913.html(摘抄如下),唯一要补充的是,2010 FME中新增了Data Inspector模块,也是数据可视化浏览工具,估计会替换Universal Viewer

摘抄如下:

FME产品包含以下六个功能模块:

(1)FME Workbench

当用户定制自己的数据转换时,利用FME Workbench模块,只需要在直观的界面中“指指点点”就可以轻易完成非常复杂的数据转换任务,而且数据转换质量非常理想;能够可视化地定义从原数据到目标数据的对应关系(属性和图形);同时还可以使用该模块进行不同格式数据源的合并工作。

(2)FME Universal Translator

该模块是FME的旗舰产品,是一个独立运行的强大的数据转换程序,采用drag-and-drop界面,用户可以轻松地、精确地转换、存储100多种不同格式的数据,用户也可以完成比较复杂的数据处理过程,比如给数据加属性值等。

(3)FME Universal Viewer

该模块用于快速预览不同格式的数据。用户可以在使用WorkbenchTranslator.模块时,在做数据转换之前预览转换数据(属性和图形) 。

(4)FME Plug-in(SDK)

该模块为开发组件,使用该软件开发工具包,开发人员能访问FME强大的语义核心,加入自己定制的数据格式,或者轻松进入FME转换内核去处理(只不过要额外追加费用)。一旦定制的数据格式加入FME内核就能够被所有的FME用户使用。

(5)FME Object API

这个开发接口能把FME的数据访问能力定制置入应用模块,用于增加数据的读、写、处理能力。开发语言支持Java, C++, C, COM (VB, C#), Delphi ArcView Avenue

(6)FME Application Extenders

该模块给用户提供了一个直接访问(读、写)多平台GISCAD和数据库格式的应用。

关于FME License,包括了:

1、 Node-Locked (Fixed) License:固定版,它仅仅适用于特定的电脑;

2、 Floating License:浮动版,服务器拥有它,然后在联机用户启动FME时,就会获取许可证;

3、 Hardware Locked License:加密硬件狗版,可以在任何一台电脑上安装FME,但是只有插入了硬件匙后,电脑能运行FME

那么如何获取License呢?除了向FME公司申请Evaluation Version14License外,也可以找国内的代理商申请或者购买License

正文——2

FME纳入到系统建设方案中。

其实在系统建设过程中,需要进行数据转换时,我们通常会考虑几套方案:

1、 数据服务共享与服务熔合(聚合)。当前炒作的最为红火的方案,经过了一些项目的论证,结果发现,理念是很好的,可是实际的技术、框架和机制都不够完善,异构系统(异构、不同源数据)提供的服务接口——数据之间还不能简单、完美的实现对接和应用,尤其表现明显的是不同的地图图片,以及不同协议和标准的服务接口。

2、 第三方数据格式转换。比较容易理解的方案——当然只能针对少量数据文件,将这些待转换的数据文件首先转换为SHPe00等,再转换为目标系统的数据。需要提醒的是,目前各类平台软件,除了与FME合作的ArcGISIntergraph外,其他的平台软件,如SuperMapMapinfo等,在做数据转换方面都不够专业,甚至对于很多数据转换支持的很不理想,导致数据的丢失等问题的出现。

3、 数据库迁移或共享。异构空间数据库之间也能共享数据?当然可以,比如SuperMap支持ArcSDE数据库的读写,不论效果如何,终究还是支持了。更为理想的还是借助FDO,或者国内提出的OGDC接口标准,来直接读取各种类型的空间数据库,从而实现数据库共享。不过问题也来了,不论是FDOOGDC还是其他公开标准接口,都需要针对不同的数据库开发相对应的实现类,对于快餐型用户的我们来说,太费力。

那么FME的用武之地出现了,FME能够支持ArcSDE的读取,能够支持像DGN格式的图形数据与属性数据分开存储情况下,数据的完整转换,能够支持OracleDB2MySQLPostSQL数据库操作。FME提供了Object API,因此可以制作自己的批量转换工具,当然也可以使用FME Workbench工具,实现可视化的数据定义和数据转换。

FME所做的数据转换,包括结构转换和内容转换两个方面。

所谓结构转换,就是将源数据格式进行拆分、合并、重构,转化为FME的内部标准数据结构,然后再发送到目标数据格式。

而内容转换,则是改变一个数据集内容的功能,包括要素的几何特征或属性值。

这些转换工作在Workbench中都能有所体现,例如通过可视化建模的方式,增加Reader(一个格式的源数据),Writer(另一种格式的源数据),然后为两种不同类型的数据建立对应,或者说是映射关系,也可以在其中增加函数处理关系,从而形成源数据到目标数据的处理流程。

FME支持绝大部分的投影坐标;可以利用Data Inspector来检查数据是否正确和完整;也能够对属性数据进行结构重构;同样的,据说FME正在与SuperMapMapGIS等平台厂家合作,将这些国内厂家的数据格式也纳入到转换工具中,从而适应国内市场的使用。

可以说,这么多的特点,足以让我们在做系统设计时,充分的考虑将FME纳入到我们的系统建设中,从而在数据转换过程中保证数据转换的质量和完整性。

posted @ 2010-05-04 08:37  dulvyizhihua  阅读(6376)  评论(1编辑  收藏  举报