导航:首页 > 数据处理 > kettle海量数据怎么分组

kettle海量数据怎么分组

发布时间:2023-05-10 09:03:36

❶ kettle从文本文件输入时怎么拆分字段

打开kettle,定义数据源

1
kettle中定义两个数据源,其中“DS_ERP”是来源数据库,“DS_ODS”是用于同步的数据库

END
新建转换,用于同步某一张表

1
新建一个转换(执行SQL脚本--->>表输入--->>表输出)
执行SQL脚本:删除DS_ODS库中已经存在的数据
表输入:查询DS_ERP库中的数据
表输出:将“表输入”中的结果输出到DS_ODS库中

2
执行SQL脚本:删除DS_ODS库中已经存在的数据
${qy_table_name}:这个是参数,指同步的表名

3
表输入:查询DS_ERP库中的数据缺卜袜
${qy_table_name}:这个是参数,指同步的表名

4
表输出:将“表输入”中的结果输出到DS_ODS库中
${qy_table_name}:这个是参数,指同步的表名

END
新建转换,用于获取需要同步的表弊虚名

1
新建一个转换(文本文件输入--->>复制结果到记录)
文本文件输入:通过读取指定txt文件,获取所有要同步的表。(这里也可以通过其他方式获取,例如通过sql查询数据库系统表)

2
指定txt文件路径

3
定义txt文件中的字段名,同上一步中定义的参数名

4
txt中定义需要同步的表,每行一张表名

END
新建任务,实现批量同步

新建任务,调用前面的转换

其中,同步表的转换需要设置循环执行,并将获取到的表名传递伏激到转换内部

❷ kettle中做查询时,遇到大数据时怎么处理

在kettle常常有处理从一个源数据中做转换.做转换的时候, 需要去查另一个数据库.

这种问题遇到数据小时候还好办. 但是数据魇 时候就麻烦来了.
下面针对三种情况做具体情况的选择办法
1. 当需要转换的数据特别大的时候, 例如: 10W条以上.或者100W条以上时.

上图中,hadoop数据导入氏碰,导入的数据如果够多,例如100W条以上,其中一个字段需要查询数据库中查询,而这个字段的类型并不多,例如只有10个类
型或者数据库中就只有这10个类型.那么,可以走线路2, 并且线路2中的 "使用缓存"
可以打勾,也可以不打.当然你这个源里的数据太多,打上当然最好了.因为省得再去你的数据库里再查.
但是当源里的数据类型还是只有10个类型,但是你的数据库里面存了有10000条记录时,怎么办?
有两种解决办法:
1).线路2:并且查询铅核猛节点中的 "使用缓存" 不能打勾.
2).线路1,并在"带条件的结果查询供流查询使用" 这个结点中,用一个SQL,过滤一下数据,然后尽可能地把那里包括的这些记录查出来.这样在流里的比对时.也很快很多.必竟是在内存里做运算了

2. 查另一个数据库的数据量大时,而你的源数据不大.

最好的选择是
线路1,并在"带条件的结果查询供流查询使用" 这个结点中,用一个SQL,过滤一下数据,然后尽可能地把那里包括的这些记录查出来.这样在流里的比对时.也很快很多.必竟是在内存里做运算了

3. 当两个数据源都非常大时(最不想遇到的)
这种情况是最不想遇到的办法
一种选择:
1).线路2中的 "使用槐桥缓存" 打勾.

❸ kettle怎样建立增量抽取数据

如果你用的是INNODB数据库,有渣陪一个最简单有如搭蠢效的调整,枝配就是将INI文件里面的下面参数调整:
原始:
innodb_flush_log_at_trx_commit=1
调整为:
innodb_flush_log_at_trx_commit=2
具体什么意思就不解释了,试了效果好再去找度娘

❹ kettle按一列分组并把另一列合并为一条记录怎么做

首先:使用Sort rows控件,根据胡液州需要分组的字段AA排序下;
其次:使用Group by控件,分组裤蔽字段为:AA,Aggredates部分Name为新字埋链段名,Subjest为BB,Type选择Concatenate strings separated by ,

❺ kettle之行转列,删除多余连接符

最近在看行转列的内容,这边记录一下。
数据集如下:

最终的效果如下:

2、在进行行转列之前需要先按分组字段进行排序,这个在关闭控件时软件也会提示

可以发现空值字段也被连接,最后的效果还不是很理迅悄想,接下去要把多余的逗号去掉
5、字符串替换,删除头部和启轿中间多余的逗号,这边用到了正则表达式

效果如下

步骤3:利用剪切字符串,删除末尾的逗号【剪切字符串这个控件这边有点奇怪,起始位置设为-1,结束位置要设的很小(绝对值不小于该字段值的长亩旁渣度最大值)才能取到除最后一个字符的数据,设0和-1,会得到最后一个字符。。。】

效果如下

最后效果如下

❻ kettle如何将多行数据合并为一列

kettle的转换中有控件“行转列”以及“列转行”

❼ kettle提取postgresql数据

kettle提取postgresql数据步骤如下
1 遍历区域和像素

其中xingzheng是行政区域数据表悄基,thematic是专题像素分类表
2 影像分割
通过查询某个区域和影像的交,达到影像分割的目的,
查询区明运陪域gid=24,波段为1,像素值为4的像素个数的sql语句为:

其中函数ST_Intersects查询两个几何的交集,示例如下

3 栅格统计与数据提取
通过提取函数ST_ValueCount,查询分割后的栅格、指定波段和像素的像素总个数,并乘以单个像元值大小,实现数据面积提取。

其中28.15132773 * 28.15132773为单个像元值面积大小,具体使用albers投影(双标准纬线投影)计算得出,0.000001单位换算成平方公里。
区域gid和像素类型作为输入,实现影像分割和栅格面积统计,完整的sql如下:

4 kettle数据提取转换
kettle数据提取转换过程如下:
kettle遍历区域和像素,如kettle数据转换图所示“表输入2”,sql见步骤1;
kettle影像分割和栅格统计,如kettle数据转换图所示“表输入”,sql见步骤3;
将提取激蠢出的数据保存到文件中。

❽ 怎么使用kettle进行增量数据的抽取

使用工具: 
kettle

首先需要考虑的问题是不可能是全量进行数据的拷贝,数据量如此庞大! 
那么就得考虑增量,何为增量去网络。。哈哈哈

至于如何增量抽取数据,有很多种办法,我这里示范的是通过时间去增量抽取(因为刚好别人的库中每条记录的时间记录的都相当详细,所以我认为这个比较好)。穗春

首先创建好实例库:

SQL> desc timejob; Name Type Nullable Default Comments --------- ------------ -------- ------- -------- UUID VARCHAR2(36) Y BEGINTIME DATE Y

1

2

3

4

5

SQL> desc timejob_bak; Name Type Nullable Default Comments --------- ------------ -------- ------- -------- UUID VARCHAR2(36) Y BEGINTIME DATE Y

1

2

3

4

5

kettle中有自动生成UUID的功能,所以直接拿过来耍,为了简洁方便,字段使用比较少。 
首先利用kettle自动生成测试数据: 


主要生成UUID和当前系统时间到timejob表中(每隔2s执行一次),我们后续的操作都是对这张表中的数据进行一个备份。

下面第二步就是抽取该表中的数据到一个备份表中,timejob_bak。 
弊滑

这里由于是我第一次操作,比较简单,就直接上图了。。

获得上次操作时间和系统时间存到变量中: 
 
这里的开始时间是通过表数据选项获得上一次操作的最终结束时间,以作为我此次增量抽取的开始时间。第二个变量是获得系统的当前时间。

根据时间抽取timejob表中的数据: 

获取变量的写法: 

此处获取的变量就是上一步存入的变量,下面的抽取增量数租族腊据就是一个sql,从timejob表中抽取数据,存数据就是一个表输出。 
抽取数据sq

❾ 使用kettle抽取了1200000条数据,现在要求分批上传到druid,一次5000条,怎么搞

可以采取临时文件的方式圆判陵
kettle在文本输出的时候可以设置5000行生成一个文件
然后再橘戚冲茄分文件导入你的druid

阅读全文

与kettle海量数据怎么分组相关的资料

热点内容
仁化汽车配件代理加盟如何 浏览:1000
之江生物产品销量怎么样 浏览:668
宇花灵技术怎么用 浏览:600
想去泉州卖菜哪个菜市场人流大 浏览:411
沈阳雪花酒水怎么代理 浏览:124
rng秘密交易是什么意思 浏览:732
重庆红糖锅盔怎么代理赚钱吗 浏览:383
考察投资项目关注哪些数据 浏览:592
家纺家具都有什么产品 浏览:37
丘氏冰棒产品有哪些 浏览:414
程序员如何拉到业务 浏览:177
揭阳火车站到炮台市场怎么走 浏览:843
二线国企程序员怎么提升技能 浏览:154
蓝翔技术学院西点多少钱 浏览:787
徐工集团北京代理点有哪些 浏览:531
如何做龙大总代理 浏览:925
装饰行业招聘信息哪个平台多 浏览:953
中国有多少压箱底技术 浏览:855
如何看一家公司信息 浏览:339
家具品牌代理有哪些 浏览:394