借助Historian Connector + TDengine,打造工业创新底座
在工业自动化的领域中,数据的采集、存储和分析是实现高效决策和操作的基石。AVEVA Historian (原 Wonderware Historian) 作为领先的工业实时数据库,专注于收集和存储高保真度的历史工艺数据。与此同时,TDengine 作为一款专为时序数据打造的高性能数据库,在处理和分析大量实时、历史时序数据方面展现出无与伦比的优越性。
在最新发布的 TDengine 3.2.3.0 版本中,我们进一步更新了 TDengine 的数据接入功能,推出了一款新的连接器,旨在实现 AVEVA Historian 与 TDengine 的集成。基于此,本文将阐述把 AVEVA Historian 的历史数据和实时数据整合进入 TDengine 的创新方法,以及这种结合如何能够极大地提升数据利用率,打造一个工业创新底座,推动工业自动化高效发展。
从时序数据的关键应用场景分析优化方案
我们先来回顾下当下工业场景几种典型时序数据处理方案:
-
关系型数据库(例如 Oracle/MySQL、达梦、南大通用):关系型数据库在处理海量时序数据时,读写性能较低,分布式支持差。随着数据的增加,查询的速度也会变慢。典型的应用场景包括低频监控场景和电力 SCADA 历史库。
-
传统工业实时库(例如 PI、AVEVA Historian、亚控、海迅):尽管传统工业实时库在工业数据存储中有着长期的功效,但它们的架构已经过时,缺乏分布式解决方案,不能水平扩展。而且,它们依赖于 Windows 等环境,在数据分析能力上较弱,且往往是封闭系统。这类数据库主要用于 SCADA 系统和生产监控系统。
-
NoSQL 数据库(例如 MongoDB、Cassandra):这类数据库的问题在于计算实时性较差,查询速度慢,对内存和 CPU 的计算开销大,没有针对时序数据的优化。它们主要用于处理非结构化数据存储和爬虫数据。
-
Hadoop 大数据平台(例如 HBase、Zookeeper、Redis、Flink/Spark):虽然这类平台支持分布式,但其采用非结构化方式处理时序数据,组件众多,架构臃肿,单节点效率低,硬件和人力维护成本非常高。它们主要用于通用大数据平台和舆情电商大数据。
在当前的工业企业中,创新应用需求旺盛,时序数据处理关键的应用场景包括智能决策支持、设备故障预警、产品质量分析与预测、智能制造与数字孪生、能耗管理与节能减排。这些关键场景突出了工业时序大数据在创新应用中的核心价值,工业企业只有采用先进的解决方案,才能够加快创新步伐并在竞争激烈的市场中实现差异化。
在工业场景中,多个工厂或车间通常会部署独立的 SCADA/Historian 系统,如 AVEVA Wonderware 和 PI 系统,以管理实时和历史数据。这是目前工业自动化的常态,数据分布在各个现场的数据库中。
时序数据向中心侧集中的优势在于,它可以增强对数据的整体控制力,使得企业更好地利用它们的数据资产。数据的集中处理为全局数据可视化带来了可能,为业务创新提供灵感和快速验证的手段,帮助企业更好地管理和分析数据,快速响应而提取有价值的洞见,并依此及时做出商业决策。
SCADA/Historian 也提供了数据集中方案,确实在某些方面能够满足需求,但面临的挑战是它们难以支持海量测点(传感器、设备等)的数据量,难以满足创新应用的对大量获取时序数据的需求。当数据量非常大时,SCADA/Historian 数据消费接口的能力较弱,可能会经历高延时,甚至无法获取需要的数据集。
要有效应对这些挑战,需要从以下几个方面优化方案:
-
利用好已有的投资:很多情况下,企业已经采购、部署了多套 SCADA/Historian,投资已经形成,方案必须考虑如何充分利用已建成系统的能力,避免重复投资。
-
提高数据消费接口的能力:增强数据接口的能力,以确保即使在数据量很大时也能快速、高效地消费数据。
-
降低延时:提升系统的性能以减少处理和提取数据时的延时,确保可以及时地获取数据。
-
实现实时和历史数据的整合:数据的整合可以提高存储空间利用率,并为分析和决策提供更完整的数据视图。实时和历史数据的结合还能支持更复杂的创新应用,如预测维护、能耗管理和优化操作。
-
支撑海量测点:提高系统能够处理的测点数量,以适应越来越多传感器数据的需求。
-
推动创新应用的发展:构建支持创新的基础架构,应对创新应用需求、新兴的工业应用,如预测性维护、资产性能管理、能效优化等,需要对数据进行更深层次的消费、分析和更快速的处理。
TDengine 作为一款极简的时序大数据平台,具有高效的数据写入和查询性能,适合处理海量、时序性的工业数据。除了实时与历史合一的时序库核心功能外,还提供了消息队列、事件驱动流计算、读写缓存,以及多数据源接入的能力。如何实现融合上述六点的方案优化,TDengine 也给出了答案。
整合 AVEVA Historian 数据到 TDengine
本文方案中,将利用 TDengine 企业版 taosX 的多数据源接入能力汇集多路 AVEVA Historian 现场数据,持久化至中心侧 TDengine 集群。
其特点如下:
-
数据迁移:从 AVEVA Historian 系统迁移现有的历史数据到 TDengine。
-
数据同步:支持实时和历史数据的同步,实现 AVEVA Historian 实时(Runtime.dbo.Live)和历史数据(Runtime.dbo.History)至 TDengine 之间的数据同步。
-
支持海量测点:TDengine 支持 10 亿时间线,轻松应对目前工业大数据场景。
-
充分利用已有投资:已有的 AVEVA Historian 将继续发挥作用,同时在 TDengine 平台上支持创新业务的开发。
-
时序数据优化存储:利用 TDengine 的高效数据压缩和存储机制,优化数据在新平台上的存储。
-
查询性能显著提升:与 Historian 的查询性能比较,TDengine 无论在投影查询还是聚合查询,均提升几个数量级的性能。
-
支持数据订阅:TDengine 提供了结构化的消息队列,当数据入库的同时,可根据业务需要创建主题,支持实时消费以驱动创新应用落地。
-
支持多种部署环境:LInux & Windows
-
支持完整 ETL 特性:taosX 组件支持完整的解析、提取拆分、过滤以及数据映射,零代码即可完成外部数据源接入 TDengine。
本方案的基本环境要求有:
-
AVEVA Historian 接入需 TDengine 企业版支持
-
远端采集需通过代理模式接入,采集现场须部署 taosX Agent
-
支持 AVEVA Historian 2017 以后的版本
下面以数据迁移为例,介绍 AVEVA Historian 的历史视图数据如何迁移至 TDengine。
-
先完成准备工作:在 TDengine 中建库、建超级表
-
登入 taosExplorer,创建数据写入任务,类型:AVEVA Historian
-
填写任务基本信息:任务名称、目标数据库、Historian 服务器地址、端口、认证信息
-
填写采集配置:migrate 模式、选择标签点位范围(默认所有点位)、设置源数据起始终止时间、查询时间窗口跨度
-
数据解析与过滤:因 Historian 发送过来的数据是结构化的,无需额外配置解析器和过滤器
-
数据映射:选择目标超级表后,系统会自动匹配部分字段,没有匹配的字段,手工指定映射关系即可
-
启动任务
数据同步 synchronize 与数据迁移 migrate 类似,不同之处在于:
-
支持两个来源:Runtime.dbo.History & Runtime.dbo.Live
-
任务结束时间可以不设定,意味着可以一直同步下去,直至人工终止
本方案还可以与 OPC 方案融合:历史数据通过 Historian 导入 TDengine,实时数据通过 OPC 汇集至 TDengine。新方案的优点是,通过 OPC 支持的订阅特性实现实时数据即时采集,一旦变化就立刻采集至 TDengine。
新方案同样是基于 taosX 组件,维护方便。
结语
对于曾投资 AVEVA Wonderware 的工业企业,在面临数字化转型的挑战时,Historian Connector 结合 TDengine 的解决方案便能成为他们的强大后盾。此方案不仅能快速打通数字化转型的难关,还能携业务创新之力,开拓数字化潜能。
此外,本方案具有优秀的融合能力,可与各类数据采集解决方案无缝结合。例如,通过与 OPC Connector 数据采集方案的整合,历史数据得以从 Historian 顺畅导入至 TDengine,同时实时数据亦可通过 OPC 即时汇集至 TDengine,实现现场时序数据的高效集中处理。
本方案所依托的是 TDengine Enterprise 企业版的强大功能(且未来我们将推出 TDengine Cloud 版本)。如若贵企业正寻求这方面的解决方案,欢迎主动接洽北京涛思的专业商务团队,一起探索先进的数据处理之道。
关于 AVEVA Wonderware
Wonderware 公司成立于 1987 年,总部位于美国洛杉矶,是全球工业自动化领域的知名品牌。其先被施耐德电气收购,后并入 AVEVA。AVEVA Wonderware 应用行业广泛,在连续生产过程控制和离散制造领域优势明显。主要应用于烟草生产、水处理、电力、石油天然气、化工、钢铁冶金、食品饮料、制药、汽车制造、物流仓储等行业。其产品包括但不限于 In Touch HMI(人机界面)、System Platform(系统平台)、Historian(历史数据记录与分析)。
相关文章:

借助Historian Connector + TDengine,打造工业创新底座
在工业自动化的领域中,数据的采集、存储和分析是实现高效决策和操作的基石。AVEVA Historian (原 Wonderware Historian) 作为领先的工业实时数据库,专注于收集和存储高保真度的历史工艺数据。与此同时,TDengine 作为一款专为时序数据打造的高…...

51单片机-实机演示(LED点阵)
目录 前言: 一.线位置 二.扩展 三.总结 前言: 这是一篇关于51单片机实机LED点阵的插线图和代码说明.另外还有一篇我写的仿真的连接在这:http://t.csdnimg.cn/ZNLCl,欢迎大家的点赞,评论,关注. 一.线位置 接线实机图. 引脚位置注意: 1. *-* P00->RE8 P01->RE7 …...

STM32硬件接口I2C应用(基于MP6050)
目录 概述 1 STM32Cube控制配置I2C 1.1 I2C参数配置 1.2 使用STM32Cube产生工程 2 HAL库函数介绍 2.1 初始化函数 2.2 写数据函数 2.3 读数据函数 3 认识MP6050 3.1 MP6050功能介绍 3.2 加速计测量寄存器 编辑3.3 温度计量寄存器 3.4 陀螺仪测量寄存器 4 MP60…...

基于JSP的贝儿米幼儿教育管理系统
开头语: 你好呀,我是计算机学长猫哥!如果您对本系统感兴趣或者有相关需求,文末可以找到我的联系方式。 开发语言: Java 数据库: MySQL 技术: JSP技术 工具: IDEA/Eclipse、…...

数字化与文化交融,树莓集团助力园区文化升级
树莓集团在产业园运营领域建设了特色空间布局,包括产业实训基地、产业办公中心、业务资源平台、产学研中心、数字资产空间、双创孵化空间、产业实验室和人才项目转化中心等八大板块,共同构建了一个全面而深入的产业支撑体系,为园区文化建设提…...

【原创课程】如何制作安装板
具体步骤如下: 第一步:新建页类型为“安装板布局图(交互式)”并修改页描述为“安装板布局图”。 第二步:新建安装板 第三步:设置图纸上符号元件的部件,双击符号,弹出常规设备窗口,点击部件进行选择 第四步:打开2D安装板导航器,将图纸中的设备拖拽到安装板上 第五步…...
简单聊聊【java.util.Stream】,更新中
public class Main {public static void main(String[] args) {List<Integer> numbers Arrays.asList(1, 2, 3, 4, 5, 6); // 原始容器:java.util.Arrays.ArrayList#ArrayList// 创建一个 Stream,过滤出偶数,并打印它们numbers.str…...

GIS之arcgis系列07:conda环境下安装arcpy环境
首先将python27环境下的“Desktop10.8.pth”拷贝到anaconda环境下。 路径如下(仅参考): C:\Python27\ArcGIS10.8\Lib\site-packages\Desktop10.8.pth D:\Anaconda\Lib\site-packages 在anaconda prompt中穿创建一个新环境 conda create -…...

容器运行nslookup提示bash: nslookup: command not found【笔记】
在容器中提示bash: nslookup: command not found,表示容器中没有安装nslookup命令。 可以通过以下命令安装nslookup: 对于基于Debian/Ubuntu的容器,使用以下命令: apt-get update apt-get install -y dnsutils对于基于CentOS/R…...

解析 Spring 框架中的三种 BeanName 生成策略
在 Spring 框架中,定义 Bean 时不一定需要指定名称,Spring 会智能生成默认名称。本文将介绍 Spring 的三种 BeanName 生成器,包括在 XML 配置、Java 注解和组件扫描中使用的情况,并解释它们如何自动创建和管理 Bean 名称。 1. Be…...

细说ARM MCU的串口接收数据的实现过程
目录 一、硬件及工程 1、硬件 2、软件目的 3、创建.ioc工程 二、 代码修改 1、串口初始化函数MX_USART2_UART_Init() (1)MX_USART2_UART_Init()串口参数初始化函数 (2)HAL_UART_MspInit()串口功能模块初始化函数 2、串口…...

000-基于sklearn的机器学习入门:工作环境搭建与配置
本专栏将介绍基于Scikit-learn(简称sklearn)的机器学习入门知识。包括但不一定限于,机器学习基本知识、sklearn库简介,基于Sklearn库的机器学习实践。 这是本专栏的第000篇,将介绍如何安装和配置sklearn环境,不仅包括Sklearn库的…...

就业班 第四阶段(k8s) 2401--6.5 day3 Yaml语法解析+钩子函数
Yaml语法解析 今天学的都是在pod里面操作的 格式 这个文件要创建的资源对象是什么 kind: Pod 这个资源对象所在的api版本是什么 apiVersion: v1 元数据 metadata: 对这个pod中的镜像的描述 spec: 字典无序 同一级可以调换顺序 :比如kind和apiVersion …...

电脑开机出现英文字母,如何解决这个常见问题?
电脑开机时出现英文字母的情况通常意味着系统在启动过程中遇到了问题。这些英文字母可能是错误信息、系统提示或BIOS设置问题。通过理解这些信息并采取适当的措施,您可以解决大多数启动问题。本文将介绍三种解决电脑开机出现英文字母问题的方法,帮助您恢…...

一张试卷
目录 问题 1: 1.时间 题目描述1 输入1 输出1 样例输入1 样例输出1 提示1 代码1 问题 2: 超酷的电话号码 题目描述2 输入2 输出2 样例输入2 样例输出2 提示2 代码2 问题 3:3.爸爸的数学题 题目描述3 输入3 输出3 样例输入3 样例输出3 提示3 代码3 问题 4: 4. 营养膳食 题目描述4…...
记一次 .NET某游戏币自助机后端 内存暴涨分析
一:背景 1. 讲故事 前些天有位朋友找到我,说他们的程序内存会偶发性暴涨,自己分析了下是非托管内存问题,让我帮忙看下怎么回事?哈哈,看到这个dump我还是非常有兴趣的,居然还有这种游戏币自助机…...

计算机考研|哪些985/211院校不歧视双非二本生?
说句残酷的话,能对某一专业做出贡献,那么你的水平肯定是很高的。如果普通学生,普通本科的话可能很难做到这一点。这也是现在考研风气比较强的原因,一部分专业能力不突出的学生来选择深造3年。 对于基础较差想要考计算机研究生的同…...

Spring Boot:简化 Java 应用开发的艺术
Spring Boot 是一种用于快速开发、运行和管理 Java 应用程序的开源框架。它简化了基于 Spring 的应用程序的配置和部署,使得开发者能够更加专注于业务逻辑的实现。本文将介绍 Spring Boot 的核心特性、优势以及如何在项目中使用 Spring Boot。 一、核心特性 自动配…...
elasticsearch安装与使用(2)-基于term匹配的简单搜索引擎搭建
把一篇pdf论文解析后,放入es数据库中,建立倒排索引表,并实现简单搜索。 1、pdf论文解析(英文) 安装pdf解析包 pip install pdfminer.sixdef extract_text_from_pdf(filename, page_numbersNone, min_line_length1):从pdf文件中提取文字:pa…...
速盾:ddos防护与高防ip区别?
在网络安全领域,DDOS 防护和高防 IP 都是重要的防护手段,但它们之间存在着一些明显的区别。 DDOS 防护是一种针对分布式拒绝服务攻击的防御策略。它通过多种技术和方法来识别和抵御 DDOS 攻击。常见的 DDOS 防护手段包括流量清洗、连接限制、协议分析等。…...

多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度
一、引言:多云环境的技术复杂性本质 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时,基础设施的技术债呈现指数级积累。网络连接、身份认证、成本管理这三大核心挑战相互嵌套:跨云网络构建数据…...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...
SciencePlots——绘制论文中的图片
文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了:一行…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...

【大模型RAG】Docker 一键部署 Milvus 完整攻略
本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...

Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...

技术栈RabbitMq的介绍和使用
目录 1. 什么是消息队列?2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要: 近期,在使用较新版本的OpenSSH客户端连接老旧SSH服务器时,会遇到 "no matching key exchange method found", "n…...
MySQL 8.0 事务全面讲解
以下是一个结合两次回答的 MySQL 8.0 事务全面讲解,涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容,并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念(ACID) 事务是…...