关于基于组的变压器

一种基于组变压器是一个与组中的其他特征一起同时处理多个特征。

基于组的改造是一些例子:

  • AreaBuilder:FME可以创建多边形特征时,它们形成一个封闭的形状从线要素,但必须有一组这样的特征。的区域特征不能从一个单一的,非封闭,片线条的本身创建的。
  • StatisticsCalculator:所述StatisticsCalculator变压器计算整组的特征的属性的平均值,最大值和最小值。这是不可能在同一时间计算这些值的一个特征。
  • 部门间:计算一组线的交点基于组的重组下落入因为该组中的每一个输入特征影响输出。

分组行为(通过...分组参数)

对于基于组的变压器它来定义该组的成员是很重要的。默认行为是使用整个组的传入特征为单个组。

然而,基于组的变压器有一个特殊的群体通过参数。此参数允许您选择对哪些群体将要形成的属性。例如,一个部门间与本集团通过参数设置为“road_type”只会相交特征的属性“road_type”,其值匹配。

内存关注

正在被处理时它的每个特征占用一定量的系统资源。当特征在一大组同时处理,然后对系统资源的使用量的增加相匹配。

出于这个原因,基于组的变压器通常消耗更大量的资源比基于特征的变压器。这种效果可以通过使用参数可以减少诸如(在大多数基于组的变压器中)和“X第一”选项“输入由组有序”诸如“候选人第一”,“快船第一”,等等。

并行处理

许多基于组的变压器包括用于并行处理选项,这可以通过利用多个内核的计算机上帮助优化性能。看到关于并行处理欲获得更多信息。

输出和输出属性

当特征被作为一组处理,则输出可以是原始的功能,或者它可以是该组中的特征的合并。

当输出是几个不同的特征的组合,最变压器将删除源的属性,因为没有办法知道哪个源的属性时,有许多特征的值应被应用。这两个例外是:

  • 使用组通过:当你做到这一点,本集团按属性一般都转嫁到了输出功能,因为从定义所有的源值将是相同的(这是如何形成的组)。
  • 使用列表:很多变压器有一个列表选项,这样你就可以保持所有值跟踪源的属性。

特点控股(拦截变压器)

默认情况下,FME一次处理一个特征;读取功能,从变压器传递到变压器,然后 - 终于 - 对一个作家。

然而,一些变压器工艺特点为一组和保持功能,直到他们准备好开始处理。这些“功能保持”(或“拦截”)变压器引起的特征的流动将被暂时停止,直到它们完成其处理。大多数基于组的变压器都属于这一类,如果他们必须自己做自己的处理前凝聚起各组中的数据。

这种变化的特征的流可以被用于控制在其中的数据被处理和实际上的顺序FeatureHolder变压器是专为持有功能,无需实际做任何改造。

功能保持变压器的一些其他的例子包括:

  • 分拣机:这个变压器需要所有输入数据收集起里面才可以做订货功能,然后输出他们的工作。在这种情况下,各个功能以任何方式都没有改变,但他们的数据流的方式顺序改变为通过变压器会结果
  • NeighborFinder:像所有其他的空间处理上变压器,比较功能给对方,这台变压器需要的所有功能已经到达之前就可以开始确定哪些功能互为近邻。

也可以看看:

基于特征的变形金刚