1.背景
創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站制作、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的天河網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!當(dāng)用戶在搜索框輸入關(guān)鍵字后,我們要為用戶提供相關(guān)的搜索結(jié)果??梢赃x擇使用模糊查詢 like 關(guān)鍵字實(shí)現(xiàn),但是 like 關(guān)鍵字的效率極低。查詢需要在多個(gè)字段中進(jìn)行,使用 like 關(guān)鍵字也不方便,另外分詞的效果也不理想。
全文檢索方案
搜索引擎原理
2.Elasticsearch介紹
實(shí)現(xiàn)全文檢索的搜索引擎,選的是 Elasticsearch 。
分詞說明
搜索引擎在對(duì)數(shù)據(jù)構(gòu)建索引時(shí),需要進(jìn)行分詞處理。
分詞是指將一句話拆解成 多個(gè)單字 或 詞 ,這些字或詞便是這句話的關(guān)鍵詞。
Elasticsearch 不支持對(duì)中文進(jìn)行分詞建立索引,需要配合擴(kuò)展 elasticsearch-analysis-ik 來實(shí)現(xiàn)中文分詞處理。
3.集成Elasticsearch
3.1. Haystack介紹和安裝配置
Haystack安裝
$ pip install django-haystack $ pip install elasticsearch==2.4.1