【发布时间】:2014-08-15 02:16:59
【问题描述】:
我们正在寻找一种技术,以实现基于大型词典(国家、城市、地区、组织、对象)的自动补全列表的快速搜索。
- 国家/地区 150 行
- 城市 300 000 行
- 区域 70 000 行
- 组织 500 000 行
- 对象 50 000 行
主要要求 1.过滤器字段应该是所有字典的一个 2.用户输入应该导致显示完成列表 3. 预计每秒负载超过200个请求
首选技术nginx、php、windows服务器
考虑到缓存目录的数量来制作结果并将它们放入 memcached 是不可能的
提示,如何解决问题
【问题讨论】:
-
一种可能的解决方案是使用 Solr 将您的字典组合到一个搜索索引中。 Solr 还可以很好地水平扩展,因此您可以根据需要增加容量。
-
我也会推荐 Elasticsearch 而不是 Solr。它要简单得多(尤其是在缩放方面),但具有相同的功能。
-
我没有使用这些技术的经验。他们可以在Windows下安装吗?
-
它们都是用 Java 实现的,所以是的,它们在 Windows 上运行。
标签: php sql autocomplete cassandra memcached