FME培训之第一章 数据转换基础.docx
- 文档编号:7930091
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:21
- 大小:1.04MB
FME培训之第一章 数据转换基础.docx
《FME培训之第一章 数据转换基础.docx》由会员分享,可在线阅读,更多相关《FME培训之第一章 数据转换基础.docx(21页珍藏版)》请在冰豆网上搜索。
FME培训之第一章数据转换基础
FMEDesktop培训教程第一章数据转换基础
2011-07-2100:
15:
50| 分类:
FME基础教程| 标签:
|字号大中小 订阅
数据互操作
传统的数据格式转换通常是由一些功能有限的软件执行的。
什么是数据互操作?
它指的是,通过分享和分发数据,来交换信息,它具有直接处理数据的功能。
在这个定义中,出现了以下三个关键词:
交流:
信息间的交换
数据分享/分发:
提供数据,或是直接对源数据进行访问
透明地:
不需要对数据结构有背景认识
有时候,互操作性也被称为数据融合或数据模式转换。
互操作性的障碍
但是,互操作性并非总是显得那么简单。
对于空间数据,存在两个最主要的障碍。
数据类别
对于空间数据来说,有许多类型的数据,例如,CAD,GIS,BIM(建筑信息),导航等。
因为不同类型的数据根据不同目的设计的,所有它们并不是总是能够兼容的。
我们可以说他们之间有着不同的含义。
下面我们举个例子:
例如,一个导航系统,例如,车载GPS,和针对土木工程项目的CAD数据集,两者可能都是处理有关“道路”的数据,但是它们对于数据的看法是完全不同的。
有关导航的数据是一个经过制图综合,具有拓扑特征的,带有交通属性的数据网络系统。
但是,CAD数据包括精确的几何定位,以及有关路况的属性。
这两种具有不同应用目的的数据是很难兼容的。
数据格式
空间数据领域的独特之处,空间数据拥有不同的数据格式,例如,地理数据库,DWG,MIF/MID,KML等。
因为不同的数据集有不同的格式,即使这些数据集是同一种类型的,它们也并非总是能够与计算机的应用程序兼容
例如,一个用来读取GeoDatabase的系统,可能就不能够输入TAB格式的数据,尽管它们都是GIS类型的数据集。
“细管道”转换
通常来说,用来将地理数据转化为其它格式数据的软件都有局限性。
大多数数据在转化的过程中,要被迫经过一个十分局限的数据模型,可能会导致相关信息的丢失。
在SafeSoftware中,我们将它叫做“细管道”转换。
上图:
观察怎样丢失了属性B,C。
可能,格式2的数据部支持格式1的类型,或者是,转换软件在传输过程中直接地丢掉了属性。
同时,你会注意到进行数据转换的过程是单向的。
另一个问题就是,大多数转换器都不是多目的的,也就是说,它们仅仅针对于某一种特殊的格式。
将数据转换为另一种格式时需要一个转换器,但将它再转换为原来的格式,可能就会需要另一个转换器了。
互操作性标准
有两种解决方法,可以帮助用户分享空间数据。
数据标准
最常见的一种解决缺乏互操作性问题的办法,就是数据标准。
如果每个人都使用同一类型和格式的数据,就不存在分享数据的问题了。
标准可以被分为格式或数据模型,有些标准两者都包括!
一些标准是用来储存数据的,而一些标准仅仅是用来转换数据集的。
常用标准
许多重要的空间数据标准是由OpenGeospatialConsortium创建或维护的(OCG是一个非盈利性质的全球公认的标准机构)
虽然它创建的所有标准都是基于一个叫做AbstractSpecification的标准体系结构,但是OCG自身也推广大量的不同标准。
ISO(国际标准机构)也创建了一些标准,例如,S-57。
但是,也存在着许多其他的标准,有些是特定的,有些是针对某些国家的数据,而有些则是对OGC或ISO标准进行了扩展或缩减。
以下是一些常用标准:
OGC:
GML,KML,WKT,WKB
National:
MasterMap(英国-一种基于OGCGML的数据模型)
TIGER/Line(美国-既是一种数据格式又是一种数据模型)
KF85(瑞典)和NAS(德国)
其它:
S-57(既是一种数据格式又是一种数据模型)
GeoJson、GeoRSS、LandXML、CIM(公用信息模型)
VPF(格式)和VPF产品(DNC、VMAP、世界向量海岸线)
标准的缺点
总的来说,这些标准可能能够很好的处理一些简单的数据集,但是当遇到一些复杂的问题时,它自身要么更加复杂化,要么会分成一些新的标准。
在前面的例子中,CAD和导航数据集以不同的方式来处理“道路”,我们就很难找到某一种标准来同时适应这两种数据集。
同样地,政府的各个部门也并非总是能够很好的协作,这样就需要大量的国家标准。
另外,许多标准开始是非空间性的,但之后又具有了空间性能(例如,GeoJson,GeoRSS)
总的来说,一些软件制作商,他们不愿意舍弃支持标准结构的专有数据,也就是说,公认的格式只会越来越多,而不会越来越少。
FME是什么?
当我们不大可能或者实际地去使用一个常用数据标准时,IT解决方案就显得非常有必要了。
空间ETL,以FME为例,就是这样的一个IT解决方法。
FME被设计用来解决与传统数据转换方法相关的影响互操作性的障碍问题。
空间ETL是什么?
FME(FeatureManipulationEngine,要素处理引擎)被设计成一个空间ETL应用程序,这是第一个实现空间ETL的工具。
ETL指的是提取、转换和加载。
我们将ETL描述成数据仓库工具,它能从源数据库中提取数据,将数据转化以满足用户需要,将数据加载到目标数据库。
空间ETL工具也能够读取,编写,处理空间数据。
一方面ETL工具要能够处理非空间数据库或系统中的不同类型数据,另一方面必须要具有空间处理功能,亦即能够改变数据的结构和表达,这些要求正是一个空间数据库或GIS中的数据转移到其它的数据库时所需要的。
FME是怎样工作的?
FME拥有许多重要的特性
核心性
FME是大量支持格式中的核心引擎(如下图)。
可以读取任何格式的数据,并且编写成其它的格式。
要支持新的格式,就如将这种新格式插入到FME引擎中一样简单。
FME可以在相同的核心模式下,同时支持栅格和矢量格式。
语义
FME自身拥有的丰富数据模式,可以用来处理所有可能出现的几何性和属性类别。
当目标格式导致出现兼容问题时,FME会自动修复以保证进行无缝的数据转换。
粗管道
ETL中的T指的是传统格式转换的不足之处。
FME提供大量的转换功能,输出格式比输入的格式类别要大得多,并且允许数据从一种类别(如GIS)转化为其它类型(如CAD)。
FME版本和许可证
根据用户需求的不同,FME有许多不同的版本
FMEDesktop的版本
FME拥有许多不同的版本,每个版本都具有不同的功能和格式,下面图表中,每个版本都包含所有的要素。
版本信息如下:
FMEBase版
针对初学者的一个版本,它支持40种格式和一系列基本的转换工具。
FMEProfessional版
这个版本拥有更广泛的功能,支持更多格式的数据,和完整的转换工具。
DatabaseSpecific版
它包括DB2,MicrosoftSQLServer,Oracle和Smallworld,这些版本增加了对一些特殊数据库的写操作支持。
ApplicationSpecific版
这些版本支持与特殊应用程序相关的格式,例如,ESRI版本支持GeoDatabase,而Intergraph版本就支持编写GeoMedia。
FME的授权
通过多种方式,我们可以获取FME的许可证
固定版License
它仅仅适用于特定的电脑。
许可证不能转给另一台电脑,除非是向SafeSoftware做特殊的要求
浮动版License
不固定的许可证指的是,服务器拥有它,然后在联机用户启动FME时,就会获取许可证。
当有许多可能的FME用户,但他们又不会同时使用FME时,这种获取许可证方法是非常有用的。
硬盘版License
它与硬件匙紧密相关。
可以在任何一台电脑上安装FME,但是只有插入了硬件匙后,电脑能运行FME。
例如,当用户既需要在办公室电脑,也需要在手提电脑上工作时,这种方法就非常有用。
我们常犯的错误是,认为每个版本都是一个特别的安装程序,事实上,这种想法是错的。
我们安装的是同一种FMEDesktop,如果拥有了不同的许可证,便可以来来访问不同的功能。
FMEDesktop组成
FME是由许多空间数据处理组件构成的软件套装。
每个版本的FME都包含这里列出来的所有应用程序。
FMEWorkbench
FMEWorkbench拥有的直观的图形操作界面,允许转换过程以图形的数据流方式表现出来。
FMEWorkbench是FME中最基本的数据转换平台。
FMEUniversalViewer
它让用户能够迅速地查看FME支持的任何一种格式的数据。
通过在转换之前查看数据,或是转换之后检查数据,就能够验证数据,并确保它的准确性。
FMEUniversalTranslator
它是FME开发的第一个应用程序。
为了更好地使用它,我们需要用到脚本语言而不是图形界面,所以现在它已经多数被FMEWorkbench所取代。
FMECommandLineEngine
它允许将数据转换要求作为命令行来提交。
FME其它组件
在FMEDesktop中也包括了其它的组件,并作为它的一部分。
FMEObjects
它是软件库文件,用来处理空间数据。
程序开发人员使用它,扩展他们自己的应用程序功能,使之能支持空间数据的读写。
FMEApplicationExtenders
它是嵌入到其它GIS应用程序里的FME组件,它允许GIS软件程序来查看不属于这个程序的数据集。
FMEPlug-InSDK
它允许开发人员在FME转换核心中添加他们自己的格式。
FME其它产品
FME这个品牌包括大量其它的产品,而不仅仅是基本的Desktop产品。
FMEServer
采用与FMEDesktop相同的技术,FMEServer是一种可扩展的空间ETL应用程序,既可以进行数据转换,也可以让用户无论何时,何地,以它们需要的方式来对空间数据进行访问。
我们也将它描述为MDA(Model-DrivenArchitecture,模型驱动架构),也就是说,它使用预定义工作流来处理数据。
而这些工作流,就如你所猜想的那样,和你使用FMEDesktop产品中的Workbench所创建的工作流是一样的。
FMEDataServers
它提供以网络基础的应用程序,用来直接访问FME支持的任何一种格式的数据。
它支持的程序为.MapGuide和GeoMediaWebMap。
FME的其它相关产品,FMEProviderforMapGuide和FMEDataServerforWebMap,这些程序在不需要提前进行数据转化的情况下,直接对不同格式的数据进行访问。
FMEPlugins
除了FME的这些基本功能,我们还可以购买许多其他的插件。
这些插件要么用来扩展功能,FME基本产品所支持的格式。
这些插件包括:
MRFCleaner插件,用来清理几何对象;
CurveFitter插件,用来平滑线型;
GDF插件支持读取/编写GDF格式;
VPF插件支持编写VPF格式。
FMEWorkbench的简介
Workbench是FME用来进行数据转换的最主要工具。
它自身的点击图形界面能够让转换过程以图示的方式表现出来,就是我们所说的数据流。
什么是FMEWorkbench?
它指的是一种解决数据转换以及处理数据过程中所出现问题的应用程序。
通过它,用户可以通过直观的图形界面来访问FME的基本功能,用户则可以通过图形界面的方式来定义数据流,从源数据到目标数据的转换过程。
它有一些工具,用来定义源/目标数据集的结构(或图示),同时用来处理空间数据的几何特征和属性。
我们将workbench进行集成,用来与其它的FME应用程序一起使用,例如,UniversalViewer以及其它相关产品,FMEServer,以及FMEServer的授权工具。
打开FMEWorkbench
在Windows的开始菜单中,打开FME的子菜单,找到FMEWorkbench。
点击它,打开工作空间
如下图:
FMEWorkbench的主要组成部分
FMEWorkbench的用户界面包含许多组成部分
Workspace工作区(WorkspaceCanvas)
当用户用图示方式来定义工作流时,就会出现这个界面。
一般情况下,从左到右读取工作流:
源数据在左边,转换工具在中间,目标数据则在右边。
中间的连接则代表数据流,并且可能向不同的方向扩展,有需要时可以终止转换。
转换日志(TranslationLog)
它显示转换结果,所显示的信息包括错误,警告,转换状态,转换时间,以及已处理要素的数目。
导航栏(Navigator)
它是浏览器类型的工具,它会显示源数据集和目标数据集的文本定义,以及素有相关的设置。
转换通道(TransformerGallery)
它是用来定位以及选择FME转换工具。
菜单栏和工具栏(Menubar+Toolbar)
它们包括许多工具,例如,在工作空间中进行导航,控制操作任务,以及添加或删除源数据集。
浏览窗口(OverviewWindow)
它显示整个工作空间状况,并且突出现在正在运行的Canvas窗口。
Window控制面板
所有Workbench中的窗口都可以从固定位置中分离出来,然后通过点击窗口,将它拖拽到另一个新的自定义位置。
甚至,分离出的窗口可以再主窗口外浮动。
InteropGeek68说…
“Dude,使用多个显示器。
然后,你就可以讲Workbench菜单移到一个新的显示器上,在主要的显示器上保留WorkspaceCanvas窗口。
”
通过将窗口拖到Workbench的主窗口,就能够对窗口进行停靠,窗口可以被停靠到Workbench框架范围内的左边,右边,上面或下面。
下图:
这个用户选择将navigationpane和transformergallery分别停靠到Workbench的左边和右边。
而日志窗口则被停靠到通常要求的位置,显示的下方。
将两个或多个窗口停靠到同一个位置时,就需要对它们进行安排,要么选择并列,要么制表符。
上面:
transformergallery,overviewwindow和workspacenavigator并列(左图)制表符(右图-突出了窗口名称)
每个窗口上方的按键,决定是进行并列或是制表符(下图)
开始数据转换
Workbench直观的图形界面使不同格式数据间的转换变得很简单。
对话框或向导
它们是创建一个新的转换过程的两种基本方法,分别是“TranslationWorkspaceWizard”和“NewWorkspaceDialog”。
从菜单条中选择File>New,进行转换。
这两种方法都允许你选择源格式,源数据集,目标格式以及任何适用源数据集或目标数据集的设置。
转换模板向导
它提供一系列选项,通过它来对转换过程进行设定。
如下图:
工作空间向导的最开始的界面,对话框会提醒用户选择要转换的源数据集的格式,红色表示必须要填写。
FME的格式选择工具有重要的特性,既有一个下拉菜单,又有文本框。
下拉的菜单列出了最近使用的十种格式,这样就能迅速地获取常用的格式。
而文本框允许你直接输入格式名,它有一个“智能匹配”功能,当你进行输入时,会替你找出最贴近的正确格式名,这比使用浏览按钮
来寻找格式名要迅速的多。
新建Workspace对话框
新建Workspace对话框将所有的有关转换工作空间的选项概述为一个单一的对话框。
对于有经验的用户,会更倾向于使用创建工作空间的工具:
上图:
新建Workspace对话框
这个对话框需要填入源格式,数据集以及目标格式。
它们拥有相同的下拉菜单和'Intelli-complete’功能,就和Workspacewizard一样
也有按键,来检查或是改变每个数据集的设置,并且还有一个按键来预览FMEViewer中的数据。
提示:
Workbench工具条中的NewWorkspace按键实际上是NewWorkspacedialog的快捷方式。
注意:
这个时候对设置进行检查是非常必要的。
虽然在Workbenchnavigation的方框中会显示大多数的设置,但是一些设置可能会影响到数据转换工作空间的创建,所以你在进行下一步之前,需要检查这些设置。
要素类型对话框
无论你用何种方式创建工作空间,无论源数据集包含多少不同的要素层,按照提示,你都需要选择要转换的要素层。
使用SelectFeature就能对要素层进行选择。
FME中的featurelayer是“layer”的另外一种说法。
只有被选择了的要素层才会显示在工作空间中。
下图:
就是SelectFeatureTypesdialog.在这里,用户选择了工作空间中所含有的所有要素层。
提问:
在NewWorkspacedialog对话框中,为什么在浏览源数据之前,对数据格式进行设置是非常有用的呢?
回答:
在设置格式类型之前,试着浏览整个数据集,看是否能够检测到不同之处。
新建工作空间
我们从左到右,通过数据流从源数据到目标数据,来读取一个新的工作空间。
你也可以将这个读取过程理解为一个空间ETL过程,即“提取—转换-加载”。
下图:
一个新的工作空间和这个例子很像FME设置注记,用来强调E-T-L(Source>Flow>Destination)结构
箭头表示数据流的方向,从源数据到目标数据。
运行数据转换
保存转换过程
可以将工作空间保存到一个文件内,这样就可以在晚些时候再次使用。
简单地使用File>Save(shortcut=Ctrl+S)orFile>SaveAs…就能保存转换过程。
转换结果–日志框
在数据转换之后,就可以在Workbench日志框中找到有关转换结果和输出数据的统计。
转换日志会显示数据转换成功与否,从源要素中读取了多少要素,编写了多少要素到目标数据,完成数据转换花了多少时间。
下图:
在这个例子中,日志文件显示从MicroStationdgn文件中读取了2319个要素,这些要素被编写到一个GML输出文件。
这个转换过程是成功的(有一个警告),转换花费了4.6秒。
提示:
不需要其它设置的情况下,在Workbench或UniversalTranslator中迅速快捷地进行数据转换,我们将它称作“快速转换”
因为FME是“语义”上的转换器,凭借它自身丰富的数据模型,通过快速转换过程得到的输出数据会在结构和意义上尽可能地与源数据接近。
FMEUniversalTranslator的介绍
FMEUniversalTranslator是进行数据转换的最早的FME工具。
什么是FMEUniversalTranslator?
在前面的例子中,我们使用FMEWorkbench来进行所谓的“快速转换”
FMEUniversalTranslator指的是最早FME转换程序。
虽然大多数已经被更新的Workbench应用程序所取代,但是仍然有许多人用它来进行快速转换,或者运行已有的不需要进行再编辑的工作空间。
启动FMEUniversalTranslator.
在Windows的开始菜单中找到FME子菜单,就可以看到它了。
点击这个子菜单,就可以启动FMEUniversalTranslator了
上图:
UniversalTranslator位于FME得子菜单。
开始数据转换
在菜单条中,选择File>Translate(如下图)
Translation对话框
在UniversalTranslator菜单条中选择File>Translate,就会出现TranslationParameters对话框。
在填写完整这个对话框后,点击OK键,就可以进行数据转换了。
下图:
UniversalTranslatortranslationparameters对话框如下图所示:
在这里,用户将MapInfoMIF/MID数据集转换为GoogleEarthKML.
相比FMEWorkbench的"Createworkspace"对话框而言,这个对话框也包括一个处理目标数据集的设置。
转换数据
前面已经提到了,FME的一个最主要的优点就是,当需要进行数据转换时,它能够进行我们所知道的“粗管”转换(相对“细管道”或“快速转换”而言)
FMEWorkbench使用图形界面来转换—称之为工作空间,而FMEUniversalTranslator则使用文本脚本—映射文件。
观察上图的对话框,用户是如何选择要执行的特定映射文件的,使用默认的“automated”mappingfile,实际上与快速转化类似。
为了进行其他操作,而不仅仅是快速转换,用户可能需要创建,使用一个自定义mappingfile,所以,对于进行复杂的转换,FMEWorkbench就是首选工具。
运行已有的转换过程
无论转换过程是一个工作空间或是一个映射文件,我们可能也会使用FMEUniversalTranslator来进行数据转换
当用户已经有了一个映射文件,或一个不需要再进行任何编辑的工作空间时(可能进行了加密,这样就能避免作出变动),运行已有的转换过程就非常有用了。
下图:
从菜单条中选择File>Run,运行已有的转换过程.
单元复习
这单元主要是向你介绍FME,并且对FME数据转换进行一些基本的考察
从这单元中你学到了什么?
下面这些就是从这单元中应该学到的主要内容:
理论知识
FME是提取,转换,加载空间数据的工具
QuickTranslation指的是在需要最少用户干预的情况下,进行数据转换的技巧。
FME的语义属性就是它能实现的基础。
FMEWorkbench是一种应用程序,用来动态地定义转换过程,和数据流。
这个定义也被称作工作空间,可以被保存,已备下次使用。
FMEUniversalTranslator是一种应用程序,用来进行快速转换,或者执行预定义转换。
Workspacedialog和Workspacewizard指的是两种方法,使用它们就能在FMEWorkbench中进行快速转换
FME操作
启动FMEWorkbench,能够创建并运行快速转换工作空间;
能够在FMEUniversalTranslator中进行相同的快速转换
使用FMEUniversalTranslator运行已有的转换过程(例如工作空间)。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- FME培训之第一章 数据转换基础 FME 培训 第一章 数据 转换 基础
![提示](https://static.bdocx.com/images/bang_tan.gif)