首页 > 其他分享 >kettle从入门到精通 第五十一课 ETL之kettle Avro input

kettle从入门到精通 第五十一课 ETL之kettle Avro input

时间:2024-04-05 19:55:46浏览次数:29  
标签:fields kettle Avro file 第五十一 input 数据

1、我们在学习nifi的过程中有接触到Avro schema,当时我在想kettle应该也支持Avro,果不其然kettle也是支持Avro文件的读和写的。今天我们一起来学习下kettle中如何使用Avro input 读步骤。对Avro 不了解的,可以学习文章ETL工具-nifi干货系列 第四讲 Avro schema 序列化框架

打开spoon,拖拉Avro input和写日志步骤到画布,然后连线,如下图所示:

 2、双击Avro input 步骤进行配置,如下图所示:

Step name:自定义步骤名称

Source-Format:数据来源格式,有Avro file,JSON datum,Binary datum,Avro file(use alternate schema),本次演示采用Avro file

Avro file(Avro 文件)

源材料位于单个位置。模式嵌入在数据中。
JSON datum(JSON 数据)
源材料位于不同位置。数据以JSON格式包含,并且模式与数据分离。
Binary datum(二进制数据)
源材料位于不同位置。数据以二进制格式包含,并且模式与数据分离。
Avro文件(使用备用模式)
源材料位于不同位置。模式与数据分离。

Source-Source:

from file,通过浏览选择Avro 文件

from field,通过选择前置步骤的字段进行设置

 3、Avro fields,本选项卡主要是提取Avro 数据文件中的字段,点击Get fileds之后会自动填充,然后可以继续进行调整设置,如下图所示:

 Avro path (Avro type):Avro源的位置(及其格式类型)。

Indexed values:

Avro路径集合中要使用的索引键。您可以使用此字段进行映射或数组扩展,从而将数组或映射值扩展为返回多行数据。

要返回映射元素,请指定索引键。
要返回数组元素,请指定数组索引号,或者使用星号通配符 (*) 来返回数组的所有元素。
当此字段留空时,不会返回字段的数据。

Name:输入字段的名称。

Type:输入字段的类型,例如String或Date。

Format:输入字段的格式。

Pass through fields from previous step:

选择之后将字段从上一步传递到下一步,同时将当前步骤中的字段传递到下一步。

清除选择不将上一步字段传递到下一步。

Allow null values for missing paths or fields:

选择以使用null值替换传入数据中的缺失字段。
清除选择以不使用null值替换缺失字段。

4、Lookup fields

你可以使用查找字段选项卡创建变量,并将它们映射到特定字段,以在解码时用作对 Avro 结构的查找。

更多细节可以参考官网文档https://docs.hitachivantara.com/r/en-us/pentaho-data-integration-and-analytics/10.1.x/mk-95pdia003/pdi-transformation-steps/avro-input/options/lookup-fields-tab

 

 

标签:fields,kettle,Avro,file,第五十一,input,数据
From: https://www.cnblogs.com/zjBoy/p/18114105

相关文章

  • kettle使用MD5加密增量获取接口数据
    kettle使用MD5加密增量获取接口数据场景介绍:使用JavaScript组件进行MD5加密得到Httpheader,调用API接口增量获取接口数据,使用jsoninput组件解析数据入库案例适用范围:MD5加密可参考、增量过程可参考、调用API接口获取数据可参考、JsonInput组件使用可参考整个job设置......
  • ETL工具-nifi干货系列 第四讲 Avro schema 序列化框架
    一、在使用nifi的过程中会使用到遇到avroschema、avrodata、avroReader、avroWriter等,所以本节课和大家一起学习下avro相关知识。 二、什么是AvroApacheAvro是hadoop中的一个子项目,也是一个数据序列化系统,其数据最终以二进制格式,采用行式存储的方式进行存储。三、什么......
  • KETTLE:如何提高传输速度
    先看结果:7分钟500万数据。  优化步骤:1.增加参数useServerPrepStmts=falserewriteBatchedStatements=trueuseCompression=true 122.第二步,增加写入量。默认的100太小,改成合适的写入量。 原文链接:https://blog.csdn.net/pingsha_luoyan/a......
  • 爬虫工作量由小到大的思维转变---<第五十一章 Scrapy 深入理解Scrapy爬虫引擎(2)--引擎
    前言:继续上一篇:https://hsnd-91.blog.csdn.net/article/details/136943552        本章主要介绍Scrapy引擎的启动流程、请求处理的生命周期、如何处理下载的内容以及触发ItemPipeline的过程。还讨论了数据处理在爬虫解析函数和ItemPipeline中的作用,并介绍了引擎......
  • Kettle之Neo4j插件
    Neo4j插件下载安装下载地址:https://github.com/knowbi/knowbi-pentaho-pdi-neo4j-output/releases解压文件,放入kettle的plugins目录中需要先删除所有历史/plugins/Neo4JOutput的文件夹重启kettle使用kettle版本插件,已不再维护;现维护的为kettle分支hop,地址:https://github.c......
  • 代码随想录算法训练营第五十一天| ● 309.最佳买卖股票时机含冷冻期 ● 714.买卖股
    最佳买卖股票时机含冷冻期  题目链接:309.买卖股票的最佳时机含冷冻期-力扣(LeetCode)思路:本题难点在于如何将冷冻期加入到状态转移方程中,不妨画个图:按理来说,如何我们正处于买入状态,将股票卖出后,应该是冷冻状态,但是这里多加了一个今日卖出状态,就是将今日卖出和卖出状态分开......
  • 代码随想录算法训练营第五十一天 | 714.买卖股票的最佳时机含手续费,309.最佳买卖股票
     股票总结https://programmercarl.com/%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92-%E8%82%A1%E7%A5%A8%E9%97%AE%E9%A2%98%E6%80%BB%E7%BB%93%E7%AF%87.html 714.买卖股票的最佳时机含手续费 已解答中等 相关标签相关企业 提示 给定一个......
  • kettle从入门到精通 第五十课 ETL之kettle 课程源文件分享
    Kettle是一款功能强大的开源ETL工具,被广泛应用于数据集成、数据转换和数据加载等领域。随着数据量和多样性的不断增加,使用Kettle进行数据处理已成为许多企业和数据工程师的首选。在过去的几个月里,我已经撰写了将近50篇关于Kettle的文章,涵盖了各种主题和用例,如数据抽取、数......
  • Kettle - 使用案例
       原文链接:https://blog.csdn.net/gdkyxy2013/article/details/117106691案例一:把seaking的数据按id同步到seaking2,seaking2有相同id则更细数据案例二:使用作业执行上述转换,并且额外在表seaking2中添加一条数据案例三:将Hive表的数据输出到HDFS案例四:读取HDFS文件并将sal......
  • kettle MongoDB Output 配置说明
    基本配置ConfigureConnectionTab数据库连接Connectiontimeout:尝试连接数据库所等待的最大时间(毫秒),空为无限,建议5000Sockettimeout:sql在执行成功之前等待读写操作的时间(毫秒),空为无限,建议5000OutputOptionsTab输入表与相关设置Truncateoption:在数据传输前清空表......