我正在尝试实现facebook api的一部分,自动完成功能ads.getAutoCompleteData
基本上,Facebook提供了这个39 and的文件,每周更新一次,其中包含有针对性的广告数据,包括学院、大学专业、工作场所、地点、国家、地区和城市。
我们的应用程序需要访问所有这些对象,并使用该文件的数据提供自动完成。
我在想解决这个问题的更好方法。我在考虑以下几种选择之一:
那你觉得呢?
发布于 2011-09-07 08:34:05
我会坚持一个面向服务的体系结构(特别是如果产品应该处理大量的事务),并使用Solr。话虽如此,如果39 MB是单例的话,那么它在内存中的占用就不多了。与索引和所有这一切将达到什么?400 to?当然,这取决于您的产品的功能和您希望运行它的硬件类型。
我将使用Solr或编写您自己的服务,将文件读入一个快速DB中,比如MySQL的MyISAM表(甚至内存中的表),并使用mysql的文本搜索功能来提供结果。除非我会尝试使用Solr作为服务。
写我自己的服务的好处是我知道发生了什么,缺点是它不会像Solr那样强大。然而,我怀疑编写自己的服务将花费更少的时间来实现。
考虑编写您自己的服务,以异步方式提供请求(如果您的产品是一个网站,那么就使用ajax)。Solr或Lucene的问题是,如果你陷入困境,就不会有太多的帮助。
只是我的两分钱。
https://stackoverflow.com/questions/7330882
复制相似问题