kettle插件-kettle MinIO插件,轻松解决文件上传到MinIO服务器

 场景:周二下班刚下地铁的时候有一位大佬,咨询kettle是否可以适配MinIO,功能要实现将图片或者base64通过kettle直接上传到MinIO服务器。

 接到需求,沟通需求,开干。经过3天左右研发和调试MinIO插件已经成功交付,对方经常部署到生产环境。

e3f655e7-ad97-4a1c-9d9e-151494294407

 1、本地搭建MinIO服务器

拉取 quay.io/minio/minio 镜像

docker pull quay.io/minio/minio

2、运行 MinIO 容器

docker run -p 9000:9000 -p 9001:9001 \ -e "MINIO_ROOT_USER=admin" \ -e "MINIO_ROOT_PASSWORD=admin123" \ quay.io/minio/minio server /data --console-address ":9001"

3、访问 MinIO 控制台

在浏览器中访问 http://localhost:9001,输入用户名和密码admin/admin123

新建bucket,名字为xiaojingang

ba33e0e8-b4e0-47c8-84ab-ac42db9bc6f4

 4、将插件kettle-minio-plugin-1.0.1.zip放到kettle的plugins目录下面,然后解压,重启spooon客户端。

 5、设计转换

1)生产记录,模拟待上传文件参数

2)Minio oss 插件,使用MinIo client 上传文件

3)写日志

b5a86661-5e1b-442e-ad2a-2e1ffba1b077

6、生成记录步骤设置

fileShowName,待上传文件MinIO服务文件的展示名称

uploadFileContent,该字段支持待上传文件是路径和base64编号后的内容

6a458161-14fb-4d90-8940-33fb8e654d24

 6、MinIO OSS 插件设置

endpoint:MinIO 服务器地址

accessKey:用户名 这是是admin

secretKey:密码 这里是admin123

filename:选择上一步设置的待上传文件字段

bucketName:填写beccketName ,这里填写xiaojingang

contentType:设置待上传文件类型,如images/jpeg,此字段可为空,不设置有可能无法支持直接预览

uploadFileType:待上传文件类型,是全路径文件还是base64编码,有两个选项,filePath和base64

fileShowName:从前置步骤选择,MinIO服务器展示的文件名称。

a845ddfa-2cd8-4c05-bf89-fdfc12f6c057

 7、保存&允许,文件可以正常上传到MinIO服务器。

68eaa7e2151e004b2b42742271f3ba37

8、打开MinIO服务器查看文件已经上传到服务器。

97fdec98-2735-4fbe-b035-5626ac4d6024

写在最后

老铁们,你们还有什么需求想通过kettle来解决的,咱们评论区或者社群内聊一聊。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/92422.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/92422.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

套接字编程UDP

1.创建套接字int socket(int domain, int type, int protocol);第一个参数,底层用的ip报文统一使用的网络协议都是AFIN第二个参数,面向流的传输协议SOCK_DGRAM(数据报套接字类型):支持数据报(无连接、不可靠…

计算机网络:如何判断B或者C类IP地址是否划分了子网

要判断B类或C类IP地址是否划分了子网,核心在于通过子网掩码分析其网络位长度是否超过该类地址的默认网络位长度。以下是具体的判断方法和细节说明: 一、基础概念:IP地址类别与默认网络位 IP地址分为A、B、C三类(常用),每类地址的默认网络位长度(即未划分子网时,用于标…

智慧农业温室大棚物联网远程监控与智能监测系统

一、痛点破局:从“靠天吃饭”到“知天而作”传统温室大棚管理依赖人工巡检与经验判断,存在三大核心痛点:数据孤岛:温湿度、光照、CO₂浓度等关键参数分散于不同设备,难以实时整合分析;响应滞后:…

PID学习笔记1

在学习江协科技PID课程时,做一些笔记,对应视频1-4,对应代码:02,03,04,0502-位置式PID定速控制main.c:#include "stm32f10x.h" // Device header #include "Del…

C++入门学习3

10.类和对象 C语言结构体中只能定义变量,在C中,结构体内不仅可以定义变量,也可以定义函数。 C中定义类(结构体)的语法: class className {// 类体:由成员函数和成员变量组成}; // 一定要注意…

奇偶校验码原理与FPGA实现

奇偶校验原理与FPGA实现写在前面一、基础原理2.1 奇校验2.2 偶校验2.3 缺点二、举个例子3.1 奇校验例子3.2 偶校验例子3.3 检测出错例子三、FPGA实现写在后面写在前面 奇偶校验码是一种简单的检错码,主要用于数据传输或存储过程中检测奇数个比特错误或者偶数个比特错…

Python中的Lambda函数详解

Lambda函数(匿名函数)是Python中一种简洁的函数定义方式,它允许你快速创建小型、一次性的函数对象而无需使用标准的def关键字。1. Lambda函数的基本语法lambda arguments: expressionlambda:定义匿名函数的关键字arguments&#x…

进阶向:Python编写网页爬虫抓取数据

Python网页爬虫入门指南:从零开始抓取数据在当今数据驱动的时代,网络爬虫已成为获取公开信息的重要工具。Python凭借其丰富的库和简洁的语法,成为编写网络爬虫的首选语言。本文将详细介绍如何使用Python编写一个基础的网页爬虫。什么是网页爬…

客服Agent革命:智能客服系统的技术实现与效果评估

客服Agent革命:智能客服系统的技术实现与效果评估 🌟 Hello,我是摘星! 🌈 在彩虹般绚烂的技术栈中,我是那个永不停歇的色彩收集者。 🦋 每一个优化都是我培育的花朵,每一个特性都是我…

C++-红黑树

1、红黑树的概念红黑树,是一种二叉搜索树,但在每个结点上增加一个存储位表示结点的颜色,可以是Red或 Black。 通过对任何一条从根到叶子的路径上各个结点着色方式的限制,红黑树确保没有一条路 径会比其他路径长出俩倍,…

在Python中避免使用`None`表示特殊情况:函数返回值与异常处理的最佳实践 (Effective Python 第20条)

在Python编程中,函数的设计与实现直接影响代码的可读性、可维护性和健壮性。一个常见的问题是如何处理函数的返回值,尤其是在需要表示某种特殊或异常情况时。许多开发者习惯性地使用None来表示这些特殊情况,但这种方法往往会导致意想不到的错…

从反射到方法句柄:深入探索Java动态编程的终极解决方案

🌟 你好,我是 励志成为糕手 ! 🌌 在代码的宇宙中,我是那个追逐优雅与性能的星际旅人。 ✨ 每一行代码都是我种下的星光,在逻辑的土壤里生长成璀璨的银河; 🛠️ 每一个算法都是我绘制…

算法_python_学习记录_01

人心的成见是一座大山。一旦有山挡在面前,则很难到达下一站。所需要做的,是穿过这座山。 偶然间看了一个视频,说的是EMASMA的自动交易策略,这个视频做的很用心,在入场的时间不仅要看EMA的金叉,还需要看其他…

机器翻译中的语言学基础详解(包括包括语法、句法和语义学等)

文章目录一、语法(Grammar):语言规则的底层框架1.1 传统语法理论的应用1.2 生成语法(Generative Grammar)1.3 依存语法(Dependency Grammar)二、句法(Syntax)&#xff1a…

MQTT:Dashboard访问授权

目录一、认证1.1 创建认证器1.2 多认证器二、授权2.1 ACL文件授权配置2.2 使用内置数据库授权配置一、认证 认证:就是验证客户端的身份。 1.1 创建认证器 选择认证方式配置数据源配置数据源的相关参数 认证器创建之后,在使用客户端连接Dashboard时&am…

Serper注册无反应

google邮箱才行,163邮箱注册无反应,其他邮箱没试过 在尝试websailor系列的时候,需要注册serper,获取Google Search Key serper.dev/dashboard

聊聊经常用的微服务

聊聊微服务 架构演变 单体架构: All in One,所有的功能模块都在一个工程里。 SOA架构: 这个架构当不当正不正,对于现在来说,有点老,甚至需要ESB,WebService之类的,基本不会使用了。…

第十四届蓝桥杯青少年组省赛 编程题真题题解

明天我就要考蓝桥杯省赛了,本蒟蒻已瑟瑟发抖,所以现在写一篇文章。 题目分别为: 1.​​​​​​B4270 [蓝桥杯青少年组省赛 2023] 特殊运算符 2.B4271 [蓝桥杯青少年组省赛 2023] 四叶玫瑰数 3.B4272 [蓝桥杯青少年组省赛 2023] 质因数的…

HTML全景效果实现

我将为您创建一个精美的360度全景效果页面,使用Three.js库实现沉浸式全景体验,并提供用户友好的控制界面,完整代码看文章末尾。 设计思路 使用Three.js创建全景球体 添加控制面板用于切换不同场景 实现自动旋转和手动控制选项 添加加载状…

Python 属性描述符(描述符用法建议)

描述符用法建议 下面根据刚刚论述的描述符特征给出一些实用的结论。 使用特性以保持简单 内置的 property 类创建的其实是覆盖型描述符,__set__ 方法和 __get__ 方法都实现了,即便不定义设值方法也是如此。特性的 __set__ 方法默认抛出 AttributeError: …