| 发表人 |
内容 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 2009-01-23 00:06:46
|
jc5025
初级会员
注册时间: 2008-11-13 18:26:25
文章: 6
离线
|
源数据库和数据仓库都是oracle 10g
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 2009-01-31 01:43:20
|
lynx286 一失足成千古风流人物!
论坛CEO
![[Avatar]](/images/avatar/eccbc87e4b5ce2fe28308fd9f2a7baf3.jpg)
注册时间: 2008-04-22 11:52:00
文章: 652
来自: 四海为家
离线
|
http://www.mydwbi.com/posts/list/384.page
参考上面帖子,如果数据源不能提供或实在没办法确定增量标志,则可以用datastage的crc32函数将没行数据生成一个hash值添加在表后面,根据这个hash值比较是否是新数据。
|
唯大英雄能本色,是真名士自风流.
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 2009-01-31 18:39:35
|
jc5025
初级会员
注册时间: 2008-11-13 18:26:25
文章: 6
离线
|
谢谢
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 2009-01-31 19:04:03
|
jc5025
初级会员
注册时间: 2008-11-13 18:26:25
文章: 6
离线
|
请问如果采用时间戳方式进行增量抽取,insert应该是没什么问题,但是对以前数据的delete和update具体应该怎么实现呢?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 2009-01-31 20:30:14
|
lynx286 一失足成千古风流人物!
论坛CEO
![[Avatar]](/images/avatar/eccbc87e4b5ce2fe28308fd9f2a7baf3.jpg)
注册时间: 2008-04-22 11:52:00
文章: 652
来自: 四海为家
离线
|
jc5025 wrote:请问如果采用时间戳方式进行增量抽取,insert应该是没什么问题,但是对以前数据的delete和update具体应该怎么实现呢?
数据仓库项目中基本上极少delete和update。
如果有也可以根据时间戳修改删除。
|
唯大英雄能本色,是真名士自风流.
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 2009-01-31 21:06:10
|
jc5025
初级会员
注册时间: 2008-11-13 18:26:25
文章: 6
离线
|
谢谢版主的回复,我的意思是说对于oltp中历史数据的delete和update,在抽取时怎么处理?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 2009-03-16 20:58:25
|
一旦恶
初级会员
注册时间: 2009-03-02 21:19:13
文章: 9
离线
|
在OLTP中,这种有delete和update操作的,一般我处理的时候都要根据性能和效率来决定方式:
如果删改数据量少,那就直接删改数据;
如果有比较多的delete或update数据,那首先要从业务上来做论证,看这种情况是否正常,是不是有必要做大量的删改操作,如果没有问题,那还应该检讨这种数据模型的合适与否,如果这些手段无效,那只好依靠主键来做这种操作了.如果是使用DS之类的ETL工具,我建议将insert,delete,update数据分流,同时并行处理.
|
|
|
 |
|
|