因此,我们对建议的时间预算应该大于 160 毫秒,以提供实时响应。这是因为如果用户正在快速输入,他们已经知道要搜索什么,并且可能不需要建议。同时,我们的系统响应应大于 160 毫秒。...当用户开始在搜索框中输入查询时,每个键入的字符都会打到其中一个应用服务器。假设有个建议服务,它从缓存、Redis 中获取前十个建议,并作为响应发送回客户端。
假设还有个服务称为装配器。...Trie 可以将只有单个分支的节点组合成一个节点,这减少了树的深度。这也减少了遍历时间,从而提高了效率。...由于这些数据的大小很大,Hadoop 分布式文件系统(HDFS)被认为是存储这些原始数据的合适存储系统。
聚合器
收集服务收集的原始数据通常不在汇总状态。...聚合器从 HDFS 检索数据并将其分配给不同的工作者。通常,MapReducer 在给定的时间间隔内负责聚合前缀的频率,并定期在相关的 Cassandra 数据库中更新频率。