Gag*_*ngh 1 search google-app-engine full-text-search
谷歌应用程序引擎已经在其实验性功能中进行了前瞻性搜索,至少对于python.这种预期搜索与目前可用的全文引擎替代方案有何不同?对于真实世界的Web应用程序,例如产品搜索,它的效率如何.
目前的全文替代品是,
小智 10
@Gagandeep Singh:'tail -f |的比喻 grep'是一个合理的,但是,重要的是要记住AppEngine的Prospective Search系统支持多个字段和多种类型(整数,浮点数和文本),因此使用grep复制有点困难.
@Chris Farmiloe:前瞻性搜索不是通知API,任何其他搜索API都是Notification API.当然,您可以使用预期搜索来实现通知系统,但"通知"通常是由于发现匹配而生成的,而不是匹配本身的结果."通知"系统会执行诸如发送IM消息,SMS,XMPP消息或类似的事情.预期搜索没有做任何 - 但它很容易添加.
@Nick Johhson:是的,我将其命名为"预期搜索"的原因是因为预期查询与形成查询后到达的文档相匹配.因此,前瞻性查询具有前瞻性或"前瞻性".这与传统的"回顾性"搜索系统(典型的Web搜索引擎或数据库系统)相反,其中查询匹配在查询形成之前到达并被索引的文档.回顾性搜索系统索引稍后与查询匹配的文档,记录或属性包.预期搜索系统索引稍后与文档或属性包匹配的查询.这两种搜索模式是基本的,彼此的反转和互补.几乎在任何地方,您都有传统的回顾性搜索应用程序,您将找到一个预期搜索的应用程序.
@Drew Sears:请注意,AppEngine的前瞻性搜索系统与任何追溯系统一样,都是一个"全文"搜索系统.预期搜索匹配单词,短语和数字的布尔组合 - 就像您在传统上称为"全文"系统时所期望的那样.不同之处不在于是否正在搜索全文,而是该搜索是预期的还是回顾性的.
预期搜索基本上是App Engine的等价物tail -f | grep.用户不是针对静态文档集运行一次查询,而是订阅一组查询,并将新创建的文档与打开的查询进行匹配.如果匹配发生,则任务被排队,并且在任务内部您可以使用Channel API来使用新的查询结果更新用户的浏览器.
预期搜索与全文搜索无关.App Engine中有一个全文API,在Google I/O演讲中讨论过:
http://www.google.com/events/io/2011/sessions/full-text-search.html
| 归档时间: |
|
| 查看次数: |
1416 次 |
| 最近记录: |