管理过程控制系统中的大数据的制作方法
【技术领域】
[0001] 本专利概括而言涉及过程工厂和过程控制系统,更具体而言,涉及过程工厂和过 程控制系统中的大数据(big data)的存储和管理。
【背景技术】
[0002] 分布式过程控制系统,如用于化工、石油或其他过程工厂中的分布式过程控制系 统,通常包括一个或多个过程控制器,该过程控制器经由模拟、数字或组合的模拟/数字总 线或者经由无线通信链路或网络可通信地耦接到一个或多个现场设备。现场设备可以例 如是阀、阀定位器、开关和发射器(例如温度、压强、液面和流速传感器),其位于过程环境 内并且通常执行物理或过程控制功能,如打开或关闭阀、测量过程参数等等,以控制在过程 工厂或系统内运行的一个或多个过程。智能现场设备,例如符合已知的现场总线协议的现 场设备还可以执行控制计算、报警功能和其他通常实现在控制器内的控制功能。过程控制 器也通常位于工厂环境内,其接收指示由现场设备做出的过程测量值的信号和/或与现 场设备有关的其他信息,并且执行控制器应用,该控制器应用例如运行不同的控制模块, 这些控制模块做出过程控制决策、基于接收的信息产生控制信号以及与现场设备(例如 HART?、WirelessHART?和FOUNDATION?现场总线现场设备)中正在执行 的控制模块或块进行协作。控制器中的控制模块通过通信线路或链路向现场设备发送控制 信号,从而控制过程工厂或系统的至少一部分的操作。
[0003] 来自现场设备和控制器的信息通畅可以通过数据高速通道被一个或多个其他硬 件设备所用,这些硬件设备如操作员工作站、个人计算机或计算设备、数据历史库、报告产 生器、集中式数据库或者通常放置在远离严苛的工厂环境的控制室或其他位置中的其他集 中式管理计算设备。这些硬件设备中的每一个通常集中在过程工厂或者过程工厂的一部分 上。这些硬件设备运行例如使得操作员能够执行针对控制过程和/或运行过程工厂之类的 功能的应用,例如改变过程控制例程的设置,修改控制器或现场设备内的控制模块的操作, 查看过程的当前状态,查看由现场设备和控制器生成的警报,出于训练人员或者测试过程 控制软件的目的而仿真过程的操作,保持和更新配置数据库,等等。硬件设备、控制器和现 场设备所使用的数据高速通道可以包括有线通信路径,无线通信路径或者有线和无线通信 路径的组合。
[0004] 例如,爱默生过程管理公司所销售的DeltaV?控制系统包括存储在位于过程工厂 内的不同位置处的不同设备中所存储和运行的多个应用。位于一个或多个工作站或计算设 备中的配置应用使得用户能够创建或改变过程控制模块并且经由数据高速通道将这些过 程控制模块下载到专用的分布式控制器。通常,这些控制模块由可通信地互连的功能块构 成,它们是面向对象的编程协议中的对象,用于基于输入来执行控制方案中的功能以及向 控制方案中的其他功能块提供输出。该配置应用还允许配置设计者创建或改变由查看应用 所使用的操作员界面以向操作员显示数据,以及使得操作员能够改变过程控制例程中的设 置,例如设置点。每个专用的控制器,以及在某些情况下,一个或多个现场设备,存储并执行 相应的控制器应用,该控制器应用运行分配给它并下载给它的控制模块,以实现实际的过 程控制功能。查看应用可以在一个或多个操作员工作站(或者与操作员工作站和数据高速 通道可通信地连接的一个或多个远程计算设备)上运行,经由数据高速通道从控制器应用 接收数据并且将该数据显示给过程控制系设计者、操作员或者使用该用户界面的用户,并 且可以提供任意数量的不同视图,例如操作员视图,工程师视图,技术人员视图,等等。数据 历史库应用通常存储在数据历史库设备中并且由其运行,该数据历史库设备收集并存储跨 数据高速通道提供的部分或所有数据,而配置数据库应用可以在附接到该数据高速通道的 另一个计算机中运行,以存储当前过程控制例程配置和与其相关联的数据。或者,配置数据 库可以位于与配置应用相同的工作站中。
[0005] 当前已知的过程控制工厂和过程控制系的架构受到有限的控制器和设备存储器、 通信带宽以及控制器和设备处理器能力的极大影响。例如,在当前已知的过程控制系统架 构中,在控制器中通常尽量少地使用动态和静态的非易失性存储器,或者至少仔细地管理。 结果是,在系统配置期间(先验地),用户通常必须选择在控制器中归档或者保存哪些数 据,以哪个频率来保存,以及是否使用压缩,从而以该组有限的数据规则集合来对控制器进 行配置。从而,在故障发现和过程诊断中有用的数据通常未被归档,并且即使其被采集,则 有用信息可能由于数据压缩而丢失。
[0006] 此外,在当前已知的过程控制系统中,为了使用最少的控制器存储器,要归档或保 存(由控制器的配置所指示)的所选择的数据被报告给工作站或计算设备以存储在适当的 数据历史库或者数据仓库(data silo)。用于报告数据的当前技术不能很好利用通信资源 并且产生过度的控制器负载。此外,由于通信和历史库或数据仓库中的采样的时间延迟,数 据采集和时间戳通常与实际过程不同步。
[0007] 类似的,在批过程控制系统中,为了使得控制器存储器使用最小化,批处理(batch recipe)和控制器配置的控制器配置的快照通常仍然存储在集中式的管理计算设备或位置 (例如在数据仓库或历史库),并且只在需要时被传递给控制器。这种策略在控制器中以及 在工作站或集中式管理计算设备和控制器之间的通信中引入了巨大的突发负载。
[0008] 此外,当前已知的过程控制系统的关系数据库的容量和性能限制以及之前的盘存 储设备的高成本在将数据构筑到独立实体或数据仓库以满足特定应用的目标方面占有相 当大的一部分。例如,在DeltaV?系统中,过程模型的归档、连续历史数据以及批和事件数 据被保存在三个不同的应用数据库或数据仓库中。每个仓库具有不同的接口来访问其中存 储的数据。
[0009] 通过这种方式构建数据对于访问和使用历史数据产生了严重的障碍。例如,产品 质量变化的根本原因可能与这些数据仓库中的多个数据仓库中的数据相关联。然而,由于 仓库的不同文件结构,不可能提供允许快速容易地访问这些数据以进行分析的工具。此外, 必须执行审计或分析功能以保证跨不同仓库的数据是一致的。
[0010] 上面讨论的当前已知的过程工厂和过程控制系统的限制以及其他限制可能不希 望地出现在过程工厂或过程控制系统的操作和优化中,例如,在工厂操作、故障发现和/或 预测建模期间。例如,这些限制迫使必须执行累赘且冗长的工作流以获取数据用于故障发 现和产生更新的模型。此外,所获取的数据可能由于数据压缩、不充足的带宽或者位移的时 间戳而不准确。
[0011] "大数据"通常是指一个或多个数据集的集合,这些数据集太大或太复杂,传统的 数据库管理工具和/或数据处理应用(例如关系数据库和桌面分析包)不能够在可容忍的 时间量内管理数据集。通常,使用大数据的应用是业务性的,并且是针对或关注于终端用户 的。例如,web搜索引擎、社交媒体应用、市场应用和零售应用可以使用和操作大数据。大 数据可以由允许现代多进程、多核服务器分布式数据库完全实现的并行处理能力的分布式 数据库来支持。
[0012] 当前用于存储、访问和处理大数据,尤其是与过程工厂和过程控制系统相关的大 数据,的技术还不够有效。例如,各种现有的过程工厂使用被配置来存储过程控制数据的关 系数据库,这在某些情况下可能导致分配的存储空间过多以及提取时间过长。此外,连续历 史数据的存储使得用户或者管理员不能有效地或有力地处理来自多个数据入口的趋势或 识别参数,或者参数的组合。因此,存在着开发更有效更有力地组织、处理和管理与过程工 厂和过程控制系统相关联的大数据的机遇。
【发明内容】
[0013] -种过程控制系统或工厂提供了一种基础设施来支持过程控制数据的大规模数 据挖掘和数据分析。过程控制数据网络结合大数据规划(big data schema),该大数据规划 使用轻量非关系数据库存储技术存储过程控制数据及其属性。使用这些技术,大数据规划 不需要为过程控制数据中不存在的各种过程控制属性分配存储空间。此外,大数据规划将 过程控制数据组织为具有行键和列族的表格,以使得用户和管理员能够有效地定位、访问 和分析所存储的数据。
[0014] 大数据规划可以使用过程控制数据及其属性的各种组合来创建行键和列族。通 常,行键是用于在大数据规划中组织数据的唯一关键值,用户可以使用其来查询和提取特 定数据。例如,一些行键结合了与过程控制数据被记录的时间相对应的时间戳(或其部 分)。每个列族包括大数据规划使用过程控制数据属性创建的一个或多个列限定符。大数 据规划基于对应的行键和列限定符存储有关的测量值或值。一些行键可能具有多个相关联 的测量值(和多个相关联的列族),从而产生三维存储规划。
[0015] 大数据规划还包括用于周期性创建和存储与底层存储数据相对应的"快照"数据 的技术。例如,对于消逝的每分钟,大数据规划可以计算和存储具有该分钟内的时间戳的底 层数据的最小值、最大值、中值和标准偏差。因此大数据规划使得用户能够访问指定的时间 段上(例如每小时、每周、每月)的指定的数据(例如指定的过程变量)。大数据规划然后 在接口中将该数据呈现给用户以有效地和有力地评估快照数据和执行希望的数据分析。
【附图说明】
[0016] 图1是用于过程工厂或过程控制系统的示例性大数据网络的方框图;
[0017] 图2是示出了图1的过程控制系统大数据网络中包含的提供商节点的示例性配置 的方框图;
[0018] 图3是示出了设施数据接收器在图1的过程控制系统大数据设施处存储或历史化 数据的示例性使用的方框图;
[0019] 图4是示出了设施请求伺服器访问存储在图1的过程控制系统大数据设施处的历 史化的数据的示例性使用的方框图;
[0020] 图5A是用于组织和存储大数据的示例性表格;
[0021] 图5B是用于组织和存储大数据的示例性表格的示例性结构;
[0022] 图5C是配置来根据大数据规划进行存储的示例性大数据记录;
[0023] 图f5D是用于在大数据规划中存储"快照"数据的示例性结构;
[0024] 图6示出了与提取和访问过程控制数据快照相关联的示例性用户接口;
[0025] 图7是示出了用于大数据的组织技术的方框图;
[0026] 图8是使用行键(rowkey)存储大数据的示例性方法的流程图;
[0027] 图9是用于存储来自多个数据记录的过程控制数据的示例性方法的流程图;以及
[0028] 图10是用于提取来自多个数据记录的过程控制数据并且根据这些数据执行计算 的示例性方法的流程图。
【具体实施方式】
[0029] 图1是在过程工厂或过程控制系统10中或者与过程工厂或过程控制系统10相关 联的示例性大数据网络100的方框图。示例性过程控制系统大数据网络100包括过程控制 系统大数据装置或设施102、过程控制系统大数据网络骨干网105和多个可通信地连接到 骨干网105的节点108。多个节点108可以采集并高速缓存与过程有关的数据、与工厂有关 的数据以及其他类型的数据,网络骨干网105可以将该数据传递到过程控制系统大数据装 置或设施102以长期存储(例如"历史化")和处理。在一种实现中,至少一些数据可以在 网络100的节点之间传递,例如以实时控制过程。
[0030] 过程控制系统大数据网络100可以采集并存储与过程控制系统10有关的任何类 型的数据。例如,过程控制系统大数据网络1〇〇采集并存储实时过程数据,例如在过程工厂 10中的过程被控制时产生的连续、批、测量和事件数据(以及在某些情况下,指示过程的实 时运行的效果的数据)。还可以采集和存储过程定义、安排或设置数据,例如配置数据和/ 或批处理数据以及与过程诊断的配置、运行和结果相对应的数据。当前,还可以采集和存储 其他类型的过程数据。
[0031] 此外,过程控制系统大数据网络100可以采集并存储骨干网105以及过程工厂10 的各种其他通信网络的数据高速通道业务和网络管理数据。进一步的,过程控制系统大数 据网络100可以采集和存储与用户相关的数据,如与用户业务、登陆尝试、查询和指令有关 的数据,以及文本数据(例如日志、操作规程、手册,等等)、空间数据(例如基于位置的数 据)和多媒体数据(例如闭路电视、视频剪辑等等)。
[0032] 此外,过程控制系统大数据网络100可以采集并存储与过程工厂10(例如与过程 工厂10中包括的物理设备,如机器和设备)有关、但是不是由对过程进行直接配置、控制或 诊断的应用所产生的数据。例如,过程控制系统大数据网络100可以采集和存储振动数据、 疏水阀(Steam trap)数据、指示与工厂安全相对应的参数的值的数据(例如腐蚀数据、瓦 斯检查数据等等),和/或指示与工厂安全相对应的时间的数据。在一些情况下,过程控制 系统大数据网络100可以采集和存储与机器健康情况、工厂装置和/或设备相对应的数据。 例如,可以采集装置数据(例如基于振动数据和其他数据确定的栗健康情况数据)。在一 些情况下,过程控制系统大数据网络100可以采集和存储与装置、机器和/或设备诊断的配 置、运行和结果相对应的数据。
[0033] 此外,过程控制系统大数据网络100可以采集和存储由过程工厂10外部的实体产 生或者发送给过程工厂10外部的实体的数据,如与原材料的成本有关的数据、零件或装置 的预期到达时间、天气数据以及其他外部数据。如果希望,可通信地连接到网络骨干网105 的所有节点108产生、接收或观测到的所有数据都可以被采集并且使得存储在过程控制系 统大数据设施102处。
[0034] 如图1中所示,过程控制系统大数据网络100包括过程控制系统大数据工作室 (studio) 109,其被配置为提供到过程控制系统大数据网络100的主要接口以用于配置和 数据浏览,例如用户接口或者供其他应用所使用的接口。过程控制系统大数据工作室109 可以经由过程控制系统大数据骨干网105连接到大数据设施102,或者可以直接连接到过 程控制系统大数据设施102。
[0035]讨稈棹制大数据网络节点
[0036] 如图1中所示,过程控制系统大数据网络100的多个节点108可以包括若干个不 同组的节点11〇、112、115。第一组节点110,这里称为"提供商节点110"或者"提供商设备 110",可以包括一个或多个节点或设备,其产生、路由和/或接收过程控制数据以使得过程 能够在过程工厂环境10中被实时控制。提供商设备或节点110的实例可以包括主要功能是 用于产生过程控制数据和/或对过程控制数据进行操作以控制过程的设备,例如有线和无 线现场设备、控制器或者输入/输出(I/O设备)。提供商设备110的其他实例可以包括主 要功能是提供对过程控制系统的一个或多个通信网络(过程控制大网络100是其中一个) 的访问或者通过过程控制系统的一个或多个通信网络(过程控制大网络100是其中一个) 进行路由的设备,例如接入点、路由器、到有线控制总线的接口、到无线通信网络的网关、到 外部网络或系统的网关以及其他这种路由和组网设备。提供商设备110的又一些实例可以 包括主要功能是临时存储整个过程控制系统10中累计的过程数据和其他有关数据,并且 使得发送临时存储的数据以在过程控制系统大数据设施102处历史化的设备。
[0037] 提供商设备110中的至少一个可以以直接方式可通信地连接到过程控制大数据 网络骨干网105。此外,提供商设备110中的至少一个可以经由路由器和接入点以及无线网 关可通信地连接到骨干网105。例如,无线现场设备可以经由路由器和接入点以及无线网关 可通信地连接到骨干网105。典型地,提供商设备110不具有集成的用户接口,尽管提供商 设备110中的一些可能具有例如通过有线或无线通信链路或者通过向提供商设备110的端 口插入用户接口设备来与用户计算设备或用户接口进行通信连接的能力。
[0038] 如图1中所示,第二组节点112,这里称为"用户接口节点112"或"用户接口设备 112",可以包括一个或多个节点或设备,每个具有集成的用户接口,用户或操作者可以经由 该用户接口与过程控制系统或过程工厂10交互,以执行与过程工厂10有关的活动(例如 配置、查看、监控、测试、分析、诊断、预订、计划、调度、注释和/或其他活动)。这些用户接口 节点或设备112的实例可以包括移动或固定计算设备、工作站、手持设备、平板电脑、表面 计算设备和任何其他具有处理器、存储器和集成的用户接口的计算设备。集成的用户接口 可以包括屏幕、键盘、小键盘、鼠标、按钮、触摸屏、触摸板、生物学接口、扬声器和麦克风、照 相机和/或任何其他用户接口技术。每个用户接口节点112可以包括一个或多个集成的用 户接口。用户接口节点112可以包括到过程控制大数据网络骨干网105的直接连接,或者 可以包括到骨干网105的间接连接,例如经由接入点或网关。用户接口节点112可以以有 线方式和/或无线方式可通信地连接到过程控制系统大数据网络骨干网105。
[0039] 当然,过程控制大数据网络100的多个节点108并不仅仅局限于提供商节点110 和用户接口节点112。多个节点108中可以可选地包括一个或多个其他类型的节点115。例 如,过程工厂10外部的系统(例如实验室系统或材料管理系统)的节点可以经由直接或间 接连接可通信地连接到骨干网105。节点或设备115可以经由直接或间接连接可通信地连 接到骨干网105。此外,节点或设备115可以经由有线或无线连接可通信地连接到骨干网 105〇
[0040] 过程控制系统大数据网络100的节点108中的至少一些可以包括集成的防火墙。 此外,任意数量的节点1〇8(例如零个节点、一个节点或多于一个节点)中的每一个可以包 括相应的存储器存储设备(图1中用标记1表示)以实时存储或高速缓存任务、测量值、事 件和其他数据。存储器存储设备M x可以包括高密度存储器存储技术,例如固态驱动存储器、 半导体存储器、光存储器、分子存储器、生物存储器或者任何其他适当的高密度存储器技术 以及闪速存储器。存储器存储设备M x(以及在一些情况下,闪速存储器)可以被配置为暂时 存储或高速缓存由相应的节点108产生、接收到或以其他方式观测到的数据。节