如何保证多进程取一个表数据不重复? 多个进程去同一个表(该表是实时变化的)数据,但是要保证每一个进程取到的数据都是唯一的。哪位有这方面的经验?谢谢。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看的不是太明白。。ORACLE数据库吗? 由于程序处理效率较差,需要分布式部署。然后分布式部署的时候就要考虑到:1:每个进程没有任务的时候就从oracle库取,但是要保证不重复,否则会有多个进程处理一条数据,导致效率不能明显提高。2:如果同时多个进程来取,就要有一个策略分配给谁。3:要保证所有的任务都会被分配到不同的进程中来处理。就这么简答的业务逻辑。 可以设置一个标志位,如flag:0:未处理,1:已处理。可以用select * from table1 where flag=0 where rownum<2 for update主动锁定数据行。修改标志位为1,进行其它处理,完成后提交(如果多行,可使用游标)。锁定后如果有冲突则只能串行操作。 用SCN吧,ORACLE的数据一致性依靠SCN oracle的数据类型number?? 请大家帮忙,给一套Oracle基础测试题 一个小问题 一个触发器的问题,当插入A表时,再插入B表 关于RMAN的问题 创建用户 关于定时作业,以及对数据库的影响 oracle多表查询问题 ORACLE CASE WHEN 关联更新问题 安装oracle 11G先决条件检查有错误 求一SQL排序 Visual FoxPro问题
1:每个进程没有任务的时候就从oracle库取,但是要保证不重复,否则会有多个进程处理一条数据,导致效率不能明显提高。
2:如果同时多个进程来取,就要有一个策略分配给谁。
3:要保证所有的任务都会被分配到不同的进程中来处理。就这么简答的业务逻辑。
可以用select * from table1 where flag=0 where rownum<2 for update主动锁定数据行。
修改标志位为1,进行其它处理,完成后提交(如果多行,可使用游标)。
锁定后如果有冲突则只能串行操作。