数据抽取会出现丢失数据的情况,怎么处理??

[复制链接]
查看11 | 回复9 | 2011-2-18 11:42:47 | 显示全部楼层 |阅读模式
加入我现在需要实现数据库 A 中有一个表a, 现在我需要把数据库A中的表a 按更新时间没隔5分钟抽取一次此时间更新的数据加载到数据库B中的表a中,

但在实际的过程中,会出现数据丢失的情况,现在需要该怎么处理呢?

是否有什么好的数据抽取方案?

回复

使用道具 举报

千问 | 2011-2-18 11:42:47 | 显示全部楼层
此时间更新的数据怎么判断的?
回复

使用道具 举报

千问 | 2011-2-18 11:42:47 | 显示全部楼层
通过更新时间来判断的,
select * from a where updatetime between time1 and time2 ;
下一次
select * from a where updatetime between time2 and time3 ;
回复

使用道具 举报

千问 | 2011-2-18 11:42:47 | 显示全部楼层
比如现在是早上10:10:00,会产生10:00:00的数据吗?要是这样,延长抽取间隔
回复

使用道具 举报

千问 | 2011-2-18 11:42:47 | 显示全部楼层
丢失原因是什么?
回复

使用道具 举报

千问 | 2011-2-18 11:42:47 | 显示全部楼层
用a.time>=b.max判断比较好
回复

使用道具 举报

千问 | 2011-2-18 11:42:47 | 显示全部楼层
为什么不用物化视图?
UPDATETIME是应用自己维护的吧,要注意未提交的数据是不可见的,所以有可能比抽取时间更小。
回复

使用道具 举报

千问 | 2011-2-18 11:42:47 | 显示全部楼层
插入但是没有提交的话,数据有可能会丢,用物化试图
回复

使用道具 举报

千问 | 2011-2-18 11:42:47 | 显示全部楼层
这里有一个简单的例子
http://www.bitscn.com/pdb/oracle/200604/19941.html

回复

使用道具 举报

千问 | 2011-2-18 11:42:47 | 显示全部楼层
你是如何判断数据丢失的?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行