‘Pentaho’ 分类的存档

热度:

pentaho的BI,一直没认真看过,或许有时间,可以,认真看下?

应该有时间的。…

2011年4月18日00:12 | 1 条评论
分类: Pentaho
标签:
热度:

oracle表空间命令语句大全

建立表空间

CREATE TABLESPACE data01

DATAFILE ‘/oracle/oradata/db/DATA01.dbf’ SIZE 500M

UNIFORM SIZE 128k; #指定区尺寸为128k,如不指定,区尺寸默认为64k

 

删除表空间

DROP TABLESPACE data01 INCLUDING CONTENTS AND DATAFILES;

 

修改表空间大小

alter database datafile ‘/path/NADDate05.dbf’ resize 100M

 

移动表至另一表空间

alter table move

2011年4月6日20:48 | 没有评论
标签:
热度:

有需要命令行模式运行kettle的,可以参考之。

kettle学习之Kitchen

下载该文件,参考期中的方式。…

2011年3月21日00:16 | 没有评论
分类: Pentaho
标签:
热度:

最近出差海南,基本上没怎么更新了.

今天上一个有关连接数据源的配置方面的。

使用 JNDI 的好处就是便于部署和数据源的变更, 也提供了 JNDI 方式连接。
本文以 tomcat 和 mysql 为例,说明 kettle 如何使用 JNDI 方式连接数据源
1. 先将你的应用部署到 webapps 下,如 webapps/example。
2. 在 ./webapps/example/WEB-INF/lib 目录下,确保要有 kettle-core.jar, kettle-engine.jar 和其他 kettle 运行时依赖的 jar 文件。
3. 将 mysql 的 jdbc …

2010年12月23日23:20 | 没有评论
热度:

kettle中使用正则表达式的一个小例子,欢迎延伸
取得txt文件

点击“显示(S)文件名…”后出现的界面
最近群里有些人遇到从某一类型的文件读取数据的问题
比如,从C盘下所有的问基本文件(txt)中读取数据进行后期的处理
因为之前有过类型的工作内容,所以将txt输入这边所要填写的写出来
希望可以帮助需要的人…

2010年8月25日11:01 | 没有评论
分类: Pentaho
热度:

制作 插件时,在 processRow 方法里的几个常用方法说明:

//复制输入行的元数据,并设置为输出行的元数据。

RowMetaInterface outputRowMeta = getInputRowMeta().clone();

//构造一个新的输出列。

RowMetaInterface rowMeta = new RowMeta();

Object[] rowData = new Object[1];

int valtype = ValueMeta.getType(“String”);

ValueMetaInterface valueMeta = new ValueMeta( “FieldName1”, valtype);

// 新字段名是 FileName1 ,类型是 String

2010年6月26日15:57 | 没有评论
标签:
热度:

任务中FTP步骤的使用说明
 
 
FTP步骤的两个截图:
http://027wo.cn/kettle/ftp1.jpg
IP地址:填写需要下载文件所在的IP地址
服务端口:该FTP服务使用的端口,默认为21
用户名:该FTP服务登录的用户名
密码:上面用户名对应的密码
(使用代理,如果运行交换程序的计算机无法连接FTP服务器,一般是由于防火墙限制,于是需要用可以访问该FTP的计算机作为代理,来登录FTP下载文件。)
代理主机:开通代理服务的计算机IP
代理端口:该IP对应的端口
代理用户名:代理的用户名
代理密码:用户名对应的密码
 
二进制模式:binary,区别以文本模式。
(二进制模式用来传输可执行文件,压缩文件和图片文件)
超时:多久没活动FTP服务器会断开
使用主动FTP连接:
控制编码:下载文件使用的编码,可用的是ISO-8859-1和UTF-8
http://027wo.cn/kettle/ftp2.jpg
 
远程目录:需要下载的文件在FTP服务器的目录
通配符:单个文件可不填,多个文件需使用
检索后删除:不需使用
检索后移动:不需使用
 
目标目录:下载的文件存放目录
文件名包含日期:修改下载后的文件时使用
 
 

 

一个使用的实例说明:
http://027wo.cn/kettle/ftp3.jpg
1.       当存在可执行文件时,需要用“二进制模式”。
2.       编码选择ISO-8859-1和UTF-8的区别。
ISO-8859-1 当需要下载的文件有中文,下载后为乱码,任务执行成功;…
2010年6月3日14:55 | 没有评论
热度:

  ETL工具从厂商来看分为两种,一种是数据库厂商自带的ETL工具,如Oracle warehouse builder、Oracle Data Integrator。另外一种是第三方工具提供商,如Kettle。开源世界也有很多的ETL工具,功能各异,强弱不一。

  (1)Oracle Data Integrator(ODI)

  ODI前身是Sunopsis Active Integration Platform,在2006年底被Oracle收购,重新命名为Oracle Data Integrator,主要定位于在ETL和数据集成的场景里使用。ODI和Oracle原来的ETL工具OWB相比有一些显著的特点,比如和OWB一样是ELT架构,但是比OWB支持更多的异构的数据源,ODI提供了call web service的机制,并且ODI的接口也可以暴露为web service,从而可以和SOA环境进行交互。ODI能够检测事件,一个事件可以触发ODI的一个接口流程,从而完成近乎实时的数据集成。

  ODI的主要功能特点有:

  a.使用CDC作为变更数据捕获的捕获方式。

  b.代理支持并行处理和负载均衡。

  c.完善的权限控制、版本管理功能。

  d.支持数据质量检查,清洗和回收脏数据。

  e.支持与JMS消息中间件集成。

  f.支持Web Service。

  (2)SQL Server Integration Services(SSIS)

  SSIS是SQL Server 2005的新成员,在SQL Server的早期版本中,其实就已经有了它的雏形,那时的名称叫做数据转换服务(DTS)。在SQL Server 2005的前两个版本SQL Server 7.0和SQL …

2010年1月29日01:23 | 没有评论
标签:
热度:

  ETL过程中的主要环节就是数据抽取、数据转换和加工、数据装载。为了实现这些功能,各个ETL工具一般会进行一些功能上的扩充,例如工作流、调度引擎、规则引擎、脚本支持、统计信息等。

  2.1 数据抽取

  数据抽取是从数据源中抽取数据的过程。实际应用中,数据源较多采用的是关系数据库。从数据库中抽取数据一般有以下几种方式。

  (1)全量抽取

  全量抽取类似于数据迁移或数据复制,它将数据源中的表或视图的数据原封不动的从数据库中抽取出来,并转换成自己的ETL工具可以识别的格式。全量抽取比较简单。

  (2)增量抽取

  增量抽取只抽取自上次抽取以来数据库中要抽取的表中新增或修改的数据。在ETL使用过程中。增量抽取较全量抽取应用更广。如何捕获变化的数据是增量抽取的关键。对捕获方法一般有两点要求:准确性,能够将业务系统中的变化数据按一定的频率准确地捕获到;性能,不能对业务系统造成太大的压力,影响现有业务。目前增量数据抽取中常用的捕获变化数据的方法有:

  a.触发器:在要抽取的表上建立需要的触发器,一般要建立插入、修改、删除三个触发器,每当源表中的数据发生变化,就被相应的触发器将变化的数据写入一个临时表,抽取线程从临时表中抽取数据,临时表中抽取过的数据被标记或删除。触发器方式的优点是数据抽取的性能较高,缺点是要求业务表建立触发器,对业务系统有一定的影响。

  b.时间戳:它是一种基于快照比较的变化数据捕获方式,在源表上增加一个时间戳字段,系统中更新修改表数据的时候,同时修改时间戳字段的值。当进行数据抽取时,通过比较系统时间与时间戳字段的值来决定抽取哪些数据。有的数据库的时间戳支持自动更新,即表的其它字段的数据发生改变时,自动更新时间戳字段的值。有的数据库不支持时间戳的自动更新,这就要求业务系统在更新业务数据时,手工更新时间戳字段。同触发器方式一样,时间戳方式的性能也比较好,数据抽取相对清楚简单,但对业务系统也有很大的倾入性(加入额外的时间戳字段),特别是对不支持时间戳的自动更新的数据库,还要求业务系统进行额外的更新时间戳操作。另外,无法捕获对时间戳以前数据的delete和update操作,在数据准确性上受到了一定的限制。

  c.全表比对:典型的全表比对的方式是采用MD5校验码。ETL工具事先为要抽取的表建立一个结构类似的MD5临时表,该临时表记录源表主键以及根据所有字段的数据计算出来的MD5校验码。每次进行数据抽取时,对源表和MD5临时表进行MD5校验码的比对,从而决定源表中的数据是新增、修改还是删除,同时更新MD5校验码。MD5方式的优点是对源系统的倾入性较小(仅需要建立一个MD5临时表),但缺点也是显而易见的,与触发器和时间戳方式中的主动通知不同,MD5方式是被动的进行全表数据的比对,性能较差。当表中没有主键或唯一列且含有重复记录时,MD5方式的准确性较差。

  d.日志对比:通过分析数据库自身的日志来判断变化的数据。Oracle的改变数据捕获(CDC,Changed Data Capture)技术是这方面的代表。CDC 特性是在Oracle9i数据库中引入的。CDC能够帮助你识别从上次抽取之后发生变化的数据。利用CDC,在对源表进行insert、update或 delete等操作的同时就可以提取数据,并且变化的数据被保存在数据库的变化表中。这样就可以捕获发生变化的数据,然后利用数据库视图以一种可控的方式提供给目标系统。CDC体系结构基于发布者/订阅者模型。发布者捕捉变化数据并提供给订阅者。订阅者使用从发布者那里获得的变化数据。通常,CDC系统拥有一个发布者和多个订阅者。发布者首先需要识别捕获变化数据所需的源表。然后,它捕捉变化的数据并将其保存在特别创建的变化表中。它还使订阅者能够控制对变化数据的访问。订阅者需要清楚自己感兴趣的是哪些变化数据。一个订阅者可能不会对发布者发布的所有数据都感兴趣。订阅者需要创建一个订阅者视图来访问经发布者授权可以访问的变化数据。CDC分为同步模式和异步模式,同步模式实时的捕获变化数据并存储到变化表中,发布者与订阅都位于同一数据库中。异步模式则是基于Oracle的流复制技术。

  ETL处理的数据源除了关系数据库外,还可能是文件,例如txt文件、excel文件、xml文件等。对文件数据的抽取一般是进行全量抽取,一次抽取前可保存文件的时间戳或计算文件的MD5校验码,下次抽取时进行比对,如果相同则可忽略本次抽取。…

2010年1月29日01:17 | 没有评论
标签:
热度:

  摘要:本文主要介绍使用kettle 来建立一个Type 2的Slowly Changing Dimension 以及其中一些细节问题

  1. 简介

  Kettle 是一个强大的,元数据驱动的ETL工具被设计用来填补商业和IT之前的差距,将你公司的数据变成可增长的利润.

  我们先来看看Kettle能做什么:

  1. Data warehouse population with built-in support for slowly changing dimensions, junk dimensions and much, much more.

  2. Export of database(s) to text-file(s) or other databases…

2010年1月29日01:04 | 1 条评论
标签: