实时数据流编程中模式驱动反应的组合制造技术

技术编号:35676680 阅读:9 留言:0更新日期:2022-11-23 14:15
本公开涉及实时数据流编程中模式驱动反应的组合。一种技术实现了数据流图,获取许多数据输入流,并将这些输入转换为多个输出流。数据流图可以执行模式匹配。该技术通过跨连接的输入数据流的模式匹配的组合来实现反应。将输入序列与特定输入模式匹配的完全性可以被表征为具有至少三个不同的程度,例如冷(尚未匹配),温(例如,最小匹配)和热(例如,最大匹配)。要匹配的输入模式可以具有可变长度,包括零长度或无限或任意大的长度。数据流可以基于推送或基于拉取,也可以是组合,并且可以根据状态而改变。状态而改变。状态而改变。

【技术实现步骤摘要】
实时数据流编程中模式驱动反应的组合
[0001]分案申请说明
[0002]本申请是申请日为2017年03月23日、申请号为201780019786.3(PCT国际申请号为PCT/US2017/023911)、名称为“实时数据流编程中模式驱动反应的组合”的专利技术专利申请的分案申请。


[0003]本公开涉及实时数据流编程中模式驱动反应的组合。

技术介绍

[0004]本专利技术涉及计算领域,更具体地涉及实时数据流编程中模式驱动反应的组成,其可以用于边缘计算以处理由工业机器生成的大量数据。
[0005]传统的企业软件应用程序托管依赖于数据中心或“云”基础设施来利用规模经济和系统效率。然而,这些数据中心可能任意地远离物理操作点(例如,工厂、仓库、零售店等),企业在这些地方进行其大部分业务操作。工业物联网(IIoT)是指依赖于具有传感器的物理操作仪器的设备或用例集合,这些传感器跟踪频率非常高的事件。
[0006]许多行业的工业机器都属于这种物联网(IoT),包括制造业、石油和天然气、采矿、运输、电力和水力、可再生能源、医疗保健、零售、智能建筑、智能城市和联网车辆。尽管云计算取得了成功,但存在许多缺点:将所有数据发送到云存储是不切实际的,因为连接可能并不总是存在,带宽不够,延迟变化太大,或者即使带宽存在但成本太高。即使连接、带宽和成本都不是问题,也没有实时决策并且预测性维护可能导致对机器的重大损害。
[0007]因此,需要改进的计算系统、架构和技术,包括改进的边缘分析和数据流编程,以处理由工业机器生成的大量数据。

技术实现思路

[0008]一种技术实现了数据流图,获取多个数据输入流,并将这些输入转换为多个输出流。数据流图可以执行模式匹配。该技术通过跨连接的输入数据流的模式匹配的组合来实现反应。将输入序列与特定输入模式匹配的完全性可以被表征为具有至少三个不同的程度,例如冷(尚未匹配)、温(例如,最小匹配)和热(例如,最大匹配)。要匹配的输入模式可以具有可变长度,包括零长度或无限或任意大的长度。数据流可以基于推送或基于拉取,也基于其组合,并且可以根据状态而改变。
[0009]在具体实现中,数据流编程技术用于边缘计算系统。一种方法在边缘实现智能。功能包括:在网关设备或嵌入式系统上托管的软件层中通过传感器数据触发。软件层连接到局域网。软件层可以访问服务、应用程序和数据处理引擎的存储库。通过软件层提供的表达语言将传感器数据与特定条件出现的语义描述相匹配。通过连续执行表达式自动发现模式事件。智能地组合由软件层管理的跨网络嵌入式系统和跨网关设备的服务和应用程序,以链接应用程序和分析表达式。根据资源可用性优化应用程序和分析的布局。监控软件层的
运行状况。将原始传感器数据或表达式结果存储在本地时间序列数据库或云存储中。可以对服务和组件进行容器化,以确保在任何网关环境中平稳运行。
[0010]在物联网(IoT)数据源处启用边缘智能。系统为实时边缘分析和应用程序提供对于IoT设备传感器数据的丰富的访问(流或批处理模式,或两者)。该系统包括一个高效且富有表现力的计算机语言,用于通过在低内存占用机器中运行的高性能分析引擎,执行分析功能和表达式。该系统允许将聚合数据发布到云以进一步进行机器学习。该系统包括用于开发边缘应用程序的软件开发工具包。基于云的管理控制台允许管理边缘部署、配置、应用程序和分析表达式。
[0011]边缘基础设施和平台的具体实现是FogHorn Systems公司。(FogHorn)。FogHorn网站www.foghorn

systems.com、出版物(包括白皮书、用户指南、教程、视频和其他)以及关于FogHorn技术和产品的其他出版物通过引用并入本文。
[0012]FogHorn提供平台以为工业和商业物联网(IoT)数据提供边缘智能。数百亿工业和商业IoT设备产生的数据量将足以压倒整个互联网。FogHorn平台在IoT数据产生的地方来
‑‑
网络边缘处理、分析和响应IoT数据。FogHorn的“智能边缘”软件平台可实现前所未有的自动化水平、运营效率、成本节约等等。
[0013]工业物联网(IIoT)由互联的工业和商业设备组成,如传感器、机械和计算机。IIoT的目标是跨分布式企业实现更好的设备控制、数据管理、机器自动化和运营效率。公司可以在边缘应用雾计算,以利用实时分析和自动响应捕获绿色地带IIoT机会,同时利用云计算进行系统级管理和优化。如果添加额外的计算资源不可行,FogHorn边缘计算平台还设计为在现有可编程逻辑控制器(PLC)(例如,棕色地带机会)中运行。棕色地带指的是新系统的实现以解决信息技术(IT)问题领域,同时考虑已建立的系统。新的软件架构考虑了现有和正在运行的软件。
[0014]边缘智能平台是一种基于雾计算概念的基于软件的解决方案,其可将数据处理和分析扩展到靠近IIoT设备所在的边缘。保持与边缘设备的紧密接近,而不是将所有数据发送到远程集中式云,最大限度地降低了延迟,从而实现最大化性能、更快的响应时间以及更高效的维护和运营策略。它还显著降低了总体带宽要求和管理广泛分布式网络的成本。
[0015]专注于边缘IIoT操作降低了整体带宽需求,并能够立即自动响应时间敏感条件。工业界正在增加数十亿台新的IIoT设备,这些设备每天总共会产生数拍字节的数据。将所有这些数据发送到云不仅成本过高,而且还会产生更大的安全风险。边缘操作可确保更快的响应时间、降低风险并降低总体成本。
[0016]2015年8月27日提交的美国专利申请62/210,981和2016年8月29日提交的美国专利申请15/250,720通过引用并入本文并描述了边缘计算环境和平台。2017年3月23日提交的美国专利申请15/467,306通过引用并入本文,并描述了用于实时数据流的高效状态机。2017年3月23日提交的美国专利申请15/467,318通过引用结合于此,并描述了用于实时数据流编程语言的工具和方法。
[0017]在一种实现中,一种系统包括:多个代理,每个代理连接到传感器,其中每个代理从传感器接收数据(例如,流数据);以及数据处理组件包括代理连接到的数据总线。数据处理组件通过形成一系列互连的转换将输入流转换成输出流。转换可以包括模式匹配、计算和其他操作。每个转换可以包括一个或多个输入,每个输入给定至少一个外部数据源或转
换器作为参考;一个或多个输出,每个输出给定至少一个外部数据接收器或转换器作为参考。尝试将输入模式与输入序列匹配的结果可以具有至少三种不同的状态或完全程度。
[0018]在另一实现中,一种方法包括:互连多个代理和传感器,其中代理连接到传感器并从传感器接收数据流;通过一系列互连的转换将来自传感器的输入流转换或转变成输出流。每个转换包括:一个或多个输入,每个输入给定外部数据源或转换器作为参考;以及一个或多个输出,每个输出给定外部数据接收器或转换器作为参考。对于每个输入,都有应用于输入的模式,以过滤、收集和本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种系统,包括:多个代理,每个代理耦合到传感器,其中每个代理接收来自传感器的数据;数据总线,所述数据总线耦合到所述多个代理;以及数据处理器,所述数据处理器耦合到所述数据总线,其中所述数据处理器通过形成一系列互连的转换将输入流转换成输出流,每个转换包括:一个或多个输入,每个输入被给定作为外部数据源或转换器中的至少一个的参考,一个或多个输出,每个输出被给定作为外部数据接收器或转换器中的至少一个的参考,以及对于每个输入,要应用于该输入的模式,以过滤、收集和组织原始输入为更有用的、部分处理的形式,以及移除错误的输入,其中至少一个代理包括:输入队列,所述输入队列包括计算机存储器中的第一存储器位置,其中输入队列在所述第一存储器位置中存储要处理的令牌的先进先出序列,以及与所述队列中的每个令牌相关联的时间戳,该时间戳指示相关联的令牌进入所述输入队列的时间,并且所述令牌由所述输入队列通过网络接收;驱动器,所述驱动器被耦合到所述输入队列,其中所述驱动器以不回溯的方式处理所述输入队列中的令牌,并识别与一个或多个预定输入模式匹配的令牌序列中的模式,并且在识别到匹配的预定输入模式时,生成传出事件输出;输出队列,所述输出队列被耦合到所述驱动器,包括所述计算机存储器中的第二存储器位置,其中所述输出队列在所述第二存储器位置中存储由所述驱动器生成的所述输出事件的先进先出序列;状态表,所述状态表被耦合到所述驱动器,其中所述状态表以状态表格式存储所述预定输入模式;以及状态栈,所述状态栈被耦合到所述驱动器,包括所述计算机存储器中的第三存储器位置,其中所述状态栈在所述第三存储器位置中存储帧的后进先出顺序存储,并且帧包括转换状态号、符号和截止日期。2.如权利要求1所述的系统,其中尝试将输入模式与输入序列匹配的结果具有至少三种不同的状态,所述至少三种不同的状态包括:在所述输入模式的最小输入匹配之前,所述结果将处于第一状态,在匹配所述最小输入之后并且在匹配最大输入之前,所述结果将处于第二状态,在匹配所述最大输入之后,所述结果将处于第三状态。3.如权利要求2所述的系统,其中所述第一状态被称为“冷”状态,所述第二状态被称为“温”状态,并且所述第三状态被称为“热”状态。4.如权利要求2所述的系统,其中数据流动是基于推送的方式从传感器流向代理的,并且当代理的所有输入至少处于所述第二状态时,所述数据流动变为由代理基于拉取的方式从传感器流动。5.如权利要求2所述的系统,其中数据流动是基于推送的方式从传感器流向代理的,并且当所述传感器的一个或多个输入处于所述第三状态时,所述数据流动变为由代理基于拉取的方式从传感器流动。
6.如权利要求2所述的系统,其中数据流动是基于推送的方式从传感器流向代理的,并且当代理的所有输入至少处于所述第二状态时且当所述传感器的一个或多个输入处于所述第三状态时,所述数据流动变为由代理基于拉取的方式从传感器流动。7.如权利要求6所述的系统,其中触发表达式的结果处于所述第二状态。8.如权利要求2所述的系统,其中代理加速其处于所述第二状态的传感器,从而迫使每个这样的传感器认为其模式完全匹配并因此变为处于所述第三状态并产生其输出,从而有效地允许代理从其传感器中提取数据。9.如权利要求1所述的系统,其中每个转换包括触发表达式,其用于确定何时评估过滤表达式。10.如权利要求1所述的系统,其中所述触发表达式被定义为节点树,并且每个节点是以下各项中的至少一个:对所述输入中的一个输入的引用,超时,以单位时间的时间间隔给出,二进制连接运算符,包括至少两个子节点,每个子节点由另一个触发表达式节点表示,以及二进制分离运算符,包括至少两个子节点,每个子节点由另一个触发表达式节点表示。11.如权利要求9所述的系统,其中每个转换包括过滤表达式,其中所述过滤表达式在匹配输入的域中指定,并且所述过滤表达式产生布尔结果,所述布尔结果确定转换何时将产生输出。12.如权利要求1所述的系统,其中输入模式匹配可变长度的输入序列,所述可变长度包括零长度或无限长度。13.如权利要求1所述的系统,其中允许绝对长或开放式模式有效地用于转换。14.如权利要求1所述的系统,其中,所述传感器中的至少一个是将物理属性转换为流式传输的数字量的硬件设备。15.一种方法,包括:互连多个代理和传感器,其中所述代理被耦合到所述传感器并从所述传感器接收数据流;通过一系列互连的转换将来自所述传感器的输入流转换成输出流,其中每个转换包括:一个或多个输入,每个输入被给定作为外部数据源或转换器的参考,一个或多个输出,每个输出被给定作为外部数据接收器或转换器的参考,对于每个输入,要应用于该输入的模式,以过滤、收集和组织原始输入为更有用、部分处理或匹配的形式,并移除错误的输入,触发表达式,用于确定何时评估过滤表达式,并定义为节点树,其中每个节点是以下各项中的至少一个:对所述输入中的一个输入的引用,超时,作为以某个方便的时间单位表征的时间间隔给出,二进制连接运算符,包括两个子节点,每个子节点是另一个触发表达式节点,或二进制分离运算符,包括两个子节点,每个子节点是另一个触发表达式节点,
过滤表达式,在匹配输入的域中定义并产生布尔结果,该结果确定转换何时产生输出,以及在匹配输...

【专利技术属性】
技术研发人员:杰森
申请(专利权)人:江森自控泰科知识产权控股有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1