kettle开发-Day40-AI分流之case/switch

这篇具有很好参考价值的文章主要介绍了kettle开发-Day40-AI分流之case/switch。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言:

        前面我们讲到了很多关于数据流的AI方面的介绍,包括自定义组件和算力提升这块的,今天我们来学习一个关于kettle数据分流处理非常重要的组件Switch / Case 。当我们的数据来源于类似日志、csv文件等半结构化数据时,我们需要在数据流将类似空数据、不想要的数据进行分流加工时,我们应该怎么做呢?

kettle开发-Day40-AI分流之case/switch,Kettle从入门到抛弃,数据库,大数据,kettle,文件处理

 一、Switch / Case 

        1、组件介绍

kettle开发-Day40-AI分流之case/switch,Kettle从入门到抛弃,数据库,大数据,kettle,文件处理

        如上图所示,我们的 Switch / Case 组件,主要包括Switch字段,即我们用于判断的字段,

然后就是指定字符串的类型,掩码和小数点的符号等用来处理一些特殊数据。下面的case 值就是通过Switch字段里面的不同值,执行不同的目标步骤。

        下面的默认目标步骤即当Switch字段数值都不在case值里头就执行默认目标步骤。

类似:

         case when Switch字段=1 then 目标步骤1 

        when Switch字段=2 then 目标步骤2

        else 默认目标步骤。

        2、总结

        Switch / Case,从命名我们就知道,这是一个类似if的条件判断组件。因此当我们需要对转换数据流进行判断时,我们就可以利用它来实现我们很多复杂的需求,如将非数据记录至异常数据表中。具体可参考下面的文章介绍。

kettle 条件判断 Switch Case - 程序员大本营kettle 条件判断 Switch Case,程序员大本营,技术文章内容聚合第一站。https://www.pianshen.com/article/50411833604/        今天我们来介绍一个不一样的,我们来将数据进行分类并处理后存入我们的数据表里头,具体我们可以看下面的案例。

二、实际案例

        1、坏数据变成好数据

        kettle开发-Day40-AI分流之case/switch,Kettle从入门到抛弃,数据库,大数据,kettle,文件处理

         如图所示,我们的一份CSV文件的检测数据,里面的日期字段因为机器故障,导致里面的日期变成类似2023/7/12 2:59:58 、23.7.12 上午 7:11:45、23.7.11 下午 11:07:46、਍23.7.11 下午 9:36:02、਍23.7.12 上午 7:11:45等等多种格式的数据,其中2023/7/12 2:59:58才是我们想要 的数据,很明显我们处理这个日期数据,我们只能按string的格式来处理。因为我们需要将23.转换成2023/,下午 9:36变成下午 9+12:36级21:36等等。

        因为日期+后面的样品名称是数据同步的组合组件,因此我们需要在数据流里面将数据处理成我们需要的数据,而不能再数据同步后再去处理。因此最初正常的同步作业是这样的。

kettle开发-Day40-AI分流之case/switch,Kettle从入门到抛弃,数据库,大数据,kettle,文件处理

         2、Switch / Case数据分流

        为了将那一堆乱七八糟的数据处理好,首先我们将数据大致分为三大类,一类是2023/7/12 2:59:58的正常数据,一种是包含中文上午的数据,一种是包含中文下午的数据。因此我们将数据利用Switch / Case分流。具体转换如下图所示。为了方便大家直接看结果我将分流后的数据输出至EXCEL中方便查看。

kettle开发-Day40-AI分流之case/switch,Kettle从入门到抛弃,数据库,大数据,kettle,文件处理

         如上图所示我们利用switch/case组件成功将三大类的数据输出到不同的EXCEL表中。对应switch/case 组件的配置如下图所示,需要注意的是我们需勾选“使用字符串包含比较”。

kettle开发-Day40-AI分流之case/switch,Kettle从入门到抛弃,数据库,大数据,kettle,文件处理

三、效果

        在前面我们完成了对应的配置开发,最后我们来查看最后的开发效果吧。如下图所示成功将三大类数据输出至不同的EXCEL中,完成了我们数据的分流,当下次你不会用的时候,可以收藏点击查看,希望对你有用。

kettle开发-Day40-AI分流之case/switch,Kettle从入门到抛弃,数据库,大数据,kettle,文件处理

kettle开发-Day40-AI分流之case/switch,Kettle从入门到抛弃,数据库,大数据,kettle,文件处理文章来源地址https://www.toymoban.com/news/detail-558812.html

到了这里,关于kettle开发-Day40-AI分流之case/switch的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【数据预处理】基于Kettle的字符串数据清洗、Kettle的字段清洗、Kettle的使用参照表集成数据

    🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌本专栏

    2024年02月03日
    浏览(56)
  • kettle web 版本 (webspoon) 中文部署 kettle 页面编辑 kettleweb 中文

    github 地址 : https://github.com/HiromuHota/pentaho-kettle 安装命令 可以看到已经装好了 页面访问,可以看到现在是英文的 进入 webspoon 容器 执行命令1 执行命令2 执行命令3 执行命令4 执行命令5 再次编辑 setenv.sh 在文件末尾追加这两项配置 保存 重启成功再次访问地址 汉化成功

    2024年02月11日
    浏览(50)
  • kettle从入门到精通 第五十三课 ETL之kettle MQTT/RabbitMQ consumer实战

    1、上一节课我们学习了MQTT producer 生产者步骤,MQTT consumer消费者步骤。该步骤可以从支持MRQTT协议的中间件获取数据,该步骤和kafka consumer 一样可以处理实时数据交互,如下图所示:  2、双击步骤打开MQTT consumer 配置窗口,如下图所示: Step name: 自定义步骤名称。 Transformat

    2024年04月28日
    浏览(51)
  • 一百四十七、Kettle——Linux上安装的kettle8.2连接ClickHouse数据库

    kettle8.2在Linux安装好后,需要与ClickHouse数据库建立连接 https://pan.baidu.com/s/1iqGyXsTaQSCHEbjj7yX7AA 提取码: mvzd   注意 : clickhouse-plugins文件里就是自定义的驱动jar包 注意: 要知道Linux系统架构是64位还是32位, 它们所属的Linux文件夹不同 到这里,Linux安装的kettle8.2就可以与ClickHou

    2024年02月13日
    浏览(66)
  • 一百零一、Kettle——Kettle8.2.0本地连接Hive3.1.2(踩坑,亲测有效)

    这是目前遇到的最简单但最头疼的安装,因为是在公司之前用过的服务器上进行安装测试,加上又使用比较新的版本,结果踩了不少坑。Kettle连接Hive这个坑,从2023年4月11日下午开始,一致到2023年4月12日中午才弄好,不得不写篇博客记录一下这段难忘的经历。 真是郁闷了半天

    2024年02月07日
    浏览(48)
  • 一百六十、Kettle——Linux上安装的Kettle9.2.0连接Hive3.1.2

    Kettle9.2.0在Linux上安装好后,需要与Hive3.1.2数据库建立连接 之前已经在本地上用kettle9.2.0连上Hive3.1.2 kettle9.2.0安装包网盘链接 链接:https://pan.baidu.com/s/15Zq9wNDwyMnc3qFVxYOMXw?pwd=zwae  提取码:zwae 1、Hive312的lib里面MySQL驱动包的版本是mysql-connector-java-5.1.37.jar 2、Kettle9.2里MySQL驱动包的

    2024年02月12日
    浏览(68)
  • 一百五十二、Kettle——Kettle9.3.0本地连接Hive3.1.2(踩坑,亲测有效)

    由于先前使用的kettle8.2版本在Linux上安装后,创建共享资源库点击connect时页面为空,后来采用如下方法,在/opt/install/data-integration/ui/menubar.xul文件里添加如下代码 menuitem id=\\\"file-openZiyuanku\\\" label=\\\"openZiyuanku\\\" command=\\\"spoon.openRepository()\\\"/ 共享资源库创建后又遇到任务Save时为空的问题。

    2024年02月13日
    浏览(46)
  • 一百四十一、Kettle——kettle8.2在Windows本地开启carte服务以及配置子服务器

    在kettle建好共享资源库后,为了给在服务器上部署kettle的carte服务躺雷,先在Windows本地测试一下怎么玩carte服务 kettle版本是8.2             pdi-ce-8.2.0.0-342     kettle本地安装路径是D:javakettlepdi-ce-8.2.0.0-342 Carte是Kettle自带的调度及监控工具,是一种内置的轻量级的web服务,支

    2024年02月10日
    浏览(56)
  • Kettle Local引擎使用记录(一)(基于Kettle web版数据集成开源工具data-integration源码)

    在前面对 data-integration 做了一些简单了解,从部署到应用,今天尝试把后端运行作业代码拎出来,去真正运行一下,只有实操之后才会有更深刻的认识,有些看着简单的功能,实操过程中会遇到很多问题,这个时候你的想法也会发生改变,所以很多时候为什么开发人员痛恨做

    2024年02月02日
    浏览(47)
  • kettle使用过程记录(详细)

    话不多说上干货  下载地址 https://sourceforge.net/projects/pentaho/files/ 下载所需要的安装版本  下载好后解压到本地  kettle是支持linux与windows的 windows安装解压后生成 这里需要注意  有的人说Spoon.bat配置中的参数不修改可能会出现卡死的状况,所以我也进行了修改(这里描述下  我

    2023年04月08日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包