真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Django集成搜索引擎Elasticserach的方法示例-創(chuàng)新互聯(lián)

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)鍵字也不方便,另外分詞的效果也不理想。

全文檢索方案

  • 全文檢索即在指定的任意字段中進(jìn)行檢索查詢。
  • 全文檢索方案需要配合搜索引擎來實(shí)現(xiàn)。

搜索引擎原理

  • 搜索引擎 進(jìn)行全文檢索時(shí),會(huì)對(duì)數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行一遍預(yù)處理,單獨(dú)建立起一份 索引結(jié)構(gòu)數(shù)據(jù) 。
  • 索引結(jié)構(gòu)數(shù)據(jù) 類似字典的索引檢索頁 ,里面包含了關(guān)鍵詞與詞條的對(duì)應(yīng)關(guān)系,并記錄詞條的位置。
  • 搜索引擎進(jìn)行全文檢索時(shí),將 關(guān)鍵字在索引數(shù)據(jù)中進(jìn)行快速對(duì)比查找,進(jìn)而找到數(shù)據(jù)的真實(shí)存儲(chǔ)位置 。

2.Elasticsearch介紹

實(shí)現(xiàn)全文檢索的搜索引擎,選的是 Elasticsearch 。

  • Elasticsearch 是用 Java 實(shí)現(xiàn)的,開源的搜索引擎。
  • 它可以快速地儲(chǔ)存、搜索和分析海量數(shù)據(jù)。維基百科、Stack Overflow、Github等都采用它。
  • Elasticsearch 的底層是開源庫Lucene。但是,沒法直接使用 Lucene,必須自己寫代碼去調(diào)用它的接口。

分詞說明

搜索引擎在對(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 是在Django中對(duì)接搜索引擎的框架,搭建了用戶和搜索引擎之間的溝通橋梁。
    • 我們?cè)贒jango中可以通過使用 Haystack 來調(diào)用 Elasticsearch 搜索引擎。
  • Haystack 可以在不修改代碼的情況下使用不同的搜索后端(比如 Elasticsearch 、 Whoosh 、 Solr 等等)。

Haystack安裝

$ pip install django-haystack
$ pip install elasticsearch==2.4.1

網(wǎng)站題目:Django集成搜索引擎Elasticserach的方法示例-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://weahome.cn/article/csjjsh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部