安全软件亚搏在线博客
作者:
爱尔兰马克

谷歌
获取博客新闻稿

交付通过饲料燃烧器

关于FMEγ2月7日二千零一十九γ爱尔兰马克

下一代:FME服务器2019的企业级自动化

图片形式的自动装置!很荣幸能够通过这个博客展示FME的功能。有时新功能非常重要,即使是小小的改变。有时候一个新功能真的很棒,几年后我们会想,如果没有它,我们是怎么做到的。

但有时,新的功能需要如此巨大的飞跃,以至于它将旧的技术提高了许多数量级。

FME服务器自动化就是这样一种能力。

为什么?考虑一下之前发生的事。即使是通知的概念也非常混乱,当我能够在我们的FME服务器培训手册中以清晰和逻辑的方式描述它们时,我非常高兴。大约花了三年的时间来修正,但我最终觉得我已经尽可能地解释了功能。

但是,FME实际上就是简化复杂的想法。虽然通知很复杂,我们的功能不必太强大。这就是为什么我们想出了一个新的工具-自动化- 2019年FME

正如你所看到的,只是通知而已,再加上更多…

什么是自动装置?

自动化是使用FME服务器自动化数据驱动工作流的一种方法。亚搏在线这包括通知,但也包括计划的任务和系统事件。系统事件(如我们将看到的)是有关服务器上发生的管理操作的通知。

因此,自动化将许多不同的功能组合成一个,新组件。

但是,除了绘制一组有用的函数外,使自动化如此强大的是界面。它使用一个直观的点击,基于web的界面以图形化方式定义自动化,像这样:

自动创建画布

如果您了解如何使用流程图样式工具(是,就像FME工作台)那么使用自动化将非常简单。让我们看看如何开始…

注意:我用测试版拍了这些截图,所以,正如营销人员所说,所有展示的图片仅用于说明目的。实际的产品可能在颜色和术语上有所不同!

从自动化开始

当您在FME服务器菜单上选择自动时,打开一个对话框,您可以在其中打开现有的自动操作,或者创建一个新的:

从自动化开始

创建新的自动化将关闭对话框并设置空画布(是,就像我们称之为画布的工作台)。顶部有一个菜单和工具栏:

自动化的菜单

以及底部的一组小按钮:

这些按钮是定义a的工具来源,安行动,和A目的地(同样,此术语可能会因发布而更改)。它们是拖放的意思是我可以这样放置它们:

现在让我们来看看这些都是什么意思…

来源

来源为自动化提供输入。正如我提到的,这是各种工具的组合,所以这可能是一个预定的任务,一个系统事件(稍后详细介绍),或多种通知类型之一。通过单击对象,在右侧打开一个菜单,供您选择源类型和参数:

自动源配置

在这个例子中,我添加了一个计划任务。当那个源被触发时,反过来,它会触发下一个处理步骤,通常是行动

行动

现在我们把an行动下来。首先要注意,对象有输入/输出端口,所以我们可以很容易地把动作和源连接起来:

检查动作参数,我可以看到许多选项:

显然,运行工作区是关键工具。它允许我通过一个熟悉的对话框运行任何工作区:

自动操作配置

……,当然,将FME工作台及其所有500多个变形金刚与您的在线工作流程联系起来(但这是另一回事)。亚搏在线

最重要的是,检查运行工作区操作上的成功/失败输出端口:

这意味着我可以很容易地采取行动,而不必手动设置主题(或出版物,出版商,订阅,或用户)!

因此,我可以将一个工作区链接到另一个工作区,或者,如上所述,将失败的结果发送到日志消息操作。

日志消息操作内置了一个出色的文本编辑器(单击放大以下图像):

…另外,我还可以选择在哪里写文件;例如,我将日志文件写入$(fme_sharedesource_log)/trainingupdatelog

另外两个动作是合并和过滤,但我很快就会谈到这些。现在让我们看看目的地……

目的地

目的地就像是自动化的作者。你可以想象,其中大多数是通知类型的目标:

自动目标配置

所以目的地是由来自动作的传入警报触发的。或者——我想——你可以完全跳过这个动作,直接从一个地方到另一个地方。

储蓄和使

自动化完成后,可以保存(包括多个标记)并启用:

考虑一下,尽管相似,这不像工作台及其运行按钮。这些是处理来自其他进程的输入的自动化任务,它们随时可能被触发。在开发过程中禁用工作流是很重要的,亚搏在线只有准备好了才启用它。

启用按钮允许您执行此操作。实际上,它不仅实现了自动化,但它也是只读的。只有再次禁用自动化后才能进行进一步编辑。

这样,在进行编辑的同时亚搏在线无法触发工作流。此外,它允许作者出于其他原因暂时禁用自动化。

事件的钥匙

在图形界面中,一个重要的要求是每个对象都要从前一个对象接收信息。采用FME工作台。如果我在一个转换器(例如AreaCalculator)中生成一个属性,该属性将按顺序提供给下一个转换器(例如StatisticScalCalculator):

这里也是一样。使用我们称之为的东西在自动化中的组件之间传递信息事件的钥匙

最好的解释是举个例子。下面是运行工作区操作的配置对话框:

这就是操作对象从源对象接收信息的方式。可以传递关于事件的多条信息。在运行工作区操作的情况下,这些事件键使用—您已经猜到了—发布的参数传递到工作区中。

让我们想想这到底意味着什么。传统的通知可以将信息传递给已发布的参数,但不是简单的方式。同时,传统通知只将电子邮件内容作为原始JSON传递。在这里,您可以选择接收(例如)电子邮件主题或发件人作为实际值。它没有被隐藏在一个复杂的JSON字符串中,需要在您的工作区中进行解码!

可用的事件键取决于使用的源类型。电子邮件源将提供电子邮件主题(例如),而目录监视源将提供文件名和路径。

目标的参数还可以从事件键接收信息:

这再次使得在组件之间传递信息变得更加容易,而不必求助于JSON。

过滤器和合并

现在我们回到动作对象,特别是过滤器和合并操作。

过滤器动作是测试仪变压器的一个非常基本的版本。它允许您执行基本测试:

因为它具有访问事件密钥的相同功能,我可以(例如)测试接收电子邮件的“发送到”地址,并相应地重定向。在上述自动化中,我决定是运行一个工作区还是另一个工作区,基于过滤操作(比如传入的电子邮件地址)。

合并操作显然是相反的:

不明显的是,不过,这就是为什么合并是必要的。

原因是一个源可以触发多个操作;例如在上述自动化中,一个传入的电子邮件触发两个不同的工作区。如果两个工作区都直接连接到目标,然后两者都会触发那个目的地。将有两个输出通知。

但是,如果要求一个输出通知,然后可以使用合并操作。它不仅合并工作区结果,但在两个工作区都完成之前,它一直保持着整个过程。可以将它看作工作台中的一个组合FeatureJoiner和FeatureHolder。

所以,简而言之,合并操作是一种在自动化中控制操作流的方法。

系统事件

源的输入类型是计划任务,各种类型的通知,以及系统事件。您将熟悉的通知和计划任务,但2019年的系统事件还是新的。

系统事件是——显然是——通知服务器整体上发生了某个操作:

它们可能更多的是管理警告,而不是与数据处理相关的任何警告。事件等最明显的目的地是向系统管理员发送电子邮件;例如,让他们知道FME许可证快到期了,或者已经过期了。

通知的好处

与传统通知设置相比,自动化的好处很容易识别。

首先,输入和输出的范围大于传统的发布者和订阅者。下一步,由于图形界面的存在,设置更容易实现,也更容易可视化。最后,由于主题都是自动处理的,因此整个通知工作流大大亚搏在线简化了。

对于现有用户,另一个好处是来源和目的地可以是主题。因此,您可以采用新的自动化并将其与现有的通知设置相关联。如果您仍然希望使用通知设置,则通知设置仍然存在。

另一个可能不明显的特征是,该功能专门设计为并行操作。如果一个源电子邮件(例如)启动了四个独立的工作区:

…然后,FME将每个工作区分配给不同的引擎。自动化工具提交作业并等待它们完成(使用Merge操作)。

另外(继续我的例子)如果四封邮件同时到达,这将启动四个独立的自动装置。这些自动装置中的每一个都可以在总共16个不同的引擎上运行4个作业。所以我不一定有一排工作;我得到的工作和我现有的引擎一样多。

还有一件事。自动化可以保存在FME服务器项目,因此,它们可以更容易地与其他用户共享。这不是什么新鲜事,因为你可以通过通知来做到这一点。然而,什么是新的…对FME服务器项目的支持将很快进入FME中心!这将是另一种与其他用户共享自定义FME创建的方式。

总结

当我第一次尝试自动化时,我很快创建了一个工作流,向我发送关于培训课程更新的每日报告。亚搏在线它按计划运行一个工作区,将输出写入slack(slackconnector transformer),并通过电子邮件发送通知给我。这样设置的感觉是如此的正确和直观,不要乱弄通知主题。

作为诗人济慈说过“然后我觉得自己像是天空的守望者,当一颗新行星游进他的视野!

将其与服务器中的新工作区查看器相结合,而且界面看起来越来越脱离这个世界!我认为这是一个惊人的进步,展示了我们将在不久的将来看到更多的界面。

如果你想看到一些自动操作的例子,然后看看我们最近的网络研讨会演讲记录。此外,请随意建议任何特定的自动化你想看看。我们有一个安全的资源来处理演示场景,亚搏在线我们很乐意把你的想法付诸实践。

PS:以下是Dale对新自动化功能的看法: