

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 目的地和路径过滤器
<a name="gw-destinations"></a>

 AWS IoT SiteWise Edge 中的目的地提供了一种灵活高效的方式来管理工业数据如何从边缘设备流向云端。本节介绍如何配置目的地、使用路径过滤器路由特定的数据流，以及如何为您的用例选择正确的目标类型。

您可以在支持 MQTT 的自托管、V3 网关和与托管的 AWS IoT SiteWise Edge 应用程序一起使用的网关上使用目的地和路径过滤器。Siemens Industrial Edge目标和路径过滤器不适用于 Classic Streams、V2 网关。

**Topics**
+ [了解 AWS IoT SiteWise 边缘目的地](#source-destination)
+ [了解 AWS IoT SiteWise Edge 目标的路径过滤器](#destinations-path-filters)
+ [添加 AWS IoT SiteWise Edge 实时目的地](destinations-real-time.md)
+ [使用 Amazon S3 添加 AWS IoT SiteWise 缓冲目的地](destinations-buffered.md)
+ [向 AWS IoT SiteWise Edge 目标添加路径过滤器](destinations-add-path-filters.md)
+ [管理 AWS IoT SiteWise 边缘目的地](destinations-manage.md)

## 了解 AWS IoT SiteWise 边缘目的地
<a name="source-destination"></a>

使用 AWS IoT SiteWise Edge 目的地来确定将源数据发送到何处。您可以根据所需的特定特征来选择数据目的地，例如成本效益、低延迟或存储要求。集成我们的合作伙伴或自定义应用程序捕获 AWS IoT SiteWise的设备数据，以便在边缘发布和订阅路径过滤器（主题）。然后，您可以在云端对设备数据进行建模、传输和存储。

**注意**  
要充分使用自托管网关上的所有目标功能，请升级到最新版本的 IoT SiteWise 发布者和 IoT SiteWise OPC UA 收集器。Classic Streams、V2 网关继续支持直播，以保持与现有设置的兼容性。有关更多信息，请参阅 [经典直播，适用 AWS IoT SiteWise 于 Edge 的 V2 网关](classic-streams-v2-gateway.md)。

**Topics**
+ [SiteWise 边缘目的地如何增强数据管理](#how-destinations-work)
+ [目标类型](#destination-types)
+ [比较网关版本之间的目标功能](#destinations-vs-publisher-component)
+ [目的地限制](#destinations-limitiations)
+ [SiteWise 边缘目的地的用例](#destinations-use-cases)

### SiteWise 边缘目的地如何增强数据管理
<a name="how-destinations-work"></a>

使用 Amazon S3 将 AWS IoT SiteWise 数据从边缘实时导出或批量导出。

目的地可增强您 AWS IoT SiteWise 环境的灵活性和可扩展性。目的地实施集中式数据管理模型，即数据源将数据发布到中央系统。目的地使用路径筛选器确定您的数据发送到哪里。目的地可以订阅多个路径过滤器。

支持 MQTT 的网关，无论是自托管的还是运行在上面的网关Siemens Industrial Edge，都使用 MQTT 进行本地通信，并带有默认的实时目的地，过滤器设置为。`#`这意味着，默认情况下，所有主题的所有消息都将发布到 AWS IoT SiteWise 实时目的地。有关更多信息，请参阅 [了解 AWS IoT SiteWise Edge 目标的路径过滤器了解路径筛选条件](#destinations-path-filters)。您可以在每个网关中添加一个实时目的地。

### 目标类型
<a name="destination-types"></a>

为网关配置目标时，您有两个主要选项：使用实时配置和使用 AWS IoT SiteWise Amazon S3 进行缓冲配置。每种目的地类型都有自己的一组设置和注意事项。

**AWS IoT SiteWise 实时设置**  
选择此选项可将数据直接发送到 AWS IoT SiteWise 热层存储，从而便于实时摄取和监控数据。实时设置管理数据流，尤其是在网关遇到云连接问题时。在连接丢失期间，数据会临时存储在网关本地。重新建立连接后，存储的数据将自动发送到云端。  
您可以调整数据发布过程的各个方面，例如要在本地存储的最大数据量、重新连接时向云端发送数据的速率以及在存储空间达到其容量后何时删除数据。  
有关 AWS IoT SiteWise 存储层的更多信息，请参阅[管理中的数据存储 AWS IoT SiteWise](manage-data-storage.md)。

**AWS IoT SiteWise 使用 Amazon S3 设置进行缓冲**  
此目标类型允许您在网关上本地缓冲数据，并定期将其分批发送到 Amazon S3 存储桶。数据以高效的 Parquet 格式存储，该格式已针对分析工作负载进行了优化。数据存入 Amazon S3 后，您可以将其导入 AWS IoT SiteWise 以进行存储、处理和分析。  
选择此选项可批量摄取数据，并以经济高效的方式存储历史数据。您可以配置您的首选 Amazon S3 存储桶位置，以及您希望将数据上传到 Amazon S3 的频率。您还可以选择在将数据摄取到 AWS IoT SiteWise后如何处理数据。您可以选择同时在 Amazon S3 SiteWise 和 Amazon S3 中提供数据，也可以选择自动将其从 Amazon S3 中删除。

### 比较网关版本之间的目标功能
<a name="destinations-vs-publisher-component"></a>

支持 MQTT 的网关中的目的地功能简化了数据流管理。目的地通过集中配置到各个端点的数据路由来简化数据管理。这种方法消除了对复杂的单个直播设置的需求，使整个系统更加灵活且更易于管理。

相比之下，Classic Streams、V2 网关、 SiteWise Edge 通过 AWS IoT Greengrass 流将数据从数据源传输到发布者，为每个数据源单独配置数据目的地。

使用 AWS IoT SiteWise 目标功能，可以整合发布者路由配置。目标配置允许您以集中方式管理目的地和路径过滤器。您可以根据需要轻松添加目的地、管理路径过滤器、删除不必要的过滤器或目的地。

此外，目标功能利用了 MQTT（消息队列遥测传输），这是一种广泛用于工业物联网应用的行业标准协议。采用 MQTT AWS IoT SiteWise 有助于更轻松地与各种设备和系统集成。

### 目的地限制
<a name="destinations-limitiations"></a>

目前 SiteWise Edge 网关上目的地的限制包括：
+ 支持 MQTT 的网关不支持数据处理包。
+ 数据类型支持仅限于 AWS IoT SiteWise 数据类型。有关启用数据类型转换的信息，请参阅[转换不支持的数据类型](string-conversion.md)。

### SiteWise 边缘目的地的用例
<a name="destinations-use-cases"></a>

SiteWise 边缘目的地用于各种应用程序。以下是一些关键示例：

**工业自动化***实时监控和预测性维护*  
在工业环境中，工厂车间的传感器和设备可以将数据发布到 SiteWise Edge。可以将目的地配置为筛选和路由相关数据，从而实现对机器性能的实时监控和分析。您可以使用路径过滤器订阅相关的 MQTT 主题，处理数据，然后发布处理后的数据。通过这种方式，您可以有选择地将处理过的数据路由到 AWS 云分析服务或本地系统。然后，制造商可以实施预测性维护策略，优化生产流程并减少停机时间。

**智能建筑***能源效率和占用率优化*  
楼宇自动化系统生成数据流，用于监视和控制建筑物的各个方面，例如暖通空调系统、照明和门禁控制。借 SiteWise 助 Edge，可以摄取、处理这些数据流并将其路由到不同的目的地。设施经理可以配置目的地以筛选和转发相关数据，从而实现能源效率措施和占用优化等高级功能，同时确保数据隐私和合规性。

这些用例演示了如何在各行各业中利用 SiteWise Edge 中的 “目的地” 功能来高效地摄取、处理和路由数据。这可以实现实时监控、预测性维护、能源效率和远程诊断等高级功能，同时确保数据隐私和合规性。

## 了解 AWS IoT SiteWise Edge 目标的路径过滤器
<a name="destinations-path-filters"></a>

**Topics**
+ [路径过滤器要求](#path-filter-requirements)
+ [路径过滤器的最佳实践](#create-effective-path-filters)
+ [OPC UA 服务器的路径过滤器](#path-filters-opcua)
+ [路径过滤器名称中的特殊字符](#path-filters-special-characters)

每个目标都配置为将数据路由到 AWS IoT SiteWise 或 Amazon S3。路径过滤器允许您在接收目的地的 MQTT 消息时选择要筛选的特定数据。路径过滤器代表数据流的逻辑名称，充当对所需 MQTT 主题的订阅。

在 MQTT 中，数据被组织成主题，这些主题是由正斜杠 () `/` 分隔的分层字符串。例如，设备可能会向主题发布温度数据`home/livingroom/sensor1/temperature`。这里，`home/livingroom/sensor1`表示传感器的路径或逻辑名称，`temperature`也是要发布的数据类型。

您可以使用路径过滤器通过通配符（`+`和`#`）订阅特定主题或一系列主题。通`+`配符匹配主题层次结构中的单个级别。例如，`home/+/sensor1/temperature`将匹配`home/livingroom/sensor1/temperature`和`home/bedroom/sensor1/temperature`。当在过滤器的末尾使用`#`通配符时，可以匹配多个级别。

您还可以在路径过滤器名称中使用 MQTT 规范中通常不允许使用的各种字符。这些字符在名称中使用时不起通配符的作用。 AWS IoT SiteWise 使用编码转换这些字符，以确保 MQTT 合规性，同时保留原始命名结构。此功能对于适应其他系统的现有命名约定特别有用。有关更多信息，请参阅 [路径过滤器名称中的特殊字符](#path-filters-special-characters)。

通过仔细选择适当的路径过滤器，您可以控制将哪些数据发送到特定目的地。使用路径筛选器根据物联网系统的要求定制数据流。

### 路径过滤器要求
<a name="path-filter-requirements"></a>

使用输入路径过滤器时 AWS IoT SiteWise 控制台，请记住以下几点：
+ 路径过滤器由新行分隔，每行代表一个单独的路径过滤器。
+ 单个路径过滤器的字节可以介于 1 到 65,535 之间。
+ 路径过滤器不能为空。
+ 不允许使用空值 (U\+0000)。
+ 一次最多可以输入 100 个路径过滤器或 65,535 个字符，以先达到的限制为准。
+ 网关上所有目的地的总路径过滤器限制为 20,000 个。
+ 您可以在路径过滤器名称中使用`%``#``+`、、和`$`字符，但是它们 AWS IoT SiteWise 会自动转换为 URI 编码。

### 路径过滤器的最佳实践
<a name="create-effective-path-filters"></a>

在为 AWS IoT SiteWise 目的地创建路径筛选器时，请考虑以下策略来有效管理数据。
+ 构造过滤器以反映您的设备层次结构。例如，在制造环境中`factory/+/machine/#`，捕获来自不同生产线的所有机器的数据。
+ 对设备类型、位置或功能使用特定的级别。例如 `factory/assembly-line/robot/temperature`。或者，在智能农业中`farm/+/crop/+/moisture`，监测不同田地上各种作物的水分含量。
+ 策略性地利用通配符：`+`用于单个关卡的变体`#`并捕获所有后续关卡。例如`building/+/+/energy-consumption`，跟踪建筑物中不同区域和楼层的能源使用情况。这假设第一个`+`捕获所有楼层，第二个`+`捕获所有区域。
+ 通过创建足够具体的筛选器来平衡特异性和灵活性，这些筛选器既要足够具体，可以捕获相关数据，又要足够灵活，可以适应未来的变化。例如，`site/+/equipment-type/+/measurement`允许在不更改过滤器结构的情况下添加新的场地或设备类型。

彻底测试您的过滤器，确保它们捕获预期的数据并与您的物联网系统的架构和目标保持一致。

### OPC UA 服务器的路径过滤器
<a name="path-filters-opcua"></a>

对于 OPC UA 服务器，您的路径筛选器必须与 OPC UA 标签名称相对应。路径过滤器的最终级别必须与 OPC UA 标签名称完全匹配。例如，如果您的 OPC UA 标签为`Device1.Temperature`，则路径过滤器可能`factory/line1/Device1.Temperature`是。您可以在前面的关卡中使用通配符，例如`factory/+/Device1.Temperature`在多条生产线上捕获标签。如果您的路径筛选器名称中有特殊字符，[路径过滤器名称中的特殊字符](#path-filters-special-characters)请参见以获取更多信息。

### 路径过滤器名称中的特殊字符
<a name="path-filters-special-characters"></a>

AWS IoT SiteWise 可容纳 OPC UA 等工业协议中常用的字符，而标准 MQTT 主题名称中通常不允许使用这些字符。此功能有助于更顺畅地将工业系统与基于 MQTT 的架构集成。

**注意**  
虽然我们的特殊字符处理有助于集成和迁移，但建议尽可能与新实现的标准 MQTT 命名约定保持一致，以确保更广泛的兼容性。

从工业来源接收数据时，使用特殊字符的 URI 编码对主题名称进行 AWS IoT SiteWise 标准化：
+ `%`变成`%25`（首先编码为转义字符）
+ `#` 变为 `%23`
+ `+` 变为 `%2B`
+ `$`变成`%24`（仅在主题开头时）

这种编码可确保包含这些特殊 MQTT 字符的源数据可以安全地用作 MQTT 主题名称，同时保留原始的工业命名惯例。

**Example : 路径过滤器名称中的特殊字符**  
以下是工业主题名称在 AWS IoT SiteWise 路径过滤器中可能如何显示的示例：  
+ `Factory1/Line#2/Sensor+3` 变为 `Factory1/Line%232/Sensor%2B3`
+ `Plant%A/Unit$1/Temp` 变为 `Plant%25A/Unit%241/Temp`
+ `Site1/#Section/+Node` 变为 `Site1/%23Section/%2BNode`

在中创建订阅或查看主题名称时 AWS IoT SiteWise，您将看到未编码的原始版本。编码会自动处理，以确保 MQTT 合规性。