实时分析可以对通过源导入的数据进行处理,从而对其接收的每条消息进行分析。 实时分析尤其适用于转换数据、添加地理围栏和事件检测。 分析会以一个或多个输出结尾,例如将数据存储在要素图层中或发送电子邮件警报。
实时分析的示例
- 作为应急行动主管,您需要实时追踪外业工作人员的当前位置并对其进行存档、在工作人员位于禁区内时发送警报,以及计算外业工作人员与为他们分配的操作基地的距离。
- 作为石油和天然气公司的供应链分析师,您需要连接到自动识别系统 (AIS) 数据流,以监控船只、计算预期到达信息并了解船只何时位于感兴趣区域内部或外部。
- 作为管理大量传感器的环境科学家,您需要将观测值存档,以供以后在大数据分析中进行处理。
实时分析的组成
实时分析包含四个组成部分:
无状态处理与有状态处理的比较
在实时分析中,大多数工具将以无状态的方式运行,这意味着它们会对接收到的每个观测值进行操作,且不会保留任何之前观测值的内存记录。 然而,有几种可用的工具将以有状态的方式运行,且它们将对轨迹而非各个观测值进行操作。
有状态工具会针对每个轨迹收集多个连续的观测值,以比较每个轨迹中的空间和/或属性条件并检测更改。 一旦系统接收到各个轨迹的观测值,就会将其添加到对应该轨迹的小型观测值缓存中。 例如,可将其用于检测轨迹是否已经进入或退出了某个地理围栏,方法是将最近的观测值与之前的观测值进行比较。
可用的有状态工具包括:
有状态工具无法将无限数量的观测值保留在内存中,因此为了避免内存资源的过度消耗,每个轨迹的缓存都会周期性地清除早于指定时间的观测值。
部分有状态工具允许您使用目标时间窗参数来指定清除持续时间。 一旦清除开始,系统将会从内存中清除掉早于目标时间窗参数中指定值的观测值。 请注意,清除仅会影响到内存中为进行有状态处理而保留的观测值。 清除不会影响已发送到输出的任何观测值,并且将不会删除数据。
应将目标时间窗参数设置为等于或大于任何单个轨迹的观测值之间的最长预期时间段的值。 例如,如果车辆每 5 分钟报告一次其所在位置,并且您使用“按几何过滤”工具来检测每辆车何时进入特定区域,则您需要将过滤器上的目标时间窗值设置为略微超过 5 分钟,以确保在执行清除操作之前能够接收到多个观测值。 将其设置为小于 5 分钟将导致一个缓存仅可面向每个轨迹包含一个观测值,从而导致无法确定车辆与地理围栏之间的空间关系是否已从外部转变为内部。 “计算动态统计数据”、“检测事件”、“按几何过滤”和“连接要素”工具都具有目标时间窗参数。
地理围栏
地理围栏是实时空间分析的一种典型形式,其中系统将根据感兴趣区域(通常是面区域)对要素(通常是追踪点)进行评估。 最常见的是对基于点的观测值进行分析,以确定这些值是否已进入或退出了虚拟周界。
在多个实时和大数据分析工具中,可以执行地理围栏以识别目标源或数据源中的要素与一组空间连接要素或地理围栏之间可能发生的某些空间关系。 用作地理围栏的要素必须连接到地理围栏工具的连接端口。 地理围栏可以为点、线或面。 可用的空间关系将取决于输入目标的几何类型和连接数据。
支持地理围栏的实时和大数据分析工具包括:
有关其他详细信息和使用案例示例,请参阅地理围栏分析。
动态地理围栏
在多个实时分析工具中,都可以执行动态地理围栏以识别目标源中的要素与另一个连接源(地理围栏)中的一组要素之间的空间关系(这两者均为实时更新或近乎实时更新)。 执行地理围栏的工具将使用任何给定追踪 ID 的最近观测值作为地理围栏。
- 如果将源连接到连接端口,则系统将基于连接源中的传入要素对连接要素(地理围栏)进行持续刷新。 在这种情况下,系统将根据目标源和连接源中不断变化的要素来动态执行地理围栏。
- 使用动态地理围栏时,需要设置连接时间窗参数。
- 如果连接源没有标记为 END_TIME 的字段,并且连接要素的最后已知观测值早于指定的连接时间窗,则系统会将该观测值从工具的内存中清除,且不会将其包含在分析中。
- 如果连接源具有标记为 END_TIME 的字段,则该要素将根据标记为 END_TIME 的字段中的值或在连接时间窗关闭时(以先到的时间为准)从地理围栏存储中老化。
支持动态地理围栏的实时分析工具包括:
注:
实时分析中支持的地理围栏的最大大小不能超过 768 MB。
有关其他详细信息和使用案例示例,请参阅地理围栏分析。