有一张表格式为:
userid----spid----状态
userid+spid 是唯一索引,不会重复
数据量有1亿左右,数据并不是固定的 会随时增加,状态会随时变动
==================================
现在要高并发下查询出一条数据
需要得到的数据是: userid+spid+状态(可用)+栏目 =未被使用过的数据
(取出一条数据后要记录下时间 用于判断多长时间后可以继续使用 比如记录:现在时间+30天 那么30天内这条数据不可用 30天后可以重复取这条数据)
同一个栏目在规定时间内不可以取到重复的数据 ( userid+spid+栏目 =不可以重复)
可以取得这样的格式:
userid1+spid1+栏目1
userid1+spid1+栏目2
userid1+spid1+栏目3
userid1+spid2+栏目1
userid1+spid2+栏目2
userid1+spid2+栏目3
userid2+spid2+栏目1
userid2+spid2+栏目2
userid2+spid2+栏目3
userid----spid 都是长整数型
栏目是整数型 但是不固定的,无法提前预知栏目数量和栏目内容
栏目数量预估有2000-5000条 (按我个人理解,栏目较多无法为栏目单独建立索引)
要求能满足高并发下 每秒最低1000次以上的数据吞吐量 且数据不可冲突 在查询取得大量数据后 速度不会衰减
查询条件((userid=1 or userid=2 or userid=3 .... 大约有1000个or条件) and 状态=可用 and 栏目=栏目1) 返回一条 userid1+spid1 这样的数据
可用常见数据库比如redis,mysql,mssql,pgsql等 不需要写软件,可只提供思路或架构方案
该外包需求信息来源于站外平台,本站仅提供公开信息部分字段展示与订阅服务,更多请查看免责声明。