- 博客(43)
- 收藏
- 关注
原创 kettle demo8 调用存储过程
调用存储过程也很简单,首先创建一个存储过程,传入一个boo表记录的id,然后设置status为1,然后返回当前记录的名称。调用存储过程设置,返回值哪里要清空,然后参数里把刚才的ID字段拉进来,再加一个返回字段result。
2024-08-14 09:28:32 260
原创 kettle将Excel数据导入oracle
双击Excel输入,重命名控件名称get_data,在文件选项卡浏览选择Excel文件(若不能识别Excel文件,可选择表格类型),单击增加将Excel文件选中。双击表输出控件,“新建”–>选择Oracle,jdbc连接方式,然后填写对应的连接数据库信息,“测试”,成功后会有对应提示。注意:需要将Oracle安装目录下的驱动程序ojdbc14.jar拷贝到Kettle的lib目录下。选择“字段”,“获取来自头部数据的字段”,这里Kettle能自动识别字段类型,若不满意可自行修改。(1)Excel输入控件。
2024-08-14 09:25:57 353
原创 Kettle实现从mysql中取2张表数据关联的数据,并写入到mongodb中
(2)点击获取SQL查询语句按钮,选择对应的表t_bulo_storage_collect_201808。(3)根据实际情况增加where之后的查询条件,然后点击确定,完成此表输入的全部设置。选中DB连接:连接类型选择MySQL,输入主机名称,数据库名称,端口号,用户名,密码。3 按照步骤2的方法,再建立一个表输入,名称为t_bulo_storage_info。输入连接名称,点击确定。2 选择输入》表输入,拖动到主面板中,双击进行设置。选择第一个步骤,第二个步骤,连接类型,和连接字段。(1)输入步骤名称;
2024-08-14 09:22:04 308
原创 时间戳(timestamp)方式 来实现数据库的增量同步操作(一)
id 为2的元组对应的 temp.lastTime 字段 是 从 tt2 表中选出的 updateTime 值为最新的 字段。其中id为1 的元组对应的temp.lastTime 字段 是 从tt1 表中选出的 updateTime 值为最新的,通过检查那个表是最新更新的,那个表就作为新表,而另外的表最为旧表被新表中的数据进行更新。首先创建一个快照表,然后将tt1,tt2表中的最大(最新)时间戳的值插入到快照表中。由于tt1,tt2所在的数据库是不同的,所以分别创建两个数据库的连接。
2024-08-14 09:18:59 589
原创 Kettle根据时间戳同步数据实现
2、如果采用单次限制数据记录量,由于Kettle本身不支持数据分页,当数据表如果存在大量数据记录的时间戳都相同时,可能会导致部分数据无法同步过来。由于Kettle自身的特殊性以及在多个步骤中kettle自身处理数据库事务的特殊性,尝试了很多种方案,最终确定暂使用如下方案。更多数据实时同步方案,请参考笔者的另一篇博文:大数据时代,数据实时同步解决方案的思考—最全的数据同步总结。3、配置时,每个支队的数据汇聚时,都单独配置一个转换作业任务。4、Kettle支持字段映射,转换,以及作业定时运行等。
2024-08-14 09:14:26 345
原创 Kettle无法创建资源库或者创建资源库缺少表的–常见几种原因
数据库版本不对,例如我用mysql(8.4)数据库只创建成果三十张表,正常应该创建资源库生成46张表。从而也导致了用admin/admin登录失败。改成了mysql 8.0 版本没有这个问题。启动kettle以后,在右上角,没有出现创建资源库的connect字样,如下图所示。2.1找到repositories.xml文件。1) JDK版本不对,JDK需求为1.8版本。2.2 打开后,可以看到出现乱码的资源库描述。2.原因分析:资源库文件出现了乱码造成的。4、创建资源库缺少表原因。2.3 删除掉乱码部分。
2024-08-14 09:05:21 274
原创 kettle资源库乱码 ****************
2.如果数据库设置正确仍然存在中文乱码,则可能是因为有的客户端数据库默认的编码集不是UTF-8,我们只需要在输出时对输出的数据库进行编码配置。b.打开表输出——>数据库连接后的“编辑”——>Advanced,在下方的空白处输入:set names utf8;,设置数据库客户端的字符集为utf8。1.查看数据库的字符集是否是UTF-8(最常用的字符集)
2024-08-14 09:00:26 426
原创 kettle异常处理、自定义错误处理示例
2.鼠标点中你想进行错误处理的控件,右键选择定义错误处理。1、新建基本转换控件,这里便于方便,就建了2个。
2024-08-14 08:58:28 235
原创 KETTLE调用http传输中文参数的问题
解决中文转码的问题:在"表输入"控件里面输入中文,传输到col1变量里面,出错时,会看到中文需要转码的格式,如下col1=【通知】_hive服务检测异常,这句会被转换成col1=%E3%80%90%E9%80%9A%E7%9F%A5%E3%80%91_hive%E6%9C%8D%E5%8A%A1%E6%A3%80%E6%B5%8B%E5%BC%82%E5%B8%B8;可见http需要接收转码好的URL编码方式,ktr的http控件,就需要改成“http://XXXX?
2024-08-14 08:56:18 727
原创 kettle-spoon界面空白
解决办法:清除kettle的配置文件,包括:Data Integration/.kettle、C:\Users\XXX.kettle等所有配置文件。点击spoon的connect、save、打开资源库等等,出现以下界面空白,已排查IE11的问题。
2024-08-14 08:54:27 476
原创 Linux 开启关闭防火墙操作
1.5 开放指定端口(注意执行命令之后reload使其生效才行)1.6 关闭指定端口(注意执行命令reload之后使其生效才行)8080, 3306, 6379表示我开放了这个端口给外部访问。1.3 永久关闭防火墙(重启服务器防火墙不会重新开启)1.2 暂时关闭防火墙(重启服务器防火墙会重新开启)如下所示表示防火墙是运行状态,1.7 查看当前开放的端口。1.1 查看防火墙状态。开放 3306 端口。开放 6379 端口。开放 7000 端口。关闭 3306 端口。关闭 6379 端口。
2024-06-21 11:27:58 263 1
原创 Linux下更新curl版本
注意:直接使用yum remove curl卸载,会报错,别的软件依赖,不能卸载,所以必须强制卸载rpm -e --nodeps。可以在这个网站上找最新的版本 http://curl.haxx.se/download/,我们下载最新版本7.87.0。由于低版本的curl存在一定的漏洞,会对我们的服务器安全造成问题,所以,我们需要将curl由低版本安装到高版本。1、首先检测服务器安装的curl版本。2、查看服务器安装的curl的安装包。3、卸载旧版本curl。11、查看curl版本。注意:这一步如果报错。
2024-06-20 11:38:57 1274
原创 docker 四种网络模式解析
Docker使用Linux桥接(参考《Linux虚拟网络技术》),在宿主机虚拟一个Docker容器网桥(docker0),Docker启动一个容器时会根据Docker网桥的网段分配给容器一个IP地址,称为Container-IP,同时Docker网桥是每个容器的默认网关。使用host模式的容器可以直接使用宿主机的IP地址与外界通信,容器内部的服务端口也可以使用宿主机的端口,不需要进行NAT,host最大的优势就是网络性能比较好,但是docker host上已经使用的端口就不能再用了,网络的隔离性不好。
2024-06-17 14:16:01 982
原创 安装Node.js
在 node_global 目录中,您可以找到全局安装的 Node.js 模块的文件和元数据,例如包的源代码、可执行文件、依赖项和描述文件等。请注意,node_global 目录和 node_cache 目录是不同的目录,如果您更改了其中任何一个目录的位置,那么全局安装的 Node.js 模块和缓存文件将被保存到新的路径中。3.使用淘宝源全局安装 cnpm。node_global 目录存储全局安装的 Node.js 模块,而 node_cache 目录存储 Node.js 模块的缓存文件。
2024-03-30 19:48:36 549
原创 使用Kettle实现数据实时增量同步
前言本文介绍了使用Kettle对一张业务表数据(500万条数据以上)进行实时(10秒)同步,采用了时间戳增量回滚同步的方法。关于ETL和Kettle的入门知识大家可以阅读相关的blog和文档学习。时间戳增量回滚同步假定在源数据表中有一个字段会记录数据的新增或修改时间,可以通过它对数据在时间维度上进行排序。通过中间表记录每次更新的时间戳,在下一个同步周期时,通过这个时间戳同步该时间戳以...
2024-02-29 14:49:33 2201
原创 数据可视化平台--FineBI
点击「销售额」下拉,选择「过滤」,添加数据过滤条件「添加条件>最大的N个」,其中,固定值「N=10」,点击「确定」。选择「数据准备>业务包」中的「入门表」点击「创建组件」,选择组件所在的仪表板名称和位置,点击「确定」成功创建。在「图表属性」下,可以设置「全部」指标属性,或者「毛利额」、「毛利额-环比增长率」的各自属性。FineBI:仪表板驾驶舱,主要是把公司领导关心的指标,维度等放在一个页面展示,通过 FineBI 的汇总、过滤等操作,可以很快地将关键指标展示出来,供企业领导决策分析做数据支撑。
2024-02-29 09:54:11 729
原创 MySQL索引实战 阿里MySQL规范解读
反例:在某业务中,由于多表关联查询语句没有加表的别名(或表名)的限制,正常运行两年后,最近在某个表中增加一个同名字段,在预发布环境做数据库变更后,线上查询语句出现出1052异常:Column ‘name’ in field list is ambiguous。外键影响数据库的插入速度。说明:MySQL并不是跳过offset行,而是取offset+N行,然后返回放弃前offset行,返回N行,那当offset特别大的时候,效率就非常的低下,要么控制返回的总页数,要么对超过特定阈值的页数进行SQL改写。
2023-03-21 09:42:23 698
原创 Postman本地测试上传MultipartFile文件接口
在请求Body中选择form-data传输类型,填写后端file参数名称,并将参数设置为File类型,这时value输入框将变成文件选择框。如果此时发送请求给后端,会返回报错request is not a multipart request.我们还需要将数据传输类型Content-Type设置为multipart/form-data.
2023-03-20 10:21:34 3407
原创 修改ip重启网络外部无法访问docker暴露端口
一、背景一般需要对外提供服务的Docker容器,我们在启动时后使用-p命令将对外访问端口暴露给外部,例如启动Docker Registry,我们将5000端口映射出来供外部访问:docker run -d -p 5000:5000 registry但最近碰到一个非常奇怪的情况:研发组里一个CentOS 7测试环境里部署有Docker Registry,并对外暴露了端口。启动容器后一段时间内都是可以正常工作的,但在不定时间间隔后,外部主机就会出现无法从仓库中拉取镜像的情况,提示TimeOut:然而
2020-07-09 08:34:25 1138 1
原创 linux暴露端口可以被外部访问
linux暴露端口可以被外部访问,把端口号换成要暴露的端口:/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPTCentos 7 开启端口CentOS 7 默认没有使用iptables,所以通过编辑iptables的配置文件来开启80端口是不可以的,CentOS 7 采用了 firewalld 防火墙查询是否开启80端口则:firewall-cmd --query-port=80/tcp开启80端口:firewall-cmd --add-po
2020-07-09 08:31:45 1232
原创 sap_hana
环境:HANA2.044,开发数据库(SYSTEMDB、DEV、QAS、POD、POQ)、正式数据库(SYSTEMDB、PRD、POP)DEV 、QAS、PRD在S4的DB13中发起备份作业,POD、POQ、POP、SYSTEMDB用OS脚本发起备份作业。 一、用脚本实施定时备份:开发数据库上1、确定数据库备份目录:/hana/shared/HED/HDB00/backup/data/DB_DEV/hana/shared/HED/HDB00/backup/data/DB_QAS/hana/shar
2020-06-18 17:18:31 282
原创 docker部署springboot项目
安装docker#安装yum install docker#检验安装是否成功[root@localhost opt]# docker --versionDocker version 1.13.1, build 7f2769b/1.13.1#启动systemctl start docker#换镜像源sudo vim /etc/docker/daemon.json内容如下...
2020-05-07 11:41:28 162
原创 mycat
MyCat一个彻底开源的,面向企业应用开发的大数据库集群。基于阿里开源的Cobar产品而研发。能满足数据库数据大量存储;提高了查询性能。文章介绍如何实现MyCat连接MySQL实现主从分离,并集成SpringBoot实现读写分离。MySQL配置主从关系说明 192.168.0.105 Linux 数据库作为主master数据库 127.0.0.1 Window 作为从sla...
2020-05-07 10:56:40 162
原创 kettle创建资源库
kettle常见的资源库有3种:数据库资源库、文件资源库、pentaho资源库。文件资源库是在一个文件目录下定义一个资源库,因为kettle使用的是虚拟文件系统(Apache VFS),所以这里的文件目录是一个广泛的概念,包括了zip文件、web服务、FTP服务。pentaho资源库是一个插件(kettle企业版中有),实际是一个内容管理系统(CMS),它具备一个理想的资源库的所有特性,包括版...
2020-03-23 09:56:20 566
原创 实时数据库碰到时序数据库的火花
嗨进入正题之前,咱们先讲个故事。在2018年接触到工业互联网之前,我完全没了解过时序数据库(下面就简称TSDB了),因为做标准的原因开始慢慢接触起国内一些做TSDB的厂家,其中不乏充满干劲的创业公司和经验丰厚的老牌信息化厂商,实力雄厚的BATH天团在TSDB上也都有布局,突然间各种TSDB产品就像雨后春笋一般涌现了。它是什么时候开始火的?其实从2016年开始就有了这个趋势,引用一下DB-Engin...
2020-03-09 16:11:31 856
原创 工业大数据漫谈12:实时数据库与时序数据库
在工业大数据数据库存储领域,除了传统的关系型数据库和分布式数据库以外,还有一种类型的数据库是非常常用,而且是非常有必要的,就是实时数据库和时序数据库。实时数据库诞生于美国,主要是因为现代工业制造流程及大规模工业自动化的发展,导致大量的测量数据需要集成和存储,而采用关系数据库难以满足速度和容量的要求,因此在80年代中期,开始诞生了适用于工业监控领域的实时数据库。实时数据库其实并不单单只是一个数据...
2020-03-09 16:04:48 1055
原创 工业大数据漫谈
今天,整理了一些工业大数据的相关案例,看看各家企业是如何成功实施工业大数据的。1、能够实现全生产过程的信息透明化的案例通过采用集成自动化与驱动解决方案,能够显著提高生产效率和灵活性。原东德玻璃制造商f | glass就是一个很好的实例。它的工厂可以算得上是全世界最先进、最节能的工厂之一了。该工厂采用了一套集成自动化解决方案、一个先进的能源管理系统以及一个创新的热回收系统。从原材料供应和混合,到...
2020-03-09 16:04:00 441
原创 OPC接口在PI实时数据库中的应用
OPC(OLE FOR PROCESS CONTROL)是一个开放性的工业标准,它是由一些世界上著名的自动化系统和硬件、软件公司和Microsoft(微软)紧密合作而建立的,是微软公司的OLE在过程控制方面的应用。OPC以COM/DCOM技术为基础,采用客户/服务器模式,为工业自动化软件面向对象的开发提供了统一的标准。采用这项标准后,硬件开发商将取代软件开发商为自己的硬件产品开发符合标准的OPC...
2020-03-08 10:43:50 1611
原创 API接口函数的应用
PI API提供一个公共的编程接口,用C/C++或VB、甚至连PI-PROCESSBOOK中内嵌的VBA都可以对PI数据库进行数据读写。用API开发PI的接口一般有两种方法。一是用接口程序去控制一切与PI数据库有关的操作,这些操作包括建点和属性配置工作、数据读写工作等等,这样要用到PI-API和PI-SDK,对数据读写可以利用PI-API,建点和属性配置工作可以利用PI-SDK。这种方法用起来...
2020-03-08 10:42:44 825 1
原创 建立计算点时的小错误
在使用PI-SMT建立计算点的时候,在exdesc属性列写入公式。公式中,点名要用单引号引起来,关键字和关键字之间、点名和关键字之间都要用空格分隔,不要有换行符,否侧不认,会出现SCAN OFF错误。————————————————版权声明:本文为CSDN博主「baiyang0475」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。原文链接:htt...
2020-03-08 10:42:00 158
install-docker-centos7.8.2003.rar
2023-03-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人