小 T 导读:上海嘉柒智能科技有限公司致力于电力行业线下线上一体化运维,为此提供整体解决方案。业务包含电力运维,智慧路灯,隧道一体化等。其电力运维平台数据库使用的是TDengine,采用TDengine后,存储空间大为节省。

业务场景嘉柒智能的电力运维平台嘉能云,专注于线下线上联合运维,具有海量设备接入能力、数据分析和计算能力,其中电力运维平台数据库使用的是TDengine,在数据层面包含有:数据采集,数据传输,数据存储,数据分析。

数据采集:设备多种多样,生产研发采集设备及通讯管理机的厂家也非常多,这种场景特别适合TDengine的“一个设备一张表”模式。厂家的设备都是根据规约来生产的,电力规约通常有电力协议有许多比如(IEC101、103、104国内电力调度协议)、61850(国际通用),还有一些其他的比如Modbus-RTU、CDT等。而这些协议包含几种数据:遥测、遥信、遥脉、遥控、遥调等,这些数据都由一个或多个点表(点表包含测点类型及测点数量多有不同)上报,采集频率一般是五分钟(根据被监控设备的重要性及其需要的反应时间来确定),随着设备量的增加,数据量还是相当庞大的。

遥信:要求采用无源接点方式,即某一路遥信量的输入应是一对继电器的触点,或者是闭合,或者是断开。通过遥信端子板将继电器触点的闭合或断开转换成为低电平或高电平信号送入RTU 的YX 模块。遥信功能通常用于测量下列信号,开关的位置信号、变压器内部故障综合信号、保护装置的动作信号、通信设备运行状况信号、调压变压器抽头位置信号。自动调节装置的运行状态信号和其它可提供继电器方式输出的信号;事故总信号及装置主电源停电信号等。在TDengine中,此种类型的数据比较适合使用bool类型。

遥测:遥测往往又分为重要遥测、次要遥测、一般遥测和总加遥测等。遥测功能常用于变压器的有功和无功采集;线路的有功功率采集;母线电压和线路电流采集;温度、压力、流量(流速) 等采集;周波频率采集和其它模拟信号采集。在TDengine中,此种类型的数据比较适合使用float类型。

遥控:采用无源接点方式,要求其正确动作率不小于99. 99 %。所谓遥控的正确动作率是指其不误动的概率,一般拒动不认为是不正确,遥控功能常用于断路器的合、分和电容器以及其它可以采用继电器控制的场合。在TDengine中,此种类型的数据比较适合使用bool类型。

遥调:采用无源接点方式,要求其正确率大于99. 99 %。遥调常用于有载调压变压器抽头的升、降调节和其它可采用一组继电器控制具有分级升降功能的场合。在TDengine中,此种类型的数据比较适合使用float类型。

遥脉:遥脉往往是累积量,通常用于尖峰平谷时期的电度量采集(分为有功电度、无功电),电压暂升、暂降等。在TDengine中,此种类型的数据比较适合使用double类型。

系统设计

数据传输:数据传输方式,多采用RJ45口传输,或者sim卡无线传输,这取决于监控站允许的网络环境,如果是串口,则加一个转换设备将串口转为网口数据

数据分析:嘉能云电力运维平台,针对不同站具体的情况,提供相应的数据分析服务。常见的数据分析有:模拟量越限、异常开关、电气火灾、用电分析等等,紧急情况将第一时间通知到电力运维负责人。TDengine的降频和流式计算功能,为此种场景,提供了极大的方便。

数据存储:接入站点众多,每个站点有多个设备,每个设备有多个测点,采集时间间隔小。在这样的情况下,数据量已经非常庞大了,必须要有一个可靠性高,能快速插入、查询大量数据的数据库。考虑到数据库的方便使用,数据库性能,以及语言环境;我们开始尝试使用TDengine,并且用python作为执行快速插入/查询的client。

本平台支持公网接入或平台接入两种接入方式: 公网接入数据解析,数据传输皆在云端完成,平台将云端数据通过消息队列订阅下来,且在订阅服务中,植入TDengine操作代码,将接收到的设备三遥数据直接存入TDengine,避免数据流转时间过长。平台直接接入设备,嘉能云平台具备协议解析能力,能直接将设备上传的字节流数据解析出来,再存入TDengine。

数据存储结构:在TDengine数据库中,存储方式我们采用站名为数据库名,表名为设备名,一个设备一张表,以冻结时间为主键,以点表测点标识符为字段名的模式。

由于接入设备各不相同,在接入设备之前,我们为每个设备创建物模型,相同物模型的设备归为一类,相同站归为一组,再通过数据库同步到TDengine生成相应的设备表。使用TDengine的超级表,可以实现对同一类设备的统一管理。

Show databases;

select * from da00012829 limit 1\G;

数据量写入:在决定使用TDengine之前,我根据:

1)十个站一千个设备;

2)五分钟采集上报一次;

3)一个设备两百个测点;

4)云端接入的情况,

做了一下简单测试:一千个设备一千张表,每张表200个field,也就是20万个测点值要分一千次,存入TDengine,经持续的插入测试,数据并无丢失,且运行稳定。

下面是Log记录:

数据查询和展示

数据查询:在数据查询方面,用于数据分析的数据查询,我们觉得数据分析完全在代码层处理是非常慢的,尤其是在数据密度大,分析数据时段长的时候,这会很影响用户体验,TDengine除了可以快速插入数据,另外一个重要的点就是可在数据库层面将数据预处理(过滤、填充、时间段筛选、数据查询密度等),且速度快。

查询举例:观察一个月内的电压情况,查询出相关设备的电流电压,以及产生的告警;综合分析。根据采集间隔计算:时间范围30天43200分钟,密度为5min一个点,则是8640个值,三相电压则一次返回三组数据。

在接口中嵌入TDengine时序稀释数据查询代码示例,做到即时查询即时返回:

部分设备测点同比分析示例:

使用感受

TDengine确实是一款不错的时序数据库,开源、高效的存储和查询,存储空间大为节省。最开始只是关注插入和查询性能,数据的压缩率确实给了不少的惊喜,大约11%,节省了不少的存储空间。

connection的人性化、轻量级的软件、每种语言的样例程序,在安装包中都/examples中都可以找到。

未来优化建议

TDengine数据库的链接对象处理机制还有待提升,希望2.0版本之后能够改变。

在数据库查询方面:希望查询能够更加灵活,且能更多的分担代码计算的压力,这也将使TDengine在项目中的地位越重。

作者介绍

张灏,上海嘉柒智能科技有限公司研发工程师, 主要从事电力运维平台开发与应用及底层数据接入,近年专注于数据应用与能耗分析。相关阅读:

  • Spark+TDengine 在中国电信电力测功系统监控平台上的应用实践

  • TDengine在华夏天信露天煤矿智慧矿山操作系统的应用

  • 存储地面运动数据,TDengine在地震自动监测系统中的应用

  • 一条SQL语句搞定半导体行业采集的μs级数据

  • MySQL宕机?大数据驱动下的新零售,如何寻求存储计算的最优解?


活动推荐:

开源版本_TDengine开源版本在电力运维平台的应用相关推荐

  1. 中通消息服务运维平台实践(已开源)

    中通快递每天有数千万的运单在各个环节运转,每个环节都有对应的多套业务系统来支撑,业务系统之间上下游关系较为密切,从上游的客户订单到下游转运.结算.分析等每个环节都离不开消息中间件,它主要解决了系统之前 ...

  2. 数据库运维平台~开源成熟项目

    一 简介:这里将汇总github上比较优秀的开源数据库管理平台 二 github地址: https://github.com/xiyangxixian/soar-web // 1 单纯的soar-we ...

  3. ducter运维平台_开源自动运维管理平台_自动化运维平台 开源

    专访运维管理开源平台负责人刁文波:Ducter能 550x364 - 47KB - JPEG 专访运维管理开源平台负责人刁文波:Ducter能 550x381 - 45KB - JPEG 光宇游戏黄振 ...

  4. SSM医院移动收费运维平台毕业设计源码161045

    目  录 摘要 1 绪论 1.1 开发意义 1.2研究现状 1.3论文结构与章节安排 2医院移动收费运维平台系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1 数据流程 3.3.2 业务流 ...

  5. 运维的本质是什么?阿里“无人化”智能运维平台的演进

    开发者盛宴来袭!7月28日51CTO首届开发者大赛决赛带来技术创新分享 差不多在两年前,阿里内部出现了很多运维中台.研发中台等等,那有没有后台呢?不好意思,我们只有中台,没有后台,会在中台上构建与业务 ...

  6. DevOps之运维平台构建

    如今很多人认为devops将彻底取代传统运维,我不这么认为,在我看来devops只是很大程度上的代替了传统运维的手工操作,运维人员只需写好自动化运维脚本,利用自动化工具(zabbix,elk,ansi ...

  7. 一体化运维平台规划介绍

    运维平台规划体系全介绍 识别运维平台的边界在哪儿,才能更好地构建平台,从而协助运维的日常工作. 在之前的文章中,谈到过"运维的本质--可视化",在可视化的篇幅中,着重介绍自动化的可 ...

  8. SSM+医院移动收费运维平台 毕业设计-附源码161045

    目  录 摘要 1 绪论 1.1 开发意义 1.2研究现状 1.3论文结构与章节安排 2医院移动收费运维平台系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1 数据流程 3.3.2 业务流 ...

  9. 从 OpenStack 到 Mesos 再到 Kubernetes, 携程容器云自动化运维平台实践\n

    随着虚拟化技术和云计算技术的普及,IT互联网基础设施发生了很大的变化,底层的计算.存储.网络等资源也越来越复杂,需要有平台能管理好这些资源,尽量将工作流程自动化,将运维人员从繁重的手动工作中解救出来. ...

最新文章

  1. Kubernetes — Pod
  2. Ubuntu xrdp 遠端桌面連線
  3. Apache Mahout 简介
  4. socket timeout是什么引起的_MySQL C API 参数 MYSQL_OPT_READ_TIMEOUT 的一些行为分析
  5. 提高.NET编程水平的50个要点(转载)
  6. 【Centos配置2】远程管理必备工具配置:ssh/vnc/webadmin
  7. python100例图案_python100例 21-30
  8. ASP.NET页面间的传值方法(2)
  9. 一文读懂华为智能网联汽车产业链布局
  10. 使用记事本编写并运行java代码
  11. linux查看系统内存
  12. 简单聊聊为什么说外包不好?
  13. html实现银行卡中间四位显示为*号,银行卡和手机号中隐藏的数字用*号代替,不能和文字垂直居中,有什么解决方案吗?...
  14. Mac Electron App 签名后打开闪退
  15. SPI driver
  16. Mac音效增强软件:Boom 3D
  17. 张帅/斯托瑟2:0击败头号种子 晋级澳网女双四强
  18. 来自山西机器人乐队_清华机器人乐队“墨甲”诞生了:中国风浓郁,还演出了舞台剧...
  19. 今日早报 每日精选12条新闻简报 每天一分钟 知晓天下事 6月21日
  20. 【个人kivy学习笔记】

热门文章

  1. x64架构CPU各工作模式及内存访问
  2. com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct (no Creators)
  3. 前端新兴十大框架!!!
  4. 关于iphone给windows电脑热点上网的一个经验
  5. 安装 应用 程序 软件 驱动, win10 无限自动修复无效失败 教程
  6. 12月份的武汉免费玩
  7. 桶排序算法——C++
  8. 天龙八部天外服务器不响应,有生命的服务器 天龙八部3智能天外江湖
  9. cesium primitive 绘制
  10. 数据库的增删改查——自定义权限