系统设计面试题 - 为搜索引擎设计一个 key-value 储存

2018-04-26  本文已影响321人  专职跑龙套

引用:
系统设计入门

为搜索引擎设计一个 key-value 储存

解答

第一步:通过讨论,明确限制及用例,确定Scope

支持的用例:

不支持的用例:

Constraints and assumptions:

计算规模:
对每一条缓存:

每个月:270 bytes * 10 billion = 2.7 TB(假设每月10 billion个查询请求都是不同的,并且都需要存储在缓存中)。

第二步:高层次设计

为搜索引擎设计一个 key-value 储存

第三步:设计核心组件

提供一个REST 形式的Query API:

可以给缓存中的每一个条目设置一个TTL,来定期进行更新。

第四步:扩展设计

为搜索引擎设计一个 key-value 储存
上一篇 下一篇

猜你喜欢

热点阅读