3 ms·
It really needs TF-IDF or BM25
by elchief 10y ago
It really needs TF-IDF or BM25
- donretag 10y agoI was going to post the same thing. As far as I can tell, there are no term or document frequencies in postgres. Then again, I have seen several Lucene implementations with either or both are disabled. Can you even get an explain back from postgres? The main difference between a database and a search engine (a subtype) is the ability to score and rank. Take away the ability to score effectively diminishes the value. BM25 is simply TFIDF with a couple of tunable parameters. These parameters will help with precisely the issues which force people to disable TF (saturating the value early, ...). From what I can see, Elasticsearch is mainly used as an analytics/logging engine and not search. Many NLP heavy organizations are using Solr (or straight Lucene).
- elchief 10y agothere is the smlar extension (written by one of the guys that wrote fts) but I'd prefer native You'd think it wouldn't be that hard seeing as SQLite has lots of working code, and it's reasonably similar to pg.