Page MenuHomePhabricator

Add support for relevance-ranking Ferret engine results
ClosedPublic

Authored by epriestley on Sep 5 2017, 11:00 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Aug 16, 12:17 PM
Unknown Object (File)
Tue, Aug 16, 9:14 AM
Unknown Object (File)
Wed, Aug 3, 11:57 PM
Unknown Object (File)
Wed, Aug 3, 10:08 PM
Unknown Object (File)
Thu, Jul 28, 11:45 PM
Unknown Object (File)
Wed, Jul 27, 1:21 PM
Unknown Object (File)
Mon, Jul 25, 1:11 AM
Unknown Object (File)
Sat, Jul 23, 5:00 PM
Subscribers
None

Details

Summary

Ref T12819. "Relevance" here just means "how many of your search terms are present in the title?" but that's about the best we can do anyway.

Test Plan

Indexed tasks "A B", "A Z", "Z B", and "Z Z" (all with "A B" in comments). Searched for "A B". Got results ranked in the listed order, with "A B" as the most relevant hit for query "A B".

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

The only other relevance signals I can think of are:

  • If you're an author, owner or subscriber -- doesn't seem like a very strong signal though?
  • Creation or modification date. We currently fall back to creation date when two results have the same "relevance" since we need to order by something, but this doesn't seem like a strong signal to me.
  • We could do "TF/IDF" on this, so that when you search for "the platypus", results which match only "platypus" in the title get more points than results which match only "the". But this is complicated to build and not clearly useful, and I don't think anyone searches for "the platypus" or "android of in the a".
  • I think we can't really do Google-style pagerank because objects aren't very connected and the connections aren't terribly meaningful, and there's no sort of reputation system here.

And then I guess "number of times the object mentions the term" but this is hard to compute in SQL and I think probably not useful anyway.

platypus platypus platypus platypus platypus platypus platypus platypus platypus platypus platypus platypus platypus platypus

This revision is now accepted and ready to land.Sep 5 2017, 11:33 PM
This revision was automatically updated to reflect the committed changes.