当前位置: 首页 > news >正文

企业网站的建设与应用开题报告做设计哪个网站图比较实用

企业网站的建设与应用开题报告,做设计哪个网站图比较实用,行业 网站 方案,google属于搜索引擎类网站.1 DSL查询文档 elasticsearch的查询依然是基于JSON风格的DSL来实现的。 1.1.DSL查询分类 Elasticsearch提供了基于JSON的DSL#xff08;Domain Specific Language#xff09;来定义查询。常见的查询类型包括#xff1a; 查询所有#xff1a;查询出所有数据#xff0c;一…1 DSL查询文档 elasticsearch的查询依然是基于JSON风格的DSL来实现的。 1.1.DSL查询分类 Elasticsearch提供了基于JSON的DSLDomain Specific Language来定义查询。常见的查询类型包括 查询所有查询出所有数据一般测试用。例如match_all 全文检索full text查询利用分词器对用户输入内容分词然后去倒排索引库中匹配。例如 match_querymulti_match_query 精确查询根据精确词条值查找数据一般是查找keyword、数值、日期、boolean等类型字段。例如 idsrangeterm 地理geo查询根据经纬度查询。例如 geo_distancegeo_bounding_box 复合compound查询复合查询可以将上述各种查询条件组合起来合并查询条件。例如 boolfunction_score 查询的语法基本一致 GET /indexName/_search {query: {查询类型: {查询条件: 条件值}} }例如查询所有 查询类型为match_all没有查询条件 // 查询所有 GET /indexName/_search {query: {match_all: {}} }2.全文搜索查询 2.1.使用场景 全文检索查询的基本流程如下 对用户搜索的内容做分词得到词条根据词条去倒排索引库中匹配得到文档id根据文档id找到文档返回给用户 比较常用的场景包括 商城的输入框搜索百度输入框搜索 2.2 match和mulit_match查询 match查询是全文检索查询的一种,会对用户输入内容进行分词,然后进行倒排索引库检索.(单字段查询) match查询单字段查询multi_match查询多字段查询任意一个字段符合条件就算符合查询条件 match查询语法如下 GET /indexName/_search {query: {match: {FIELD: TEXT}} }mulit_match语法如下 GET /indexName/_search {query: {multi_match: {query: TEXT,fields: [FIELD1, FIELD12]}} }# 示例 GET /hotel/_search {query: {match: {all: 西直门如家}} }GET /hotel/_search {query: {multi_match: {query: 外滩如家,fields: [brand,name]}} }因为我们将brand、name、business值都利用copy_to复制到了all字段中。因此你根据三个字段搜索和根据all字段搜索效果当然一样了。 但是搜索字段越多对查询性能影响越大因此建议采用copy_to然后单字段查询的方式。 match和multi_match的区别是什么 match根据一个字段查询multi_match根据多个字段查询参与查询字段越多查询性能越差 3.精确查询 精确查询一般是查找keyword、数值、日期、boolean等类型字段。所以不会对搜索条件分词。常见的有 term根据词条精确值查询range根据值的范围查询 利用term进行精确查询,精确查询city值为上海的酒店. # term查询 GET /hotel/_search {query: {term: {city: {value: 上海}}} }利用range进行范围查询查询,查询price在100-300之间的酒店,其中gte表示大于等于,lte表示小于等于(另外还有gt和lt分别表示大于和小于). # range查询 GET /hotel/_search {query: {range: {price: {gte: 100,lte: 300}}} }4.地理查询 根据经纬度查询. 4.1矩形范围查询 geo_bounding_box:查询geo_point落在某个矩形范围的所有文档. // geo_bounding_box查询 GET /indexName/_search {query: {geo_bounding_box: {FIELD: {top_left: { // 左上点lat: 31.1,lon: 121.5},bottom_right: { // 右下点lat: 30.9,lon: 121.7}}}} }4.2附近查询 geo_distance:查询指定中心点小于某个距离值的所有文档. // geo_distance 查询 GET /indexName/_search {query: {geo_distance: {distance: 15km, // 半径FIELD: 31.21,121.5 // 圆心}} }5.相关算法 复合compound查询复合查询可以将其它简单查询组合起来实现更复杂的搜索逻辑。常见的有两种 fuction score算分函数查询可以控制文档相关性算分控制文档排名bool query布尔查询利用逻辑关系组合多个其它的查询实现复杂搜索 利用match查询时文档结果会根据与搜索词条的关联度打分_score返回结果时按照分值降序排列。在elasticsearch中早期使用的打分算法是TF-IDF算法公式如下 在后来的5.1版本升级中elasticsearch将算法改进为BM25算法公式如下 TF-IDF算法有一各缺陷就是词条频率越高文档得分也会越高单个词条对文档影响较大。而BM25则会让单个词条的算分有一个上限曲线更加平滑 5 Funciton score query 通过Funciton score query可以修改文档的相关性算分(query score),根据新的到的算分进行排序. function score 查询中包含四部分内容 原始查询条件query部分基于这个条件搜索文档并且基于BM25算法给文档打分原始算分query score)过滤条件filter部分符合该条件的文档才会重新算分算分函数符合filter条件的文档要根据这个函数做运算得到的函数算分function score有四种函数 weight函数结果是常量field_value_factor以文档中的某个字段值作为函数结果random_score以随机数作为函数结果script_score自定义算分函数算法 运算模式算分函数的结果、原始查询的相关性算分两者之间的运算方式包括 multiply相乘replace用function score替换query score其它例如sum、avg、max、min 正常查询在外滩的酒店 GET /hotel/_search {query: {function_score: {query: {match: {all: 外滩}}}} }给如家的酒店进行分数的加权,每个加十分. GET /hotel/_search {query: {function_score: {query: {match: {all: 外滩}},functions: [{filter: {term: {brand: 如家}},weight: 10}],boost_mode: sum}} }6 Boolean Query 布尔查询是一个或多个查询子句的组合.组合方式有: must必须匹配每个子查询类似“与”should选择性匹配子查询类似“或”must_not必须不匹配不参与算分类似“非”filter必须匹配不参与算分 查找上海的酒店 从皇宫假日和如家上选取 价格不低于500 评分高于45 GET /hotel/_search {query: {bool: {must: [{term: {city:上海}}],should: [{term: {brand:皇宫假日}},{term: {brand:如家}}],must_not: [{range: {price:{lte: 500}}}],filter: [{range: {score:{gte: 45}}}]}} } 需求搜索名字包含“如家”价格不高于400在坐标31.21,121.5周围10km范围内的酒店。 分析 名称搜索属于全文检索查询应该参与算分。放到must中价格不高于400用range查询属于过滤条件不参与算分。放到must_not中周围10km范围内用geo_distance查询属于过滤条件不参与算分。放到filter中 GET /hotel/_search {query: {bool: {must: [{term: {brand:如家}}],must_not: [{range: {price:{gte: 400}}}],filter: [{geo_distance: {distance: 10km, location: 31.21,121.5 }}]}} }
http://www.dnsts.com.cn/news/276908.html

相关文章:

  • 个人网站的建设目标温州网页制作哪家好
  • 西安网站建设哪家好白山市城乡建设局网站
  • 做公司网站需做笑话网站赚钱
  • 外国炫酷网站设计河北百度seo
  • 企业网站建设及维护费用小程序个人开发全过程
  • 毛纱厂家东莞网站建设工商注册网上办事大厅
  • 专业建站推广服务网站建设总结材料
  • 行业数据分析网站排名优化关键词
  • 做一个中英文网站多少钱企业形象设计和品牌形象设计
  • 电商网站建设的现实意义是什么做网站按什么收费
  • 提高网站关键词排名高端定制建站公司
  • 做网站需要哪些工具wordpress流量赚钱
  • 响应式网站制作工具网站建设方案进行工期安排
  • 英文网站建设 济南微商招商网站源码
  • 网站建设软著企业商城网站开发
  • 搞个竞拍网站怎么做站点和网页的关系
  • 长沙个人做网站网站建设的技术方案模板下载
  • 网站整体排名大幅下降文字生成网址
  • 怎样自己做公司网站网站开发亿码酷负责
  • 想做网站建设网络营销的推广策略
  • 成品型网站建设网站如何做等级保护
  • 代做底单的网站长沙网站建站
  • 怎样python做网站百度广告推广怎么收费了
  • 网站怎么广告投放建公司网站需要自己有系统吗
  • 湛江网站建设制作价格西宁网站设计高端
  • 凡科网做网站视频wordpress update
  • 南京 郑州网站建设公司 网络服务wnmp 搭建WordPress
  • 淘宝上找网站建设好吗建网站要先建什么
  • 网站营销中常见问题产品推广外包
  • 网站关键词多少好wordpress不支持apk