新冠疫情持续不断地打乱着我们正常的生活节奏,并导致个人、组织和政府的政策、优先事项和活动发生了重大变化。但我们看到的却是,这些变化被证明是技术和创新的催化剂。
特别是对于工业企业,数字化转型的需求已经越来越强烈。更多的投资投入到了为产品创建数字映射并实施数字主线解决方案上。随着互联的工业物联网设备数量的激增,越来越需要对通过这些设备传输的大量数据进行管理。用于解决运营效率和提供更好的服务产品的智能工厂的新用例导致生成大量的时间序列数据。因此,现代工业物联网解决方案能够摄取和管理大量高速数据变得比以往任何时候都更加重要。
这篇博文将介绍ThingWorx中的不同存储解决方案如何帮助您管理工业物联网数据。
首先来了解一下需要由ThingWorx平台管理的物联网数据类型:
图 1:显示不同类型物联网数据的图表。
1.来自互联设备和系统的数据,例如:
▪ 带有时间标记的高速遥测数据,可发送温度和压力等传感器读数
▪ 当您打开与互联的设备的隧道会话以远程访问和控制互联的智能设备时传输的远程访问字节流
▪ 为远程软件内容或设备管理用例来回传输的文件或文件包
▪ 从销售系统、ERP、MES 创建并通过平台访问的数据
2.平台内产生的数据,例如:
▪ 应用程序和配置数据
▪ 数字映射模型数据、元数据等
让我们更深入地研究一下时间序列数据:
时间序列数据是任何带有时间标记的数据。它是在连续间隔时间点获取的数据序列。在实施工业物联网的情况下,捕获时间序列数据对于分析历史数据、监控当前数据以及预测系统和机器的未来行为至关重要。
图 2:显示典型时间序列数据的图形表示。
时间序列数据有如下示例,例如:
▪ 一个地理区域内有100,000台智能互联泵被监测泄漏和振动情况,其中每台泵每五分钟向ThingWorx报告20个属性值。
▪ 一个拥有250台受监控机器的智能工厂,每台机器每秒向ThingWorx发送60个允许捕获的属性更新, 从而获取整体设备效率 (OEE)、性能和制造生产率。
▪ 智能城市中的数百万台设备会间歇性地发送有关各种城市交通和停车灯的数据。
▪ 根据环境变化或触发器,来自不同天气记录传感器的天气数据。
ThingWorx如何管理时间序列数据?
在ThingWorx中,工业物联网数据存储在持久性提供程序中,该提供程序支持连接到数据存储并具有对该数据执行CRUD操作的能力。ThingWorx可以实施多个持久性提供程序,使您能够选择适合您的用例的数据库选项。ThingWorx能够利用多个数据存储,提供极大的灵活性,能够满足您的IT偏好和投资。
图 3:架构图显示了ThingWorx平台支持的不同持久性提供程序。
ThingWorx将其模型数据、系统和元数据以及其他关系数据存储在模型提供程序(例如 H2、PostgreSQL、Microsoft SQL Server和Azure SQL数据库)中,并将其遥测数据(称为数据提供程序)存储在专用时间序列数据库中,即InfluxDB。请注意,虽然RDBMS数据库可用作模型和数据提供程序,但对于大量时间序列数据管理,PTC建议使用专用数据提供程序。
PTC与InfluxData合作,将InfluxDB作为我们唯一受 ThingWorx支持的专用时间序列数据库。该数据库可以实现高速读取大量物联网时间序列数据并执行复杂且有时限的查询以从数据中发现有意义的见解。此外,它还能实现高强度数据压缩和数据缩减采样,以降低存储大量时间序列数据的成本。
下图显示了不同持久性提供程序的ThingWorx规模测试结果。
图 4:图表显示了使用ThingWorx平台的不同持久性提供程序解决方案的每秒属性写入数和HTTP操作率。
PTC与InfluxData一起制定了强大的路线图计划,以进一步利用InfluxDB 2.X中引入的名为“Flux”的新查询语言的功能,以在ThingWorx平台上实现更多的原生时间序列功能。