社区
数据仓库
帖子详情
大家在做ETL时候使用什么工具?
yorgo
2002-04-11 04:43:48
不会都是写角本吧
事实表中很多都是外键,那些int型的ID怎么确定呀
脚本写得很长,很费劲儿
...全文
265
15
打赏
收藏
大家在做ETL时候使用什么工具?
不会都是写角本吧 事实表中很多都是外键,那些int型的ID怎么确定呀 脚本写得很长,很费劲儿
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yorgo
2002-04-16
打赏
举报
回复
嗯,我已经有些体会了,目前在欢快的使用DTS. hehe
jinnee
2002-04-15
打赏
举报
回复
没错,烦得入卵。
Tommy Chang
2002-04-15
打赏
举报
回复
1. datastage中汇总专门有一个叫aggregator的插件,抽取的同时可以做sum,avg,count,max,min和标准差,不依赖于数据库实现,并不要脚本啊
2. 时间维很多时候是前期就一次生成一大堆记录,将未来N年都导入时间维
3. 维表在转换的时候也经常要用到来做关联,如果用datastage来关联数据可以做到根据是否能够关联成功来作为过滤条件,从而跳出是需要做insert还是要update,或者直接用其数据库插件来实现insert or update或update or insert这种操作,也不用脚本啊
4. owb在oracle的报价书上不是免费的,安装也一定要装到oracle数据库里面,是个pl/sql的代码生成器。转换不复杂而且大多数数据源都是oracle的话倒也不错。
5. jinnee所讲的方法是典型手写程序的思路,用工具的大方向也很接近,部分处理可以在工具中实现,节省在数据库中直接操作sql的工作量和复杂性,改起来容易。客户需求变来变去的时候,改抽取工程确实太烦了
:)
yuanque
2002-04-12
打赏
举报
回复
我搞过的东东一般是这样的,维度表数据一般是在抽取之前(或都抽取的第一步工作)就装载好了的,很少变动,即使变动也不用写脚来导的(可以写维护程序),事实上需要导的是大量的事实数据。
Tommy Chang
2002-04-12
打赏
举报
回复
这些在工具里面不用写脚本啊?DataStage里面图形化有个叫transformer的插件,可以跟维表做关联取的id。
fact table中int的id实际上是从维表过来的,转换过程中通过将明细数据跟维表关联,取出外键id的,实在不知你说的脚本是用来做啥的。除非是用来生成维表中的id,这也很容易,不需要脚本啊。
:)
yorgo
2002-04-12
打赏
举报
回复
我的逻辑是这样的,不知道对不对,请大家指正
构建好所有的维度表、实事表。编写脚本向这些表填写数据。
维度表中有定量的数据时,先批量将该维度表的数据填充。
如果维度表的数据不是定量的而是变化的话,则在遇到新的数据的时候自动填加新的维度表内容
开始填加事实表
取原数据,根据数据判断每个维度表来确认各自的id,如果遇到没有的维度内容还需要即时插入数据,获得维度id,然后将汇总的维度id和事实数据插入事实表。然后再进行下一条记录
我的问题是,真的每一次都是要这样痛苦吗?还有更好的方法吗?
xia_yu
2002-04-12
打赏
举报
回复
DTS,T-sql
工具
yuanque
2002-04-12
打赏
举报
回复
不可能不写脚本,单纯生成ID倒不件难事。比如说:汇总就要写大量的脚本。
jinnee
2002-04-12
打赏
举报
回复
你的过程有点问题。
做ETL的时候,第一步应该是把那些散的数据集中到一个地方来,比如,不管是ACCESS上的,还是oracle上的,全部先转到SQL上再说(当然,有时也可灵活运用),这样就可以在一个统一的环境下进行数据清洗,不管你用什么方法吧(其实这步大多数情况下不太重要),做完清洗后,就可以想些办法把你要的数据仓库建立起来了,比如做些计算汇总啊等等。最后再将这些数据装到多维数据库中,第一步是更新维度表,第二步更新事实表,然后才可以装到多维库中。
jinnee
2002-04-12
打赏
举报
回复
维度表有时也是每天都要更新的啊,一次导入很多天估计不行吧,比如说不定期的放假,如果你也放进去了,成员就多了一个。我的做法是要更新的维度表还是每天更新的,反正天天都要运行脚本算事实表的。
hzwantfly
2002-04-12
打赏
举报
回复
忘了说,oracle datawarehousing builder可以到oracle网站上免费down,这软件本身就是free的
hzwantfly
2002-04-12
打赏
举报
回复
oracle datawarehousing builder
yorgo
2002-04-12
打赏
举报
回复
但是例如时间维度,会跟着时间的变化而变化呀,一次性到入一定量的时间维度?
warning
2002-04-11
打赏
举报
回复
感觉微软的DTS还可以,datastage也不错
脚本还是要写的
yuanque
2002-04-11
打赏
举报
回复
我以前是写了很多的存储过程的。
听说过一些工具如:DATASTAGE、DATAJUNCTION,可以用,但是脚本是省不了的啦。
ETL是数据仓库建设中最烦的环节……
很全的
ETL
学习资料
ETL
工具
点评.docx
ETL
常见性能瓶颈.docx
ETL
构建企业级数据仓库五步法.docx
ETL
高级教程.docx 三大主流
ETL
工具
选型.docx 什么是
ETL
.docx 商业智能 通过SSIS设计
ETL
来将Oracle,DB2,Sybase等数据源的数据定期导入到...
BI Kettle中文文档汇集
BI Kettle中文文档汇集 ELT平台操作手册-KETTLE.pdf ... 开源
ETL
工具
-PentahoKettle
使用
入门.pdf 开源
ETL
工具
kettle系列之动态转换.pdf 我的kettle学习笔记.pdf 测试
ETL
工具
都应测试哪些方面.pdf
什么是
ETL
?
ETL
是
做
什么的?
ETL
,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源端经过抽取(extract)、交互转换(transform)、加载(load)至目的端的过程。...可以看出,
ETL
要
做
三部分工作,数据抽取、数...
ETL
是
做
什么的?
ETL
是英文Extract-Transform-Load的缩写,用来描述将数据从源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程,它能够对各种分布的、异构的源数据(如关系数据)进行抽取,按照预先设计的规则将不...
什么是
ETL
?
ETL
是什么技术?
ETL
是英文Extract-Transform-Load的缩写,用来描述将数据从源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程,它能够对各种分布的、异构的源数据(如关系数据)进行抽取,按照预先设计的规则将不...
数据仓库
7,388
社区成员
6,742
社区内容
发帖
与我相关
我的任务
数据仓库
其他数据库开发 数据仓库
复制链接
扫一扫
分享
社区描述
其他数据库开发 数据仓库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章