如何实现oracle数据库大数据增量操作 5
我现在有一个(多个)oracle数据库服务器在外地(不同的地方)...现在要把通过系统把各个地方的数据收集到集中的一台oracle数据库服务器上.每个月要收集一次..第一...
我现在有一个(多个)oracle数据库服务器在外地(不同的地方)...现在要把通过系统把各个地方的数据收集到集中的一台oracle数据库服务器上.每个月要收集一次..第一次收集还比较容易..第二个月、第三个月后面的数据有变化.我想实现第二个月以后的数据只更改原来修改、新增、删除过的数据。数据表大概有400多张、数据量比较。数据量大的一个数据库一张表有接近1000万的数据.要考虑效率..有没有高手做过这方面的?大家帮我想想办法..坐等回复。
展开
4个回答
展开全部
由于数据量较大,在数据库里进行判断比较耗时,建议插入数据的时候加个日期。后续也增量插入数据,然后剔除相同,日期靠前的数据。
更多追问追答
追问
就是数据量比较大..最开始我想通过过程写sql来比较..然后再操作..数据量太大了..耗时太久..还有没有其他办法?
追答
首先不知道给的数据是文本的,还是直接从数据库抽过来的。如果单纯只能在数据库里进行操作,这么大数据量,是不现实的。只能按照先插入,再剔重的方法了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
使用GUID来判断数据的唯一性,根据这个来判断是否同一条数据,先处理新增和删除的,最后处理修改的,修改的要对比,可否还需要最后更新日期,耗时会久一点
追问
guid是 什么?是每条数据都有这么一个属性么?每条数据都判断一下...1000万的数据效率会不会很低。
追答
可以使用 not in (select ...) 这种批量添加
如果是 更新,使用最新日期判断,有更新日期的不管内容是否改变,都更新一次
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-08-15
展开全部
可以使用Oracle复制, 用物化视图做. 采用快速刷新的方式自动会把更新的数据更新到总数据库
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询