由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - G家店面design题目
相关主题
来道A设计题大家头脑风暴一下非面试题, 这个系统该怎么设计?
FB设计题求教。咨询一个system design 小细节问题
老年马工赶快去 fb怎么设计分布式LRU cache?
dropbox一道题Facebook的design interview
TinyUrl的design需要NON-SQL 还是SQLPalo Alto well- established Start-up 高薪招聘full-time Sr.Software Engineer
如果system design不用那些open source tool湾区招聘full-stack engineer
再来继续比较,芒果和redis各什么时候用比较好?pre-IPO 公司招聘3
我的System Design总结f design question 求讨论
相关话题的讨论汇总
话题: key话题: dataset话题: value话题: redis话题: latency
进入JobHunting版参与讨论
1 (共1页)
s****u
发帖数: 375
1
设计一个数据库。用户可以从数据库读取数据
要求:
1) very large dataset (tens of TB)
2) dataset is updated every few hours
3) dataset consists of key-value pairs. The size of the value for any given
key is bounded by 100KB
4) The only operation is get(key), which returns the associated value for
that key, or null if no value exists
5) The frequency of calling get() is >10,000/sec, and the latency required
is in order of ms
p*****2
发帖数: 21240
2
C*的设计完全可以满足需求吧?
s****u
发帖数: 375
3
do you have a link for "C*的设计"
职位和数据库完全不沾边,所以我感觉主要还是考察general design. 当然,要是连
cache都不知道那肯定过不了

【在 p*****2 的大作中提到】
: C*的设计完全可以满足需求吧?
c********t
发帖数: 5706
4
由给定的数据,怎么估算server数量和latency?

given

【在 s****u 的大作中提到】
: 设计一个数据库。用户可以从数据库读取数据
: 要求:
: 1) very large dataset (tens of TB)
: 2) dataset is updated every few hours
: 3) dataset consists of key-value pairs. The size of the value for any given
: key is bounded by 100KB
: 4) The only operation is get(key), which returns the associated value for
: that key, or null if no value exists
: 5) The frequency of calling get() is >10,000/sec, and the latency required
: is in order of ms

k******a
发帖数: 44
5
这个要求是一个大量读,很少写的案例。
对于并发这么高的要求,10000 qps + 10ms latency, 那么一定得上partition/shard。
我觉得按照dynamo的思路,用consistent hashing做key的partition, 每个node用
Redis + Mysql Engine.
然后可以开始扯consistent hashing, gossip, redis, innodb.
对于key, 根据consistent hashing选择对应node, 再node内,查redis或mysql engine
。redis本身很快,10K qps也可以,但是如果不在redis,mysql engine不会很快。假
定每个shard支持1K qps, 那么需要10个shard. 每个shard有3个node, 每个node支持
333 qps。利用virtual node, 分布30个node到10台服务器。
利用gossip广播membership状态和key space分布。
s****3
发帖数: 270
6
c* 可以support 10k 需求 也能用timestamp index
一个key 100KB 一秒 10^4 request 因为要minisec 假设100 minisec
100 KB * 10^4 * 10 = 10^7 KB = 10000MB
一台machine 有5 ssd each ssd 200MB 这样需要有50台server ? 大牛们看看这样行不
行?
g*********e
发帖数: 14401
7
单机即可10k qps
网卡买好一点
j**********r
发帖数: 3798
8
cluster memcache or redis. C* is not an optimal solution due to low update
frequency and low latency requirement. You may use it to backup data.

given

【在 s****u 的大作中提到】
: 设计一个数据库。用户可以从数据库读取数据
: 要求:
: 1) very large dataset (tens of TB)
: 2) dataset is updated every few hours
: 3) dataset consists of key-value pairs. The size of the value for any given
: key is bounded by 100KB
: 4) The only operation is get(key), which returns the associated value for
: that key, or null if no value exists
: 5) The frequency of calling get() is >10,000/sec, and the latency required
: is in order of ms

1 (共1页)
进入JobHunting版参与讨论
相关主题
f design question 求讨论TinyUrl的design需要NON-SQL 还是SQL
系统设计题怎么准备如果system design不用那些open source tool
这两个设计题如何答?再来继续比较,芒果和redis各什么时候用比较好?
Pinterest陶涛:三个教训和三个发展选择 (转载)我的System Design总结
来道A设计题大家头脑风暴一下非面试题, 这个系统该怎么设计?
FB设计题求教。咨询一个system design 小细节问题
老年马工赶快去 fb怎么设计分布式LRU cache?
dropbox一道题Facebook的design interview
相关话题的讨论汇总
话题: key话题: dataset话题: value话题: redis话题: latency