海外营销是干什么的/seo最新快速排名

海外营销是干什么的,seo最新快速排名,软件开发流程书籍,bootstrap手机网站Elasticsearch提供了基于JSON的DSL(Domain Specific Language)语句来定义查询条件,其JavaAPI就是在组织DSL条件。 1.DSL查询 叶子查询(Leaf query clauses):在特定的字段里查询特定值,属于简单…

Elasticsearch提供了基于JSON的DSL(Domain Specific Language)语句来定义查询条件,其JavaAPI就是在组织DSL条件。

1.DSL查询

  • 叶子查询(Leaf query clauses):在特定的字段里查询特定值,属于简单查询。

  • 复合查询(Compound query clauses):以逻辑方式组合多个叶子查询或者更改叶子查询的行为方式。

 测试:无条件查询match_all

#DSL查询
GET /items/_search
{"query":{"match_all": {}}
}

我们的数量不止10000,但是查询出来的value只有10000,并且数据只显示10条?

Elasticsearch默认超过10000条只显示10000,并且设置了默认分页的查询页数

 

2.叶子查询

叶子查询类型有很多,可以在官网查看全部

Query DSL | Elasticsearch Guide [7.12] | Elastic

  • 全文检索查询(Full Text Queries):利用分词器对用户输入搜索条件先分词,得到词条,然后再利用倒排索引搜索词条。例如:

    • match:单字段

    • multi_match:多字段

  • 精确查询(Term-level queries):不对用户输入搜索条件分词,根据字段内容精确值匹配。但只能查找keyword、数值、日期、boolean类型的字段。例如:

    • ids

    • term:精准匹配

    • range:范围匹配

全文检索查询

1.match

  "query":{
    "match": {
      "字段名": "搜索条件"
    }
  }

#叶子查询match
GET /items/_search
{"query":{"match": {"name": "牛奶"}}
}

 存在一个_score关联度打分,返回结果时按照分值降序排列

 

 2.multi_match

    "multi_match": {
      "query": "搜索条件",
      "fields": ["字段1","字段2"]
    }

字段1和字段2是“或”关系,只需要满足一个即可

#叶子查询multi_match
GET /items/_search
{"query":{"multi_match": {"query": "宾格瑞","fields": ["name","brand"]}}
}

 

精准匹配 

不做分词,只根据输入字段匹配

1.term 

    "term": {
      "字段名": {
        "value": "查询条件"
      }
    }

#精确查询term
GET /items/_search
{"query":{"term": {"brand": {"value": "宾格瑞"}}}
}

2.range 

    "range": {
      "price": {
        "gte/gt": 1000,
        "lte/lt": 2000
      }
    }

查询price 1000-2000

#范围查询查询range
GET /items/_search
{"query":{"range": {"price": {"gte": 1000,"lte": 2000}}}
}

 3.复合查询

复合查询=多个叶子查询

1.算分函数查询

在使用全文检索查询match中返回结果有_score关联度打分,按照分值降序排列,但是日常浏览器搜索中,搜索出来的前几条往往是广告,说明_score关联度打分可控。

function score 查询中包含四部分内容:

  • 原始查询条件:query部分,基于这个条件搜索文档,并且基于原始算法打分,原始算分。

  • 过滤条件:filter部分,符合该条件的文档才会重新算分。

  • 算分函数:符合filter条件的文档要根据这个函数做运算,得到的函数算分,有四种函数

    • 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": {  .... }, // 原始查询,可以是任意条件"functions": [ // 算分函数{"filter": { // 条件过滤"term": {"字段": "过滤条件"}},"weight": 10 // 算分权重为2}],"boost_mode": "multipy" // 加权模式,求乘积}}
}

 2.bool查询

利用逻辑运算来组合一个或多个查询子句的组合,bool查询支持的逻辑运算有:

  • must:必须匹配每个子查询,类似“与”

  • should:选择性匹配子查询,类似“或”

  • must_not:必须不匹配,不参与算分,类似“非”

  • filter:必须匹配,不参与算分

与搜索关键字无关的查询尽量采用must_not或filter逻辑运算,避免参与相关性算分。 

GET /items/_search
{"query": {"bool": {"must": [{"match": {"name": "手机"}}],"should": [{"term": {"brand": { "value": "华为" }}},{"term": {"brand": { "value": "小米" }}}],"must_not": [{"range": {"price": {"gte": 2500}}}],"filter": [{"range": {"price": {"lte": 1000}}}]}}
}

 4.排序

GET /indexName/_search
{"query": {"match_all": {}},"sort": [{"排序字段": {"order": "排序方式asc和desc"}}]
}

5.分页

1.基础分页

elasticsearch中通过修改fromsize参数来控制要返回的分页结果:

  • from:从第几个文档开始

  • size:总共查询几个文档

GET /items/_search
{"query": {"match_all": {}},"from": 0, // 分页开始的位置,默认为0"size": 10,  // 每页文档数量,默认10"sort": [{"price": {"order": "desc"}}]
}

 2.深度分页

在面对数据量比较大时,ELasticsearch会采取分片存储,将数据分成n份,分配到不同的节点上。利于数据的扩展和存储,但是也会存在问题。

我要查找990-1000的数据,从单体结构上,只需要排序然后找前1000名,就可以获得990-1000的数据,但是采取分片存储后,分片1的990-1000是全部数据的990-1000吗,大概率不是。此时,需要找到所有的分片前1000,然后整合到一起,再排序,这样就可以找到总数据的990-1000

那如果我要找9990-10000,是不是就要找到每个分片的前10000名数据在整合排序查找。

查询分页深度较大时,汇总数据过多,对内存和CPU会产生非常大的压力,因此elasticsearch会禁止from+ size 超过10000的请求。

解决深度分页方案:

  • search after:分页时需要排序,原理是从上一次的排序值开始,查询下一页数据。官方推荐使用的方式。

  • scroll:原理将排序后的文档id形成快照,保存下来,基于快照做分页。官方已经不推荐使用。

6.高亮 

在浏览器搜索Elasticsearch,发现所有的Elasticsearch、Elastic样式异于其他内容。

对搜索内容进行分词,对分词字段打上高亮标签<em></em>或<strong></strong>

实现:

GET /{索引库名}/_search
{"query": {"match": {"搜索字段": "搜索关键字"}},"highlight": {"fields": {"高亮字段名称": {"pre_tags": "<em>","post_tags": "</em>"}}}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/72691.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Dubbo/Hession2序列化Immutable类型的集合异常问题

问题排查 根据堆栈信息可见&#xff0c;dubbo使用默认的hession2进行序列化时出现了异常&#xff0c;异常堆栈根原因为&#xff1a;null array 位于java.util.CollSer#readResolve方法中&#xff0c;即在序列化集合时&#xff0c;集合数组为空。 向上追溯jdk.internal.ref…

Word 小黑第34套

对应大猫34 设置第二页水印&#xff0c;取消第一页的&#xff1a;取消第二页页眉链接&#xff0c;删除第一张水印图片&#xff08;delete&#xff09; 调整水印图片&#xff1a;点开页眉页脚 双击图片 可以调整 邮件合并 -创建标签 横标签数3 竖标签5 表布局 -查看网格线 插…

2.5.1 io_uring

文章目录 2.5.1 io_uring1. 对比1. select、poll、epoll 对比表格2. 关键特性说明&#xff1a;3. 应用场景 2. 异步io1. 频繁copy2. 如何做到线程安全 3. io_uring1. 实现2. 关键点&#xff1a;3. 问题1. Reactor 与 Proactor 的三点不同2. epoll 与 io_uring 的区别 2.5.1 io_…

【实战指南】基于DevExpress轻量化主题实现WPF应用性能升级

DevExpress WPF拥有120个控件和库&#xff0c;将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序&#xff0c;这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件…

python-leetcode 56.电话号码的字母组合

题目&#xff1a; 给定一个仅包含数字的2-9的字符串&#xff0c;返回所有它可能表示的字母组合&#xff0c;答案可以按任意顺序返回 给出数字到字母的映射如下&#xff08;与电话按键相同&#xff09;&#xff0c;注意1不对应任何字母 方法一&#xff1a;深度优先搜索&#x…

5.0 VisionPro调用USB相机的方法与步骤说明(一)

本文介绍如何在C#中调用visionPro以处理USB相机采集到的图片。示例如下: 主要思路如下: 1. 使用AForge来打开以及采集usb相机照片。 usb相机处于一直运行状态。每隔100ms采集一次照片。且触发一次事件。 public void Start() { this.videoSourcePlayer.Stop(); …

论文阅读:Deep Hybrid Camera Deblurring for Smartphone Cameras

今天介绍一篇 ACM SIGGRAPH 2024 的文章&#xff0c;关于手机影像中的去模糊的文章。 Deep Hybrid Camera Deblurring for Smartphone Cameras Abstract 手机摄像头尽管取得了显著的进步&#xff0c;但由于传感器和镜头较为紧凑&#xff0c;在低光环境下的成像仍存在困难&am…

Linux中的基本指令(下)

目录 mv指令 more指令 less指令 head指令 tail 指令 继续理解文件 重定向和追加重定向操作 理解管道 find指令 whereis 指令 bc指令 uname ‒r指令 grep 指令 关机 扩展命令 zip/unzip 指令 tar指令 关于rzsz 系统间的文件互传 接上&#xff01; mv指令 m…

Unity WebGL IIS报错无法使用

Unity WebGL IIS报错无法使用 原因1&#xff1a;WebGL文件夹无访问权限 右键WebGL文件夹-属性 点击安全-编辑-添加 输入ever点击确定-应用即可

docker-compose install nginx(解决fastgpt跨区域)

CORS前言 CORS(Cross-Origin Resource Sharing,跨源资源共享)是一种安全措施,它允许或拒绝来自不同源(协议、域名、端口任一不同即为不同源)的网页访问另一源中的资源。它的主要作用如下: 同源策略限制:Web 浏览器的同源策略限制了从一个源加载的文档或脚本如何与另一…

vulnhub靶场之loly靶机

前言 挑战攻克该靶机30分钟 靶机&#xff1a;loly靶机&#xff0c;IP地址为192.168.10.11 攻击&#xff1a;kali&#xff0c;IP地址为192.168.10.6 靶机和攻击机都采用VMware虚拟机&#xff0c;都采用桥接网卡模式 文章涉及的靶机及工具&#xff0c;都可以自行访问官网或者项…

Deepseek API+Python测试用例一键生成与导出-V1.0.2【实现需求文档图片识别与用例生成自动化】

在测试工作中&#xff0c;需求文档中的图片&#xff08;如界面设计图、流程图&#xff09;往往是测试用例生成的重要参考。然而&#xff0c;手动提取图片并识别内容不仅耗时&#xff0c;还容易出错。本文将通过一个自研小工具&#xff0c;结合 PaddleOCR 和大模型&#xff0c;自…

Excel(函数篇):COUNTIF与CONUTIFS函数、SUMIF与SUMIFS函数、ROUND函数、MATCH与INDEX函数、混合引用与条件格式

目录 COUNTIF和COUNTIFS函数COUNTIF函数COUNTIFS函数SUMIF和SUMIFS函数SUMIF函数SUMIFS函数SUMIFS函数与控件实现动态年月汇总ROUND、ROUNDUP、ROUNDDOWN函数单元格混合引用条件格式与公式,标记整行数据MATCH和INDEX函数COUNTIF和COUNTIFS函数 COUNTIF函数 统计下“苏州”出现…

上位机数据可视化:使用QtCharts绘制波形图

工程配置 CMake文件 find_package(Qt5 COMPONENTS Charts REQUIRED)target_link_libraries(zhd-desktop PRIVATE Qt5::Charts)包含头文件以及名称空间&#xff08;这个很重要&#xff0c;没有包含名称空间编译器会提示找不到相关的类型&#xff09; #include <QtCharts&g…

CSS - Pseudo-classes(伪类选择器)

目录 一、介绍二、常用种类三、案例实现案例一&#xff1a;a标签使用link/visited/hover/active案例二&#xff1a;表单元素使用focus/disabled案例三、通过其余伪类实现元素灵活选中 一、介绍 CSS 伪类&#xff08;Pseudo-classes&#xff09; 用于定义元素的特定状态或结构位…

Ubuntu22.04虚拟机里安装Yolov8流程

1. 安装pytorch sudo apt install nvidia-cuda-toolkit nvcc --version # 官方适配地址&#xff1a;https://download.pytorch.org/whl/torch/import torch print(torch.__version__) print(torch.cuda.is_available())2. 安装环境 # cuDNN 安装&#xff1a;https://develop…

Spring 声明式事务管理

Spring 编程的方式实现事务管理&#xff0c;这样太过麻烦&#xff0c;需要在每个方法上面加上相应的事务处理操作&#xff0c;声明式事务处理能够很好的解决这个问题&#xff0c;比如通过tx命名空间&#xff0c;这样只需要配置就可以检测到相关的方法&#xff0c;或者是通过tra…

Chat2DB:让数据库管理像聊天一样简单

数据库工具的痛点与破局 在数据爆炸的时代&#xff0c;数据库管理工具已成为企业高效运营的刚需。然而&#xff0c;传统工具如Navicat、DBeaver虽功能强大&#xff0c;却让非技术人员和SQL新手望而却步。复杂的界面、繁琐的手动操作、晦涩的语法规则&#xff0c;成为横亘在数据…

Navicat for Snowflake 震撼首发,激活数据仓库管理全新动能

近日&#xff0c;Navicat 家族迎来了一位全新成员 — Navicat for Snowflake。Snowflake 是一款基于云架构的现代数据仓库解决方案&#xff0c;以其弹性扩展、高性能和易用性著称。这次首发的Navicat for Snowflake 专为简化 Snowflake 数据库管理任务而精心打造。它凭借其直观…

【项目合集】智能语音小车-微信小程序控制

功能需求&#xff1a; 车子检测环境温度、湿度&#xff0c;上报 APP、WEB 端显示实时数据可通过 APP 控制小车前进、左转、右转可通过语音控制小车前进后退车上一个 LED 灯&#xff0c;可通过 WEB、小程序控制在 APP、WEB 上均可注册登录 硬件清单 硬件 功能 备注 ESP32 …