数据队列表设计的疑问

f371879711 2014-09-26 01:48:52
目前每天队列表数据大约5000W+,由多个处理程序来读取,读的时候会锁表,防止数据被其他程序读走导致重复处理。
最近两天发现数据库端压力稍微大一点,队列就会堆积到几十万、上百万数据,导致处理延时。
小弟就想把队列表独立出来分一个库,放到其他服务器。
现在设计这个库,在考虑是不是分多个表,性能会更好?或者有更好的设计呢?欢迎大神们来讨论,给小弟支招
感谢各位大神!
...全文
290 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
KeepSayingNo 2014-09-28
  • 打赏
  • 举报
回复
建议考虑用内存数据库REDIS 、memcache等,这样能保证这每天的5000W+活动数据能非常快的被应用程序调用,每天结束前进行一次存储处理就可以了,然后你可以设备分表存储
还在加载中灬 2014-09-28
  • 打赏
  • 举报
回复
如果这些队列表以后不需要用来关联查什么的,用完就删,可以拆表 如果删表以后确认不需要再用到可以用 TURNCATE TABLE 表名来删表
f371879711 2014-09-28
  • 打赏
  • 举报
回复
现在打算把一个队列表拆分为10个,根据设备的 IMEI 号尾数来存入不同队列,相当于分散一个队列的压力为十分之一。
f371879711 2014-09-26
  • 打赏
  • 举报
回复
引用 4 楼 alimake 的回复:
[quote=引用 3 楼 f371879711 的回复:] [quote=引用 2 楼 jayzhihui 的回复:] 目前每天队列表数据大约5000W+ 汗颜~~~~~
是的,是物联网平台,汽车、个人位置相关的。 目前在线设备接近5W台了,车、人运动的时候,10秒上报一条数据。[/quote] 感觉这个10W秒上报 不一样就要加数据啊。可以监控下。如果物质改变。再加记录。 表结构是这样 人员ID 车辆ID 时间 位置 2 2 20140908121202 55/32 2 2 20140908122402 58/32[/quote] Socket 端接收到数据就存入队列,然后由几个数据处理程序去读取,队列表结构很简单,读完就删的。
xiaodongni 2014-09-26
  • 打赏
  • 举报
回复
引用 3 楼 f371879711 的回复:
[quote=引用 2 楼 jayzhihui 的回复:] 目前每天队列表数据大约5000W+ 汗颜~~~~~
是的,是物联网平台,汽车、个人位置相关的。 目前在线设备接近5W台了,车、人运动的时候,10秒上报一条数据。[/quote] 感觉这个10W秒上报 不一样就要加数据啊。可以监控下。如果物质改变。再加记录。 表结构是这样 人员ID 车辆ID 时间 位置 2 2 20140908121202 55/32 2 2 20140908122402 58/32
f371879711 2014-09-26
  • 打赏
  • 举报
回复
引用 2 楼 jayzhihui 的回复:
目前每天队列表数据大约5000W+ 汗颜~~~~~
是的,是物联网平台,汽车、个人位置相关的。 目前在线设备接近5W台了,车、人运动的时候,10秒上报一条数据。
jayzhihui 2014-09-26
  • 打赏
  • 举报
回复
目前每天队列表数据大约5000W+ 汗颜~~~~~
xiaodongni 2014-09-26
  • 打赏
  • 举报
回复
这个级别的问题只能围观下 学习

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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