趕上了互聯網浪潮的當代人,每當有任何困擾,第一反應都是打開搜索引擎。
什么叫做“硬核相親”,什么是“pick一下”,“達達主義”,“隱形貧困人口”——你都默默搜索過,不想被時代與話題拋棄。也許只有這樣暗自努力,才能讓生活與社交看起來毫不費力。
但搜索引擎無法解決一切。
信息爆炸時,“大而全”不見得是一件好事,除了紛亂的資訊與競價廣告,搜索引擎能給的真的不多。更多的有效信息散落在專業(yè)網站與各色細分App中,其內容含金量相對高,時效性強,無用信息少,是web時代那些先天不足的網頁無法比擬的。如果說搜索引擎是一個巨大的雜貨市場,站內搜索就像一個簡潔的購物中心,可它的體驗……
文獻庫搜索曾是許多人的心病,關鍵詞太少搜出1000多篇論文,輸入太精準,卻提示“沒有更多的搜索結果”。
旅行時,聽到了街頭藝人唱過一首歌,只依稀記得旋律,回來后絞盡腦汁想出了歌詞的近義詞——毫無疑問沒搜到。
好不容易問出小姐姐社交軟件ID,搜了發(fā)現有60多個重名。
需要的PPT模板在素材網怎么也找不到;視頻網站搜個冷門資源,搜索反饋要等上半天結果往往還是“404”。
找用戶,搜話題,找帖子,求推薦……在移動互聯的大背景下,搜索無處不在。作為信息的入口,用戶唯一要求的是:在APP的內容較多,無法完成全部展現時,又快又準找到想看的內容。
簡單直接的訴求無法實現,APP內搜索難用,根本問題有3點:
1. 響應時間
基于MySQL數據庫進行搜索,文檔數僅僅上萬條時,若沒有索引,關鍵詞查詢就比較吃力了。如果一旦到企業(yè)級的數據,響應速度就會更加不可接受。
2. 分詞
傳統(tǒng)數據庫并不支持分詞。例如,在做中文搜索時,當搜索框輸入“四川火鍋”時,數據庫通常只能把這四個字進行全部匹配??墒窃谖谋局?,可能會出現“推薦四川好吃的火鍋”,這時就會無結果顯示。
3. 相關性
在用數據庫做搜索時,結果經常會出現一系列文檔??墒堑降资裁次臋n是用戶真正想要的呢?怎么才能把用戶想看的文檔放在搜索列表最前面呢?
這些問題,基于Elasticsearch的華為云搜索服務可以解決。
1.l Elasticsearch基于倒排索引,搜索時不用再遍歷整張表了,如當搜索“手機”時,Elasticsearch會立即返回文檔F,G,H。這樣就不用花多余的時間在其他文檔上,因此檢索速度得到了數量級的提升
2.l Elasticsearch支持中文分詞插件,直接解決了分詞搜索問題。例如當輸入“四川火鍋”時,Elasticsearch會自動做下面兩件事:將“四川火鍋”分詞成“四川”和“火鍋”,而后查找包含這兩個詞的文檔
3.l Elasticsearch支持相關性評分。通過合理的優(yōu)化,云搜索服務能夠返回精準的結果,滿足用戶的需求。返回結果會根據分數由高到低排列。分數越高,意味著和查詢語句越相關。例如,當搜索“星巴克咖啡”,帶有“星巴克咖啡”的信息就要比只包含“咖啡”的信息靠前。
除此之外,云搜索服務由華為專業(yè)團隊貼身運維,最短時間搭建搜索功能模塊。企業(yè)使用按需付費,費用低至 ¥0.59/小時起,包年包月最高可省51%,切實的優(yōu)質低價!