FME实践中的一些建议--优化工作空间

原文发布时间:2012-04-18

翻译:littlebo

FME的桌面培训中有一章课程叫做“最佳操作”,对于如何使用FME提出了一些建议。下面对这些建议进行汇总。

当然,如果想更充分理解FME,可以参加FME培训课程,safe每年组织了很多个人或者网上的培训,http://www.safe.com/learning/training/training-catalog/#desktop

“最佳操作”培训课程中将实践培训分为5各方面:

方法、风格、性能、调试、组织

所以我们沿着同样的思路,整理这些建议。希望对你有用。

一、方法:

1. 一个好的工作空间设计必须从打开工作空间那一刻就开始设计。

以下例子则不能算一个好的设计。

    

对于这个工作空间我们可以提出哪些建议?

建议1:当创建工作空间时会提醒选择添加要素类,对于不需要的要素类则不选择,否则会影响工作空间整洁。

建议2:当源数据有很多个要素类,并且所有要素类连接到同一个转换器时,那么你应该选择动态的要素类型。

建议3:当你要删除某个读模块中所有要素类时,请确保将读模块一起删除。

建议4:如果一些属性在整个工作空间都没有被用到,那么隐藏这些属性会使工作空间更加整洁,甚至运行效率更高。

建议5:如果你需要多次创建相同的工作空间,那么选择默认设置,这样可以避免每次都输入相同的参数值。

2. 构建一个结构合理的工作空间,来完成所需的任务也是一门艺术。

下面是另一个不合理的工作空间 

     

对于这个工作空间可以提出哪些建议?

建议1:如果你想在工作空间内嵌入FME函数,可以直接联系Safe技术支持团队,他们能找到一个解决方法。

建议2:如果你遇到需要使用两个工作空间相互嵌套来完成一个转换的情况,请先询问一下其他FME用户再做决定,因为这可能没有必要。

建议3:如果你不知道转换器如何使用,或者你的工作空间有多个数据流没有很好地控制,那么你可以联系Safe技术支持团队或者询问其他的FME用户。

3. 如你所知,在“工具”> FME选项下有不同的设置。 

     

以下是对工作空间设置的一些建议:

建议1:当你不需要转换器被连接就自动展开属性时,不勾选 “Open Attributes when Linking” 。

建议2:勾选“Draw Bookmarks with a Filled Background”,书签背景色填充,这样添加的书签更加美观,能见度更高。

建议3:设置 “Number of Recent Workspaces”,这是设置最近的工作空间个数,完全根据个人的爱好而定,但是值越大可以更快捷方便的找到最近使用过的工作空间。

建议4:不勾选“Automatically Generate Header Annotation”,这是设置自动生成头标注。

建议5:勾选“Use Transparent Annotations”,使用透明标注,这个对于通过注释查看对象非常有用。 

二、风格:

风格指的是工作区的外观和感觉。是良好的工作区布局,便于理解。一个具有良好风格的工作空间,即使在你编辑完几个月之后再看,也能够清晰地的明白整个过程。

以下这个例子,不具有良好的风格,工作区混乱。

     

      建议1:对重要的转换器进行注释,这样有助于今后自己或者别人编辑更新。

建议2:使用书签,把工作区分为几个易于理解的部分,这样就可以增强工作空间的易读性和美观性。

建议3:重命名转换器,这样在画布或者导航窗口中就可以清晰地看到每个转换器的功能。

建议4:当你移动转换器的时候,尽量避免增加额外的连接线的顶点。因为这样可能会造成不可预知的结果。

建议5:尽量不要横穿数据流,这样不仅会造成画布混乱而且可能会不小心造成数据流连接错误。

 

三、性能

FME在每个版本都会做一些性能改进,稍微调整一下工作空间的设置,可以帮助你的转换器运行得更快。

      

以上工作空间读取了数据集的所有数据,如果数据库数据量很大,而你只需要其中的很小一部分,那么这样的设置将会浪费很多读取数据的时间,降低效率。因此高级设置中对数据库进行过滤设置有效的提高了工作空间的性能。

建议1:当你需要过滤一个数据源时,可以对读模块参数进行设置,这样比读取所有数据再通过转换器过滤更有效。

建议2:确定接受数据量最大的写模块,并将其排在写模块列表的顶部,这样可以提高工作空间的性能。

建议3:在转换中只对你需要的几何数据和属性进行转换,对于你不需要的几何数据和属性尽早移除,这样可以提高转换器的效率,AttributeRemover能够帮助移除不需要的属性。

四、调试:

当转换失败,首先认真的查看日志窗口,检查是程序崩溃或者是意外输出失败,日志文件通常会告诉你失败原因,然后通过要素个数检查工作空间的问题。

      

下面是一些调试的建议:

建议1:当一个转换失败而你又不知道在哪儿出现问题或者你怀疑是某个特定的要素造成的,那么你可以通过要素检查错误原因,这样可以帮助分析日志。

建议2:当你尝试调试性能问题时保持日志定时开启。

建议3:通过空间日志集(FFS)鉴定错误要素,这样会比从源数据集中找到这个错误要素要容易很多。

建议4:通过工作空间的搜索来查找日志中问题所在,当工作区非常复杂的时候这个方法非常有用。

五、组织:

组织意味着高效,合作,规范,共享项目等等。

以下是模板共享目录

     

建议1:当你有一个固定的设计(布局,架构,转换)就可以创建模板,当你或者同事需要再次使用的时候就可反复使用这个模板。

建议2:对于一个大型的FME项目,坚持成立项目结构,并保留FME工作空间副本,也许在将来其他项目中会用到。

以上就是关于FME使用的25条基本建议,认真遵循这些规则,相信会对你学习使用FME非常有益。

注:以上内容是参照http://evangelism.safe.com/fmeevangelist99/内容翻译而来的,如有不清楚或者疑问的请参照原文。

猜你喜欢

转载自blog.csdn.net/fmechina/article/details/81160428