2 回答

TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超5個(gè)贊
------------------------------------------ 假如是從文章標(biāo)題中搜索,如果每次keyUp時(shí),就發(fā)請(qǐng)求到服務(wù)器商搜索文章表,那查詢頻率不是太大了?還是說(shuō)搜索完后有緩存到哪里什么的? ------------------------------------------- 我曾經(jīng)的做法是:每次輸入完成都向服務(wù)器提交,而服務(wù)器返回該“頭文字”的“推薦短語(yǔ)”。服務(wù)端如何對(duì)“推薦短語(yǔ)”排序,并且“頭文字”以漢字為準(zhǔn)、還是拼音為準(zhǔn)(這是趨勢(shì)),看你對(duì)用戶搜多關(guān)鍵詞的后期處理了。 ------------------------------------------ 還有一個(gè),搜索時(shí)假如輸入“google map”,我想讓標(biāo)題中這兩個(gè)單詞連在一起的顯示在前面,而不連在一起的(如結(jié)果中只包含“google“或只包含"map")的顯示在后面,關(guān)于這個(gè)的實(shí)現(xiàn)有何建議?是要把結(jié)果取出后再進(jìn)行過(guò)濾排序么? ------------------------------------------ 結(jié)果集排序加權(quán)算法在搜索引擎制作中是比較重要的一環(huán),諸如 google PageRank(?) 等技術(shù)就是針對(duì)該問(wèn)題的多個(gè)方案之一??梢园选巴扑]短語(yǔ)”當(dāng)成是對(duì)用戶已用所有關(guān)鍵詞的搜索。你的疑惑其實(shí)是對(duì)結(jié)果集進(jìn)行“完整性加權(quán)”。完整性加權(quán)在我的項(xiàng)目中,是在用戶搜索短語(yǔ)時(shí)對(duì)短語(yǔ)解詞,而在多個(gè)“單詞結(jié)果集”中進(jìn)行整合,并在整合過(guò)程中加權(quán)。這樣,含較完整短語(yǔ)的結(jié)果并會(huì)顯示在總結(jié)果集前面。 我只是說(shuō)了我的解決思路,但你更重要的是參考成熟的解決方案,比如 lucence(?) 等,呵呵。

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超7個(gè)贊
匹配應(yīng)采用全文索引的方式匹配,而不是遍歷數(shù)據(jù)庫(kù)。全文索引采用倒排序索引,檢索效率非常高。 你可以嘗試使用 lucene + 一個(gè)分詞組件。
添加回答
舉報(bào)