kettle系列-5.kettle实现二进制文件迁移

本文就是分享下二进制文件(图片、txt文件等)在oracle和文件系统间的传输的转换示例。

转换示例如下图:

示例本身较简单,但很多人应该还是不太清楚怎么做,很多时候都是上网搜索,网上有关的就是通过javascript脚本入库,整体体验不太好,这里分享的这个示例是我和搞数据的朋友讨论慢慢弄出来的,在windows中文件图片在oracle和文件系统间相互传输都能正常打开。通过kettle自带的控件实现,很简单,主要就是控件属性的设置。

该示例测试mysql的结果是:文件入库没问题,图片入到mysql能正常使用,但从mysql读取出来输出到文件系统就不能打开了,文件大小还是与原文件相同的,可能还需要修改什么设置吧。

数据库相关控件没什么说的,这里还是就只贴出文件读取和输出控件的设置。

时间: 2024-08-24 14:49:04

kettle系列-5.kettle实现二进制文件迁移的相关文章

kettle系列-1.kettle源码获取与运行

第一次写博客,心里有点小激动,肯定有很多需要改进的地方,望海涵. kettle算是我相对较为深入研究过的开源软件了,也是我最喜欢的开源软件之一,它可以完成工作中很多体力劳动,在ETL数据抽取方面得到了广泛的使用.我本身对kettle的各个控件使用也不是很熟悉,只会使用最常见的部分控件,就是这样简单的使用也被它的美深深的吸引住了. 好了,进入正题,这里假设你熟悉java开发.git一般使用.kettle一般使用.kettle源码之前托管在kettle官方的svn上,后来迁移到了github上,在g

kettle系列-2.kettle源码结构分析

kettle是一个开源产品,产品本身设计是很优秀的,代码应该是很多开源爱好者用业余时间贡献的,代码整体结构还是比较容易理解的,但具体到每一个控件内部就因人而异了,感觉还是挺复杂的,肯定别人考虑得比较全面.但因为是开源产品,不像商业产品那样完善,测试.具体代码规范等就没有商业产品严格了,所以bug相对较多什么的都是可以理解的,后面会将我遇到的部分bug及修复方式分享出来. 上一篇文章我们导入了5个项目,是我认为修改使用过程中遇到的bug时可能需要用到的项目,相信通过上一篇文章的介绍很容易就能添加其

kettle系列-[KettleUtil]kettle插件,类似kettle的自定义java类控件

该kettle插件功能类似kettle现有的定义java类插件,自定java类插件主要是支持在kettle中直接编写java代码实现自定特殊功能,而本控件主要是将自定义代码转移到jar包,就是说自定义功能的实现改为在eclipse等ide中开发. 设计本插件的原因是直接在kettle中写java代码是很不容易的事,开发体验与eclipse差得远,java语法还要受到限制,调试麻烦.实现点简单的逻辑还行,稍微复杂一点就比较麻烦,需要对java和kettle相关接口很熟悉.而简单的功能可以采用jav

kettle系列-3.kettle读取数据库资源库很慢的优化

环境:windows7,jvm内存设置14G,kettle5.1后来升级到5.4,oracle作为资源库. 问题背景:我们通过web页面管理kettle的job运行,这只是一个管理界面,即使web项目停掉也不会影响job的运行情况,实际运行job的是后台程序,随着job数量的增多,达到三四百个时,job的运行速度也达到了难以接受的程度. 方案1: 针对出现的问题,经测试发现,job一经运行就不会再重新从资源库读取了(针对定时运行的job),job中的转换则每次都会重新从资源库中读取,我找到了or

kettle系列教程一

 1.kettle介绍 kettle是一个ETL(Extract, Transform and Load抽取.转换.载入)工具,ETL工具在数据仓库项目使用非常频繁,kettle也可以应用在以下一些场景: 在不同应用或数据库之间整合数据 把数据库中的数据导出到文本文件 大批量数据装载入数据库 数据清洗 集成应用相关项目是个使用 kettle使用非常简单,通过图形界面设计实现做什么业务,无需写代码去实现,因此,kettle是以面向元数据来设计: kettle支持很多种输入和输出格式,包括文本文

kettle系列教程二

 kettle系列教程二 1.Hello World 示例 通过这个例子,介绍kettle的一些基础知识及应用: n 使用Spoon工具 n 转换的创建 n 步骤及连线 n 预定义变量 n 在Spoon中预览和执行 n 使用pan工具在终端窗口执行转换 概述 我们要实现的目标是:通过一个包含人名称的CSV文件,创建一个XML文件,内容是针对每个人添加上问候. 如果csv文件内容如下: last_name, name Suarez,Maria Guimaraes,Joao Rush,Jenni

kettle系列一之eclipse开发

1.引言 最近公司开始一个etl项目,底层结合开源的kettle进行开发.那么学习kettle势在必行,kettle的使用在这里就不用介绍了,网上有很多的资料.例如:kettle中文社区,我们在这里主要介绍代码方面的开发. 2.开发环境     引用别人的一篇博客:https://my.oschina.net/nivalsoul/blog/779968 注意一点:去官网下载工具版的kettle要和源码的版本一致. 3.异常解决: (1). 安装完环境之后,项目上带有红色的叉,没有注意然后选择ru

Jenkins进阶系列之——17Jenkins升级、迁移和备份

升级Jenkins Jenkins的开发迭代非常快,每周发布一个开发版本,长期支持版每半年更新一次(ps:大版本更新).如此频繁的更新,怎么升级呢? war:下载新版的war文件,替换旧版本war文件.重启即可. 二进制:卸载旧版本,安装新版本即可. Jenkins程序下载地址:http://mirrors.jenkins-ci.org/ note:升级前,请测试该版本和你本地数据的兼容性.如何测试:将JENKINS_HOME拷贝一份到新的机器,用新版的程序启动.测试对应的插件和配置. 迁移和备

kettle系列-kettle管理平台部署说明

本介绍我的开源项目[kettle-manager]kettle管理平台如何获取并部署使用,该项目介绍请参看另一篇博文:http://www.cnblogs.com/majinju/p/5739820.html . 下面主要介绍项目部署流程,使用中有问题可以发邮件反馈. 准备工作: 本系统暂时只支持oracle数据库,后续稍作改进就能支持更多数据库,所有你需要有一个oracle数据库. 本系统现在默认的kettle版本是5.4,部署包中的jar都是kettle5.4的jar,理论上更换对应版本的j