急!急!急,怎么样能最快速的判断大批量数据的剩余次数,具体请看需要,谢谢

lingwen20 2013-08-08 09:40:30
现在项目有需求如下:

数据结构:号码 次数,现在有1万个,如:0000 2次、0001 3次、0002 4次、0003 3次……,每个号码计数只能固定次数,如5次,如何最快速判断这批号码的每个剩余数:

1、每个号码的剩余次数等于限制次数-已存总数-重复出现次数,如果超过剩余数,则按剩余数存储;
2、现在采用多线程循环查询判断方式,瞬间查询数据库太频繁,有时需要好几分钟,如何优化;
3、是否有新的解决方案,判断时间能优化到20秒内可接受;



本项目是在手机上运行的个彩票投注系统,所以会涉及到大批量号码判断剩余注数情况,或者有什么新的思路和方案呢,希望各位大侠能指点迷津,非常感谢!
...全文
251 7 打赏 收藏 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
冰思雨 2013-08-09
  • 打赏
  • 举报
回复
我的QQ是 77046237 , 要是有时间,楼主加一下我。谢谢。 我是对彩票一窍不通,但是,对算法的兴趣还算可以。
lingwen20 2013-08-08
  • 打赏
  • 举报
回复
引用 1 楼 forgetsam 的回复:
做成内存表。
怎么做呢?因为这个系统是运行在Android平板端的,用的数据库是sqlite
forgetsam 2013-08-08
  • 打赏
  • 举报
回复
做成内存表。
lingwen20 2013-08-08
  • 打赏
  • 举报
回复
我现在用这种方式去解决: 先分组,按号码去分组查询出所有号码,扔在内存里,接着去起20个线程去内存里逐一匹配合适的。。。。 数据库, 只查询了一次,虽然会多,但是分组查询能快好多,关键是只查一次,余下的20个线程在判断 但是这20个线程去判断的时候还是有点卡,平均能在14-20秒判断出结果,不知道还能不继续优化
lingwen20 2013-08-08
  • 打赏
  • 举报
回复
引用 3 楼 preferme 的回复:
没玩过彩票,不熟悉应用场景。 想获得一条记录的剩余数,可以将剩余数做成一个字段,每次插入和更新的时候,都顺带更新; 这样就能迅速查询到剩余数了。
这个情况会有,但是现在是另一个场景,要提前就知道这一注号码是否可以下注,如果超注,当场就要告知用户无法下注的,现在是同时如果用户要下注1万注号码,要同一时间判断这个,所以比较费时,现在的多线程的方案不是很理想,应该说是糟糕的方式了
caofeng891102 2013-08-08
  • 打赏
  • 举报
回复
顶下。。
冰思雨 2013-08-08
  • 打赏
  • 举报
回复
没玩过彩票,不熟悉应用场景。 想获得一条记录的剩余数,可以将剩余数做成一个字段,每次插入和更新的时候,都顺带更新; 这样就能迅速查询到剩余数了。

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧