如何实现oracle数据库大数据增量操作 5

我现在有一个(多个)oracle数据库服务器在外地(不同的地方)...现在要把通过系统把各个地方的数据收集到集中的一台oracle数据库服务器上.每个月要收集一次..第一... 我现在有一个(多个)oracle数据库服务器在外地(不同的地方)...现在要把通过系统把各个地方的数据收集到集中的一台oracle数据库服务器上.每个月要收集一次..第一次收集还比较容易..第二个月、第三个月后面的数据有变化.我想实现第二个月以后的数据只更改原来修改、新增、删除过的数据。数据表大概有400多张、数据量比较。数据量大的一个数据库一张表有接近1000万的数据.要考虑效率..有没有高手做过这方面的?大家帮我想想办法..坐等回复。 展开
 我来答
lzm_君临天下
2015-12-06 · 知道合伙人软件行家
lzm_君临天下
知道合伙人软件行家
采纳数:68 获赞数:416
毕业于武汉纺织大学工程系

向TA提问 私信TA
展开全部
源表和目标表 直接哈希分区 64个
目标表在关联字段建本地分区索引 ,分区键和索引键一样
目标表的分区最好分到多个表空间上
写个存储过程按分区扫源表,操作目标表(更新或插入)
开多个session调存储过程传分区为参数
TK阿狸
2013-08-15 · TA获得超过296个赞
知道小有建树答主
回答量:501
采纳率:50%
帮助的人:182万
展开全部
由于数据量较大,在数据库里进行判断比较耗时,建议插入数据的时候加个日期。后续也增量插入数据,然后剔除相同,日期靠前的数据。
更多追问追答
追问
就是数据量比较大..最开始我想通过过程写sql来比较..然后再操作..数据量太大了..耗时太久..还有没有其他办法?
追答
首先不知道给的数据是文本的,还是直接从数据库抽过来的。如果单纯只能在数据库里进行操作,这么大数据量,是不现实的。只能按照先插入,再剔重的方法了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小辣椒高效Office
2013-08-15 · 高效生活 高效办公 比别人多活一辈子
小辣椒高效Office
采纳数:53 获赞数:92

向TA提问 私信TA
展开全部
使用GUID来判断数据的唯一性,根据这个来判断是否同一条数据,先处理新增和删除的,最后处理修改的,修改的要对比,可否还需要最后更新日期,耗时会久一点
追问
guid是 什么?是每条数据都有这么一个属性么?每条数据都判断一下...1000万的数据效率会不会很低。
追答
可以使用 not in (select ...) 这种批量添加
如果是 更新,使用最新日期判断,有更新日期的不管内容是否改变,都更新一次
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-08-15
展开全部
可以使用Oracle复制, 用物化视图做. 采用快速刷新的方式自动会把更新的数据更新到总数据库
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式