对比分析

使用说明

对比分析是对两个具有相同结构的数据集进行空间位置对比和属性数据对比,返回差异要素数据集(FeatureRDD)。

应用场景如通过对比当年和历年的土地利用数据,可以得到土地利用的变化情况。

ComparativeAnalyst

分布式对比分析提供普通【对比分析】和【DSF对比分析】两种功能,差别在于输入的数据源不同:

【对比分析】能够输入从多种矢量数据源读取的数据集,如SHP、PostGIS、Oracle等;
【DSF对比分析】仅能够输入从SuperMap DSF数据源中读取的数据集。

若使用DSF作为分布式分析数据源,能够提高分析效率,执行分析的两数据源需要具有相同的地理分区索引,算子结果输出要素数据集。

对两个要素数据集进行对比分析。返回被对比数据集中变化的对象和参考数据集相比于被对比数据集中新增的对象。
如果设定了有效的要素唯一字段 (referenceID -> comparedID), 则会使用 ID 字段值进行对象的对比,相同 ID 值的要素对象进行空间和属性对比,如果一个数据集中存在另一个数据集中不包含的 ID 记录,则会直接返回这部分记录;

如果没有设定有效的要素唯一字段 (referenceID -> comparedID),则会对两个数据集空间位置进行对比,相同空间位置的数据(或空间相交区域的数据)会进行空间和属性对比,如果一个数据集中存在另一个数据集中对象位置没有的数据,则会直接返回这部分记录。

结果数据集中包含一个 CompareCode 字段,CompareCode 字段值可以为 1,2,3,-1,-2:

  1 表示仅空间变更(属性字段值相等)
 2 表示仅属性变更(空间几何对象相等)
 3 表示空间属性同时变更
 -1 表示参考数据集中找不到与被对比数据集中相同 ID 或空间相交的记录,即被对比数据集中被删除的记录
 -2 表示参考数据集中含有被对比数据集中不存在相同ID或空间相交的记录,即参考数据集中新增的记录。

对于 CompareCode 为 1,2,3,-1 时,返回的空间对象为被对比(comparedRDD)对象;
对于 CompareCode 为 -2 时,返回的空间对象为参考(referenceRDD)对象 如果通过要素唯一字段 (referenceID -> comparedID)进行对比,结果数据集中会保存一个 ID 字段,用于表示结果对应的源要素对象。

参数说明

【对比分析】和【DSF对比分析】参数相同:

参数名 默认值 参数释义 参数类型
参考数据集 参考数据集,比如当前年份的土地利用数据 FeatureRDD
被对比数据集 被对比数据集,比如历史年份的土地利用数据 FeatureRDD
参考数据集的唯一ID字段名称
(可选)
参考数据集的唯一ID字段名称,可以为空 String
被对比数据集的唯一ID 字段名称
(可选)
被对比数据集的唯一ID 字段名称,可以为空 String
进行属性字段值对比的字段名称映射
(可选)
进行属性字段值对比的字段名称映射,key 值为参考数据集中的字段名称,value 为 被对比数据集中的字段名称。如果为空,则只对比两个数据集中名称相同的字段 MapString
参考数据集中需要保存的字段名称
(可选)
参考数据集中需要保存的字段名称,如果为 null ,则不保存操作数据集中的字段 String
被对比数据集中需要保存的字段名称
(可选)
被对比数据集中需要保存的字段名称,如果为 null,则不保存被对比数据集中的字段 String
节点容限
(可选)
0.0 几何对象对比时的节点容限。默认值是 0.0。当容限小于 1.0e-10 时,如果数据集的坐标系为地理坐标系时,将使用1.0e-7 的节点容限,当坐标系为空或投影坐标系时,使用 1.0e-2 的节点容限。 Double