自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 资源 (11)
  • 收藏
  • 关注

原创 物联网-电力编辑器(一)

电力编辑器充分采用现今的互联网前端技术,将所有的电力元件web化,通过组合拆分的形式组装各种类型的开关柜,变压器等。最后通过对数据源的绑定,将电力参数全部实时展示出来。当然此编辑器不会止步于此,将来对其扩展之后,使其能够为各个行业提供组态图,实现实时监控。

2022-09-17 19:54:24 2256 2

原创 基于kettle的数据集成平台(汇总)

演示环境: 用户名:admin 密码:admin高低压电力监控系统http://scada.wangyaojun.cn/北大服务网关http://kettle.wangyaojun.cn/认识kettle:认识物联网_qingxinziran007的专栏-CSDN博客最近在做一些物联网的项目,认识到物联网应该是大势所趋,就准备写一个物联网专栏来介绍一下我现在做的工作,我会一步一步地带着大家搭建一个物联网平台。既然是物联网,当然会涉及一些硬件的技术,这个放心,我...

2022-02-26 17:01:05 4738 3

原创 物联网-电力监控平台(汇总)

物联网-电力监控平台

2022-02-26 16:40:16 7396

原创 kettle-数据迁移场景

场景描述:大家都知道,物联网项目的数据量大,如何高效的存储处理数据是一个非常棘手的问题。但是,往往在项目初期是不可能准确的预估到数据体量,随着项目的演进,就会发现现数据库性能会直线下降,甚至会导致服务挂掉。此时项目的架构也要随之进行革新,数据库也势必要切换到性能更强的数据库(比如,从关系型数据库到NoSql或时序数据库)。此时,kettle这个强大的ETL工具的用武之地就到了。那么kettle是如何在不同的数据库之间进行迁移的呢?

2022-01-25 14:27:09 3991

原创 开篇-后端工程师的开发利器

作为一个后端工程师,平时最主要的工作其实就是数据处理,也就是经常所说的增删改查。长时间做这些冗余的工作,再加上996的常态,时常会让人感到厌烦。那么后端工程师的最终归宿是什么呢?很多后端工程师都会感到迷茫,如果想要更进一步成为所谓的架构师,你会发现架构师所做的架构设计,其实也就是照搬互联网领域常用的一些架构模式,更有甚者就是那些ppt架构师,相信很多同学都有和我一样的体会,真正能够进行模式创新的往往是一些研究院的学者,所以要想成为架构师多读书是一个必要条件,但是真正落地的你会发现其实就是后端工程师。那么作为

2021-09-21 17:47:19 391

原创 物联网-电力监控平台(二)

本篇文章介绍新版的物联网电力监控平台,抛开了thingsboard的不适应性,因为thingsboard的ui采用angularjs与国内工程师常用的vue,还是有不小的差距;thingsboard采用的是内置mqtt服务器,对其的稳定性监控困难;thingsboard对遥控遥调功能使用复杂,改造起来困难;新版系统如下,采用自建的mqtt服务器,采用先进的flink流处理技术,采用自建的电力编辑器。完美解决了thingsboard中的问题。技术架构系统含采集数据层、传输层、边缘计算、存储层、数据.

2021-08-21 10:51:38 2397 2

原创 kettle中作业池的使用(二)

本篇文章主要介绍作业池中是如何进行流处理的。最常见的场景就是在物联网平台中,将感知层收集的数据,上传到消息队列服务器中,然后服务层通过使用相应的客户端去接收数据,最后将数据进行处理,保存入库。最终通过app,小程序,web等方式展示结果。最核心的流程就是如何去接收消息中间件的数据,接收之后又是如何高效的处理数据呢?如果有这样的一个平台,既能通过快速的配置接入中间件,又能对数据进行转换处理,持久化处理(数据库,es,hbase),就能完美的解决物联网的数据问题。这样一个复杂的物联网项目就转化为一个普通的互联.

2021-08-01 13:15:45 720 5

原创 物联网平台与kettle技术的结合(三)

上篇文章主要介绍了将tb的websocket接口进行透传,转化为业务所需要的格式。上上篇文章讲得是如何将tb的rest接口进行透传,转化为标准的格式。 基于以上两篇文章属于对单接口的改造能力,本篇文章就介绍一下如何将tb的多个接口进行聚合,以满足复杂的业务场景。问题:需求:查询某资产所包含的所有设备(出参应包含设备名称,设备描述,设备状态)。分析:请求参数肯定是资产id,查看tb平台的api,发现只能根据资产id获取该资产包含的所有设备id。也就是说只能获取到资产和设备的关系。如果想获取...

2021-06-05 10:43:50 1243 3

原创 基于kettle的数据集成平台用户手册

应用管理第一步:以admin/admin用户登录系统后,可以看到左侧菜单如下:选择应用管理菜单第二步:添加新应用:如添加(天气预报) 资源池第一步:添加服务分类第二步:分类添加成功,例如天气预报对接第三步:编写kettle转换文件与天气预报接口进行集成第四步:上传kettle转换文件到资源池第五步:上传完成后,如下图。 服务池第一步:新建服务,选择资源文件第二步:保存服务成功后,如下图: 服务测试...

2021-05-12 00:27:39 572

原创 物联网-电力监控平台(一)

上篇文章介绍了物联网的一些基础知识,相信大家对物联网已经有了初步印象。本篇文章就介绍一下我目前正在开发的电力监控物联网平台,主要介绍一下这个平台是在什么样的业务场景下应运而生的,介绍一下这个平台的一些核心功能,最后演示一下。平台简介任何基础设施的建设,都离不开电力资源的支持。尤其是一些制造业,建筑行业(小区,商场,工厂),对电力的需求常常是非常大的。但是一旦电力设施出现问题,往往会导致大面积的生产活动停止。如何在电力系统出现问题的时候,迅速而准确定位到是哪个电压柜出现问题,是哪个仪表出现问题,是.

2021-04-25 16:26:51 3076 2

原创 基于kettle的数据集成平台(四)

上篇文章介绍了使用kettle平台实现mqtt与websocket的数据互转功能,基本上能够解决物联网平台中的通信问题。本章将继续讲解kettle平台的另外一个高级功能,即:实现websocket之间的转发透传。场景描述:我在开发物联网平台的时候,遇到这样一个问题。如果想要实时的将设备数据展现在前端页面,采用websocket进行通信那是必然的选择。但是为了适配不同类型的前端(h5,app,小程序等),数据格式肯定是不一样的。现在有两个公司入驻该平台,每个公司都有自己的标准协议(比如A公司..

2021-04-08 23:57:17 924

原创 基于kettle的数据集成平台(三)

上篇文章主要介绍了使用kettle平台实现文档的高效解析。通过上传文档和下载文档的方式,来对各种异构文档进行数据格式的统一。本篇文章进行介绍kettle平台的其他高级功能,即:mqtt与websocket的相互转换。场景描述:需求:物联网平台的数据处理。大家知道,物联网平台的数据处理过程:硬件设备层——》数据收集层——》业务逻辑层——》展示层。物联网平台的主要数据传输协议有mqtt,coap,http等,mqtt是最常见的一种。展示层一般采用websocket技术进行展示。问题:.

2021-04-07 16:24:37 2617 4

原创 基于kettle的数据集成平台(二)

鉴于上篇文章是对平台做的简要介绍,可能会对平台的强大功能了解的不够,本篇文章就从一个真实的业务场景入手,来解决工作中的实际问题。场景描述:需求:某教育机构希望实现在线考试功能。1,线上答题:通过在线录入试题,导入试题,来快速的生成试卷,。2,线下答题:通过在线导出试卷,打印成纸质版的试卷。难点:1 ,如何将word试卷导入系统呢?2,如何将试题导出为word试卷呢?解决方案:使用poi进行解析优点:学习成本低,容易简单;缺点:硬编码,工作量大,易出错,冗余工作多.

2021-04-02 22:44:57 570

原创 基于kettle的数据集成平台(一)

本篇文章先不介绍kettle的基础知识,主要介绍基于kettle的数据集成平台。也就说,本篇文章介绍的是一个平台,是需要具备大量的kettle知识点才能完成的。通过对此平台的介绍,让大家对kettle的学习充满兴趣,不至于半途而废。这个平台能够解决工程师工作中大部分的数据处理问题。 当然如果大家喜欢这个平台的话,可以在评论区留言大家共同谈论,一起进步。功能点:支持rest请求,websocket请求,mqtt请求等; 支持服务维度的热插拔。 提供请求报文转换服务,响应报文服务; 服务重新..

2021-03-28 13:21:56 991

原创 kettle-输出组件

上一节,讲解了常用的输入组件(excel输入组件,文本输入组件,表输入组件,json输入组件)。对一个系统来说,有输入就必定有输出,输出组件反应的就是系统最终的处理结果,也就是业务产出。熟练的掌握输入输出组件,是学习kettle的关键环节,也是分析业务需求的重要法宝。 本节将针对上一节中的输入组件,讲解其相对应的输出组件。这样便可以使同学们掌握kettle的基础运用能力。excel输出组件 工作中经常会遇到需要将从接口中查询出的数据导出为excel文件...

2021-10-23 15:38:58 1049

原创 kettle-输入组件

众所周知,要想深入的设计和了解一个系统,首先要了解系统的输入输出是什么,系统的输入是所有步骤中最为基础的一步,它是所有业务逻辑实现的前提条件。所以这一节是至关重要的,

2021-10-23 11:31:14 553

原创 kettle中作业池的使用(一)

之前的文章主要介绍了kettle中转换的使用,主要对应于kettle平台中的服务池功能。服务池主要用于发布接口,支持rest,websocket,soap的协议。服务池纵然已经满足了大部分的业务需求,但是对于一些报表统计的场景,往往需要任务调度,服务池就显得比较吃力。如果服务池接口中强大的功能能够用于任务调度就能够完美解决这种场景。基于此,在kettle平台中开发了作业池模块,专门用于解决任务调度。创建执行策略创建作业启动作业查看日志关闭作业总结本篇文章..

2021-07-14 10:51:12 149

原创 kettle中java节点的使用

之前的文章讲了kettle平台与物联网平台的结合,完美的解决了数据格式转换问题。但在实际的使用过程中还是会存在一些不够便捷的问题,对一些特殊的业务逻辑,处理起来比较麻烦,如果采用java语言进行编码反而是最简单的。kettle中java节点的使用如下java节点的使用:结果如下:test变量的值为2222,就是通过java代码实现的。具体实现:官方例子:在java节点中使用lambda表达式关键代码:定义lambda方法使用lambda方法:最..

2021-06-27 10:58:42 276

原创 物联网平台与kettle技术的结合(二)

上篇文章介绍了如何将tb的rest接口出参数据格式通过kettle平台转换为最合适的出参格式。本篇文章将接着上篇文章,通过kettle平台来处理tb的websocket接口。提出问题:websocket接口如何统一格式?tb中获取设备的遥测数据是这样的。{ "EA": [ { "ts": 1479735870786, "value": "0" }, { "ts": 1479735871857, "value":.

2021-05-30 18:41:48 360 2

原创 物联网平台与kettle技术的结合(一)

上篇文章介绍了电力监控平台,它是基于tb的物联网平台实现的。tb是一个开源的物联网平台,虽然功能很强大,但是毕竟是老外写的,在使用的过程中你会发现很多的使用习惯与国内的系统都有差异。比如:tb暴露的rest接口,往往没有经过进一步的封装,格式输出较为散乱,如果直接供前端使用的话,就会导致很不协调。同样如果直接使用tb的websocket接口,前端的解析也是非常复杂。如何屏蔽掉这些差异性呢?提出问题:rest接口如何统一格式?比如获取token的鉴权接口,tb的数据格式是这样的?{"to.

2021-05-29 15:45:32 665 3

原创 认识物联网

最近在做一些物联网的项目,认识到物联网应该是大势所趋,就准备写一个物联网专栏来介绍一下我现在做的工作,我会一步一步地带着大家搭建一个物联网平台。既然是物联网,当然会涉及一些硬件的技术,这个放心,我用最简单的方式介绍。之前我写过一个kettle技术的专栏,当然kettle方面还有一些高级功能没有介绍到,我也会继续更新。在写物联网专栏时,我会将物联网技术与kettle技术相结合,打造属于咱们自己的物联网平台。物联网是什么?我不会照搬书本上的概念,因为比较晦涩难懂,我只讲解我自己的认识。物联网就是万..

2021-04-23 15:08:15 890 1

原创 kettle数据库查询节点

上篇文章回顾:上篇文章主要讲了如何通过文件操作节点从本地文件中来获取数据。本篇将讲解如何从数据库中来获取数据,通过采用

2021-03-27 16:24:19 200

原创 kettle文件操作节点

上篇文章回顾:上篇文章主要讲了如何使用get节点和post节点从网络中来获取数据,除了从网络这种数据源之外,更多的是从本地文件来读取数据。本地文件有excel,txt,json串,xml文件等,这些不同格式的文件是如何进行解析的呢?本篇内容主要讲解如何通过kettle的文件处理节点来从本地文件获取数据。获取excel数据:最终展示结果如下,预览数据展示的就是从excel中读取的数据,具体是如何实现的呢?第一步:将“Excel输入”节点拖拽到工作区,如下图所示第二步:双击“Exce

2021-03-15 23:02:08 757

原创 kettle网络查询节点

上篇文章回顾:上篇文章主要讲了如何编写kettle的第一个作业,相信大家已经掌握;本篇文章主要介绍一些kettle如何去获取数据,获取数据无非是从接口获取或是从本地文件获取;本章主要讲解如何从接口中获取数据,比如调用一个rest接口,获取返回结果。后续还会讲解如何从一个websocket接口获取数据,这就涉及到插件的开发,将会在以后的高级篇教程中进行讲解;HTTP-GET:最终展示结果如下,日志中输出的result字段,便是get请求的返回值;第一步:按照上图方式,将“获取变量”节点、“

2021-03-14 22:52:26 583

原创 kettle环境搭建二

上篇文章回顾:上篇文章主要讲解了如何搭建kettle的使用环境,如何编写和运行第一个转换,并在最后通过两种方式查看运行结果,第一种是通过debug的形式,第二种是通过日志节点进行展示。当然,第二种形式并没有进行详细的讲解,希望大家自行完成。本篇将把第二种展示方式进行讲解,并通过讲解节点使大家对节点感兴趣,自行去挖掘各种节点的使用;除此之外,本章还将讲述如何编写第一个作业;使大家掌握编写作业的能力。日志方式:如上篇所述,日志展示方式的最终结果如下图所示:下面展示创建方式:第一步:搜索.

2021-03-13 13:14:35 310 1

原创 kettle环境搭建

准备工作 jdk8下载与安装 kettle安装文件下载 kettle开发工具详解:菜单1 菜单2第一个转换:节点1 节点3第一个任务:节点1 节点2总结:

2021-03-07 14:01:30 722

原创 认识kettle

为什么要写kettle专栏?在使用了kettle近5年的时间内

2021-03-05 18:12:34 1605 6

原创 playframework学习小记

版本scala:2.12.8sbt: 1.2.8play : 2.7.2配置sbt 配置 ,用户/.sbt/repo.properties[repositories] local maven-local: file:////D:/mvnrepo aliyun: http://maven.aliyun.com/nexus/content/groups/public/ ibiblio: http://maven.ibiblio.org/maven2/ central: h

2020-09-26 22:08:45 148

原创 常见的运营商网络安全问题

运营商网络安全1几种安全问题网络入侵DDos攻击设备控制检测网络设备被控2查找中移动网络资料运营商关键基础设施被控检测常见的网络入侵欺骗攻击会话劫持通信运营商关键信息基础设施安全保障体系的建设研究http://www.doc88.com/p-2803560143391.html防御方法安全策略限制:在网络边界限制非法的IP访问,限制服务和端口扫描行为,并定期核查策略,确保策略有效性网络全流量分析、回溯分析:使用网络流量分析发现和识别异常网络行为,回溯分析评估

2020-09-20 20:39:22 2072

原创 spring事务问题

Spring的事务在 xml 配置文件中添加<tx:annotation-driven /><bean id="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="dataSource" /></bean>@EnableTransactionM

2020-09-12 10:24:29 153

原创 压力测试工具Wrk使用

压力测试工具Wrk介绍概念GitHub地址:https://github.com/wg/wrk安装方式安装环境:Contos7List item切换到用户级的源码目录 cd /usr/local/src安装git,因为要从GitHub下载,如果已经安装,忽略此步,其他机器请使用其他命令如apt-get yum install git -y从GitHub中clone源码git clone https://github.com/wg/wrk.git完成以后,进入wr

2020-09-05 14:01:06 230

原创 为什么需要代码规约

编码规约能做什么?代码规约能够保证代码风格的一致性:因为在软件的整个生命周期中,软件的作者往往不是同一个人。如果大家都遵守这个规范,每个人的代码风格就会保持一致。代码规约能够提升代码的可读性:如果做到了代码风格的一致性,那么看到别人写的代码就和自己写的没有什么差距,这样就可以使程序员很快上手,很好的理解软件。代码规约能够降低软件的维护成本:大家知道软件的整个生命周期中,大概有80%的时间都是用来维护软件。如果都遵守这个代码规约,代码风格就会保持一致,代码的可读性就会提升,维护时间自然就会缩短

2020-08-30 11:02:00 1393

原创 mysql小记

文章目录MySQL事务的基本要素(ACID)事务的并发问题数据库查重复数据InnoDB 锁锁类型显示加锁Redis数据类型String类型Hash类型应用场景常用命令List类型应用场景常用命令Set类型应用场景常用命令SortSet应用场景常用命令Redis常用命令键值常用命令服务器常用命令MyBatis缓存一级缓存二级缓存配置其它MySQL事务的基本要素(ACID)原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节。事务执行过程中出错,会回滚到事

2020-08-23 14:36:49 142

原创 并发编程为什么会有线程安全问题

线程安全的本质:在多线程环境下对共享变量的读写操作导致操作结果与预期结果不一致的问题。线程安全问题都是由全局变量及静态变量引起的。为什么会有线程安全问题呢?多核cpu缓存导致的问题(可见性)多核时代,每颗 CPU 都有自己的缓存,这时 CPU 缓存与内存的数据一致性就没那么容易解决了,当多个线程在不同的 CPU 上执行时,这些线程操作的是不同的 CPU 缓存。比如下图中,线程 A 操作的是 CPU-1 上的缓存,而线程 B 操作的是 CPU-2 上的缓存,很明显,这个时候线程 A 对变量 V

2020-08-15 22:34:20 551

原创 如何复用ETL的数据处理功能进行定制化服务开发(二)

如何复用ETL的数据处理功能进行定制化服务开发(二)上节回顾上篇文章从客户需求,业务场景详细介绍了为何要使用ETL进行定制化服务开发。本问将详细介绍如何进行技术选型,以及如何进行整体设计,从使用者的角度进行剖析。ETL技术调研ETL 工具的比较(Kettle,Talend,Informatica 等)成本:软件成本包括多方面,主要包括软件产品, 售前培训, 售后咨询, 技术支持等。开源产品本身是免费的,成本主要是培训和咨询,所以成本会一直维持在一个较低水平。商业产品本身价格很高,但是一般会

2020-08-09 22:23:08 194

原创 如何复用ETL的数据处理功能进行定制化服务开发(一)

如何复用ETL的数据处理功能进行定制化服务开发简介众所周知,ETL是为数据报表而生,而报表往往是为领导层做决策提供数据支撑。面向领导编程往往是最能体现工作能力的。如何打造一个数据准确、实时性强的报表,就要求生成报表的数据抽取工具具有报表特性的所有功能。市面上的ETL工具比如kettle,阿里的,都具有……非常丰富的功能。然而,如此丰富的功能就仅仅为处理报表呢,近些年在人工智能的数据处理方面也有很大的用途。除了这些,还能在其他领域应用吗?比如:能不能应用在前端的业务场景呢?开放平台API接口能不能快速适配

2020-08-02 23:19:04 358 1

电力监控系统-操作手册

电力监控系统-操作手册

2022-09-17

基于kettle的数据集成平台用户手册.pdf

基于kettle的数据集成平台用户手册.pdf

2021-05-12

db-postgresql-input.ktr

kettle数据库查询节点(db-postgresql-input.ktr)

2021-04-04

db-input.ktr

kettle数据库查询节点(db-input.ktr)

2021-04-04

Excel and Row Normaliser - sample data.xls

kettle文件操作节点(excel-input.ktr 对应的txt文件 Excel and Row Normaliser - sample data.xls)

2021-04-04

excel-input.ktr

kettle文件操作节点(excel-input.ktr)

2021-04-04

customers-100.txt

kettle文件操作节点(txt-input.ktr 对应的txt文件 customers-100.txt)

2021-04-04

txt-input.ktr

kettle文件操作节点(txt-input.ktr)

2021-04-04

node-post.ktr

kettle网络查询节点(node-post.ktr)

2021-04-04

node-get.ktr

kettle网络查询节点(node-get.ktr)

2021-04-04

first-job.kjb

kettle环境搭建源文件(first-job.kjb)

2021-04-04

first-trans.ktr

kettle环境搭建源文件(first-trans.ktr)

2021-04-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除