kettle流程以及sql流程使用

1、etl在bi中的做用mysql

 

BI流程:
由数据后台例如数据库-----到数据缓冲区取出来-----数据集市-----给应用服务器提供数据------发布给用户sql

图中左边:为数据后台、业务系统、多是数据库,从中抽出数据数据库

中间:是etl的流程,抽到图中左下是数据缓冲区,左上是根据维度建好的多个数据集市。etl:描述将数据历来源端通过萃取(extract)、转置(transform)、加载(load)至目的端的过程。服务器

右边:为数据前台,将应用服务器提供的数据发布给用户。

架构

2、kettle的优势工具

一、流程式的设计方便易用spa

二、全面的数据访问支持插件

三、插件架构扩展性好设计

四、支持多平台.code

 

3、构建一个简单的转换

在进行kettle流程以前,要先链接资源库,资源库包括:数据资源库和文件资源库。

这里我链接了数据资源库,工具-------资源库-------配置。

而后在左上角新建一个转换流程,kettle中主要包含转换和job两种做业方式。

作一个随机数生成---------而后过滤-----------输出到文本文件

生成的随机数都在0-1之间

右键随机数能够选择生成随机数的数量。

而后输出到桌面的文件中。

 

4、作一个由mysql写入pg的数据清洗写入流程。

表输入:从mysql中读取某表的数据并对数据进行清洗

SELECT id , ecode , outid , termid , cardsnr , opdt , colldt , rectype , ioflag , updateflag , updatedt , downdt , replace (replace(termname, '\0', '' ), ' ', '' ) AS termname , name FROM m_rec_kqmj WHERE substr(termname, 1, 1 ) IN ( 'A', 'B', 'C', 'D', 'E', 'F', 'Y' )

表输出:将读取到的表写入到gp数据库中,在写入以前要在gp数据库中提早建好表。

表输入3:从mysql中读取另一张表,这张表要与表输入中的表进行innerjoin,但此表不用写入到gp中。

记录集链接:根据字段选择链接方式,要提早对两表进行排序。

表输出2:将merge好的表写入gp数据库。

相关文章
相关标签/搜索