50、elasticsearch(搜索引擎)用Django實現個人搜索以及熱門搜索

百度雲搜索,搜各類資料:http://www.lqkweb.com
搜網盤,搜各類資料:http://www.swpan.cn

第三百七十一節,Python分佈式爬蟲打造搜索引擎Scrapy精講—elasticsearch(搜索引擎)用Django實現個人搜索以及熱門git

image

個人搜素簡單實現原理
咱們能夠用js來實現,首先用js獲取到輸入的搜索詞
設置一個數組裏存放搜素詞,
判斷搜索詞在數組裏是否存在若是存在刪除原來的詞,從新將新詞放在數組最前面
若是不存在直接將新詞放在數組最前面便可,而後循環數組顯示結果便可github

熱門搜索
實現原理,當用戶搜索一個詞時,能夠保存到數據庫,而後記錄搜索次數,
利用redis緩存搜索次數最到的詞,過一段時間更新一下緩存web

備註:Django結合Scrapy的開源項目能夠學習一下
django-dynamic-scraper
https://github.com/holgerd77/...redis

補充數據庫

默認的elasticsearch(搜索引擎)只能搜索1萬條數據,在大就會報錯了**django

設置方法數組

步驟一:緩存

打開項目的索引庫地址,將該索引先關閉,不然設置操步驟二沒法提交elasticsearch

image

步驟二:分佈式

打開復合查詢,填入以下信息,記得選擇PUT方式提交,credit_trace_data改成本索引庫中的索引,max_result_window設爲20億,此值是integer類型,不能無限大

http://127.0.0.1:9200/    PUT

 credit_trace_data/_settings?preserve_existing=true

 {

  "max_result_window" : "2000000000"

 }

image

最後點擊提交申請,若是配置正確右側窗口會顯示以下信息

image

若是要查詢max_result_window時只須要將PUT改成get便可

image

最後記得開啓索引!

相關文章
相關標籤/搜索