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

最后记得开启索引!

相关文章
相关标签/搜索