
ETL 工具
文章平均质量分 79
ETL 工具大的使用
阿龙先生啊
懂点大数据运维, 会写两三行代码,自学了一些 docker, kubernetes。博客主要分享大数据、Linux、云原生相关知识。 目前职位大数据工程师,长远打算做个会敲代码的厨子。
展开
-
【ETL工具】Datax-ETL-SqlServerToHDFS
DataX本身作为数据同步框架,将不同数据源的同步抽象为从源头数据源读取数据的Reader插件,以及向目标端写入数据的Writer插件,理论上DataX框架可以支持任意数据源类型的数据同步工作。同时DataX插件体系作为一套生态系统, 每接入一套新数据源该新加入的数据源即可实现和现有的数据源互通。原创 2023-10-27 16:57:04 · 4490 阅读 · 112 评论 -
【ETL工具】本地环境IDEA远程DEBUG调试Flume代码
Flume 自定义 HDFS-Sink,远程服务器进行部署flume打包好后的代码,本地监控远程flume程序端口,进行本地debug和学习Flume 整个运行流程和Event 数据结构学习。原创 2023-10-26 18:49:52 · 955 阅读 · 50 评论 -
【ETL工具】Sqoop 将MySQL数据导入Hive外部分区表
查询MySQL数据导入 hive不用提前创建好 Hive, 会自动创建,字段类型可能不是我们想要的加 hive-partition-key ,value 也会自动加分区原创 2021-01-30 16:09:42 · 1084 阅读 · 0 评论 -
【ETL工具】Sqoop -----Error: GC overhead limit exceeded
添加默认的fetchsize 大小,不至于GC。原创 2021-01-28 20:07:01 · 1244 阅读 · 0 评论 -
【ETL工具】Kettle 数据同步 Caused by: com.microsoft.sqlserver.jdbc.SQLServerException
不能将值 NULL 列 'dataType',表 'test1.student';列不允许有 Null 值。INSERT 失败。 at org.pentaho.di.core.database.Database.insertRow(Database.java:1319) at org.pentaho.di.core.database.Database.insertRow(Database.java:1243) at org.pentaho.di.core.database.原创 2020-06-05 14:07:23 · 1478 阅读 · 0 评论 -
【ETL工具】kettle 程序报错 Javascript error: TypeError: Cannot call method “trim“ of null
2021/03/05 10:17:58 - 设备通道最后上报时间更新.0 - Finished processing (I=0, O=0, R=17253, W=17253, U=0, E=0)2021/03/05 10:17:58 - 记录集连接 3.0 - Finished processing (I=0, O=0, R=38614, W=50469, U=0, E=0)原创 2021-03-05 11:44:37 · 2878 阅读 · 2 评论 -
【ETL工具】Kettle入门介绍 与 Windows 中的 基本 操作(详细图文并茂)
对于企业或行业应用来说,经常会遇到各种数据的处理,转换,迁移,掌握一种etl工具的使用,必不可少,这里要学习的ETL工具是——Kettle,现在已经更名为PDI。Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出,Kettle允许管理来自不同数据库的数据,提供一个图形化的用户环境来描述想做什么,无需关心怎么做原创 2020-02-12 00:37:24 · 7232 阅读 · 0 评论 -
【ETL工具】Kettle 整合大数据平台(Hadoop、Hive、HBase)
目录一、Kettle整合Hadoop1、 整合步骤2、Hadoop file input组件3、Hadoop file output组件二、Kettle整合Hive1、初始化数据2、 kettle与Hive 整合配置3、从hive 中读取数据4、把数据保存到hive数据库5、Hadoop Copy Files组件6、执行Hive的HiveSQL语句三、Kettle整合HBase1、HBase初始化2. HBase input组件3、HBase output组件环境 kettle 8.2 版本:kettle原创 2020-02-14 20:39:38 · 7591 阅读 · 4 评论 -
【ETL工具】Flume 入门案例实战
Flume 的核心是把数据从数据源(source)收集过来,再将收集到的数据送到 指定的目的地(sink)。但是以上的这些拦截器,不能改变原有日志数据的内容或者对 日志信息添加一定的处理逻辑,当一条日志信息有几十个甚至上百个字段的时候, 在传统的 Flume 处理下,收集到的日志还是会有对应这么多的字段,也不能对你 想要的字段进行对应的处理。同个节点内,Source写入数据到Channel,数据在一个批次内的数据出现异常,则不写入到Channel,已接收到的部分数据直接抛弃,靠上一个节点重发数据。原创 2019-11-14 17:44:55 · 1984 阅读 · 2 评论 -
【ETL工具】Kettle 记录集连接实战
之前文章中 kettle 实战记录这个是 之前的需求 ,使用记录集连接 优化了程序,取消了 阻塞数据的组件,针对批量积压的文件也可以从容应对。https://blog.youkuaiyun.com/qq_35995514/article/details/106856885需求:将HDFS文件解析,将最新的设备状态更新到数据库,由于文件是5分钟2个 ,只想拿到最新的设备状态,所以对文件中的字段做 分组排序(文本文件输入2),根据时间拿到每个设备的最新上报时间;两个文本输入的数据是一样的,文件文件输...原创 2021-02-21 21:45:42 · 1844 阅读 · 0 评论 -
【ETL工具】Kettle 调优 (使用阻塞组件的同时数据量大)
kettle里面转换是并行的,数据是一条一条流经每个组件,队列大小采用默认的10000条即可。但是当使用到【阻塞数据直至步骤完成】、【阻塞数据】相关组件时,则需要根据业务数据量扩大该size的大小。否则,数据会一直在某两个组件之间的缓存队列中存放,当数量达到一定大小时,就会卡主不动。缓存队列的大小对作业没有影响,查看源码发现,缓存队列由inputRowSet 和 outputRowset组成,底部实现是ArrayList,初始化创建的时候,默认容量为10,并不会直接创建设定长度的 数组。并且使用原创 2020-12-20 13:39:19 · 3839 阅读 · 14 评论 -
【ETL工具】Sqoop job(80张表的增量同步方案,Sqoop Job 使用 )
为什么要创建 Sqoop job , 因为 job 可以在 /root/.sqoop/metastore.db.script 保存监控的最近的 时间戳字段,如果不使用 Sqoop job 保存,默认是会如下的效果 ,拿到 给的初始的值和查出的最大值更新插入。注意:Sqoop 不支持 mysql转hive时使用 lastmodified 模式进行增量导入。: sqoop job 密码 保存 用参数。1. Sqoop job 使用示例。创建保存密码的文件,上传到HDFS原创 2020-09-30 12:07:35 · 1335 阅读 · 2 评论 -
【ETL工具】Sqoop exoprt 实战避坑(parquet格式 ,columns 参数详解)
1.对于 hive Parquet+Snappy 格式的数据导出 ,使用 hcatalog 参数, 如果不使用 ,可以采用 另外一种方式解决,将 Hive 表数据查询出来放到 HDFS 临时目录,然后 get 到 本地,使用 MySQL load file 方式,这种方式 显然比较麻烦,但SQL 对表字段内容处理支持很好,更灵活。2.Sqoop export 中 columns 参数 可以让 Hive表中的字段 和MySQL 表中的字段对应,如果 Hive导入的 某个字段缺少,则默认给 NULL。原创 2020-09-29 16:03:20 · 8079 阅读 · 5 评论 -
【ETL工具】Sqoop 经典入门案例
Apache框架Hadoop是一个越来越通用的分布式计算环境,主要用来处理大数据。随着云提供商利用这个框架,更多的用户将数据集在Hadoop和传统数据库之间转移,能够帮助数据传输的工具变得更加重要。Apache Sqoop就是这样一款工具,可以在Hadoop和关系型数据库之间转移大量数据(百度百科)。原创 2019-11-06 22:47:16 · 1018 阅读 · 1 评论 -
【ETL工具】StreamSets 定时调度
Streamsets是一款大数据实时采集和ETL工具,可以实现不写一行代码完成数据的采集和流转。通过拖拽式的可视化界面,实现数据管道(Pipelines)的设计和定时任务调度,Kettle缺点是通过定时运行,实时性相对较差。需求:定时的开启一个管道流,此处希望也可以定时的关闭。目前找到的方式就是下面的这个组件,以下的案例也是基于此组件展开。原创 2020-07-25 12:23:34 · 3506 阅读 · 10 评论 -
【ETL工具】StreamSets简介和入门案例
Streamsets是一款大数据实时采集和ETL工具,可以实现不写一行代码完成数据的采集和流转。通过拖拽式的可视化界面,实现数据管道(Pipelines)的设计和定时任务调度。最大的特点有:可视化界面操作,不写代码完成数据的采集和流转内置监控,可是实时查看数据流传输的基本信息和数据的质量强大的整合力,对现有常用组件全力支持,包括50种数据源、44种数据操作、46种目的地。对于Streamsets来说,最重要的概念就是数据源(Origins)、操作(Processors)、目的地(Destinati原创 2020-07-24 18:49:27 · 6619 阅读 · 5 评论 -
【ETL工具】Kettle 中添加 Kerberos 认证
Kerberos客户端支持两种认证方式,一是使用 principal + Password,二是使用 principal + keytab,前者适合用户进行交互式应用,例如hadoop fs -ls这种,后者适合服务,例如yarn的rm、nm等对于 HDFS的访问认证,我们使用了 principal + keytab原创 2020-07-05 19:53:16 · 3296 阅读 · 0 评论 -
【ETL工具】Kettle 实现 HDFS文件解析同步到SQLServer数据库(ETL 包括:时间格式化、IP校验、字段拼接)
说明:想用Kettle Shell 组件 做到 HDFS中 文件的移动 ,脚本的命令也很简单 ,mv将 加了 .completed 解析完成后的文件移动到 bak 目录,这块想用 kettle的 Shell 组件实现,另外一个思路是直接在 linux 做一个 定时的文件移动也是可以的。此处我的另外一个实现思路是在作业启动的脚本中开启 一个 linux的定时器 ,定时的 将 解析后的 HDFS 的 .completed 文件移动到 bak 目录,也在进一步改进中。就配置一个当前脚本的运行路径,就生效了。原创 2020-06-22 23:03:56 · 1563 阅读 · 2 评论 -
【ETL工具】Kettle 解析HDFS文件进行字段拼接、字符的替换和IP校验
字段的拼接使用 JS 脚本实现,JS脚本在 Kettle 中使用起来很是方便,目前我使用 JS 实现过 IP 校验、字段拼接、文件移动。过滤记录的使用说明,过滤记录 组件的使用在 业务分离是很好用的,尤其是对正则匹配、字段的过滤。此处我是简单的使用,数据清洗不是很复杂没有使用到正则表达式。HDFS 文件获取后,选择 JS脚本组件,在。中可以看到接收到的字段。组件过滤掉不合法的IP。原创 2020-06-21 21:46:05 · 1303 阅读 · 2 评论 -
【ETL工具】kettle 根据时间戳增量的将数据从MySQL同步SQLServer(linux部署脚本启动作业、config.properties 配置数据库)
从MySQL 按时间增量同步到 SQLServer,MySQL中的数据会源源不断的写入,不会删除数据, SQLServer根据 MySQL表中的 modifytime 做增量同步就好,三台阿里云机器做数据的接入、计算、同步。原创 2020-06-10 14:15:09 · 3217 阅读 · 3 评论