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

泰安网站制作推荐/今天今日头条新闻

泰安网站制作推荐,今天今日头条新闻,花木网站模版,著名vi设计机构我们知道在 Kibana 中,我们可以实现三种搜索 DSL 搜索,你可以参照我之前的文章 “开始使用Elasticsearch (2)” 进行详细了解KQL 搜索,你可以参照我之前的文章 “Kibana: 如何使用 Search Bar”Lucene 搜索&#xff0…

我们知道在 Kibana 中,我们可以实现三种搜索

  1. DSL 搜索,你可以参照我之前的文章 “开始使用Elasticsearch (2)” 进行详细了解
  2. KQL 搜索,你可以参照我之前的文章 “Kibana: 如何使用 Search Bar”
  3. Lucene 搜索,你可以参照我之前的文章 “Kibana: 如何使用 Search Bar”

在这三种搜索方法中,DSL 以及 Lucene 搜索可以支持模糊查询 (fuzziness) 以及 通配符查询 (Regex)。KQL 是 Search Bar 的默认搜索方式,但是它不支持模糊查询。今天我们来重点介绍一下如何通过 Lucene 搜索来实现模糊查询以及通配符查询。那么我们该如何进行 Lucene 查询呢?

在默认的情况下,KQL (Kibana Query Language)是 Search Bar 的默认搜索语言。它的好处是具有自动完成功能,比如:

为了实现切换到 Lucene 搜索,我们点击上面的 KQL:

我们点击上面的开关:

这样我们的 Search Bar 的搜索方式就变成了 Lucene 的搜索方式了。在 Lucene 搜索模式下,autocomplete 功能将消失。我们需要记住完整的搜索命令才可以。

 

准备数据

在今天的练习中,我们将展示如何在 Search Bar 中实现模糊查询以及通配符查询。为此,我们创建如下的一个文档:

PUT my_index/_doc/1
{"content": "I like the articles from liuxg"
}

在 Kibana 的 console 中输入上面的命令。这样我们就创建一个叫做 my_index 的索引,并且它含有一个文档。如果我们想使用 DSL 来实现这个模糊查询,我们可以这么做:

GET my_index/_search
{"query": {"match": {"content": {"query": "liuxo","fuzziness": 1}}}
}

上面标明,如果有一个拼写错误,我们也可以搜索到上面的文档。当然,我们也可以把 fuziness 设置为 2,或者是 auto,依据自己的需要。如果你想了解更多的关于模糊查询的知识,请参阅我的文章 “Elasticsearch:fuzzy 搜索 (模糊搜索)”。

我们也可以实现通配符的搜索:

GET  my_index/_search
{"query": {"wildcard": {"content": "liux?"}}
}

那么我们该如何来在 Search Bar 中实现同样的搜索呢?答案是使用 Lucene 搜索。

 

在 Search Bar 中实现模糊搜索及通配符搜索

首先,我们必须为 my_index 来创建一个 index pattern,以便能够在 Discover 中进行使用:

点击上面的 Create index pattern。这样就创建了 my_index 的索引模式。

我们打开 Discover,并装载 my_index 索引模式。我们首先切换到 Lucene 搜索模式:

 

通配符搜索

我们可以使用如下的方法来进行通配符搜索:

这里的 ? 代表是一个字符。这种搜索在 KQL 中是没有的。当然我们也可以进行如下的搜索:

我们还可以进行如下的搜索:

这里的 * 表示匹配多个字符。这种方式在 KQL 中也被支持。

 

模糊查询

我们可以使用如下的方式来进行模糊查询。通常使用于我们不知道具体需要搜索的文字是什么,或者是因为我们错误地输入一些词:

这里的 ~1 代表允许其中的一个字母是错误的。如果你可以允许两个字母的错误,你可以使用如下的方法:

在上面,我们有两个字母是错误的,但是我们还是可以能检索到结果。

当我们不知道到底是几个字母错误时,我们可以使用如下的方法来进行:

我们使用 ~auto 来表示。正如上面所示,当我们使用 auto 时,有两个字母错误时搜索不到结果。这个是由 Elasticsearch 自己决定到底是使用1个错误还是2个错误。当字符串的长度超过5时,fuziness 自动设置为2;如果字符串的长度少于2时,那么 fuziness 自动被设置为0.

我们修改上面的搜索,只出现一个字母的错误,我们还是使用 auto:

从上面的结果中,我们可以看出来我们可以搜索到我们想要的结果。

http://www.lbrq.cn/news/744409.html

相关文章:

  • 济南住房和房产信息网/seo中文含义
  • 石家庄工信部网站备案/经典软文案例标题加内容
  • 朋友要我帮忙做网站/武汉大学人民医院地址
  • 给周杰伦做网站/安卓aso优化排名
  • 黄色国内外网站/网络营销有哪些特点
  • asp.net做织梦网站/seo技术培训东莞
  • 能免费做微信群推广的网站/汕头网站设计
  • 网站怎么企业备案/搜索引擎优化与关键词的关系
  • 政府网站建设与管理官网/如何建立一个自己的网站啊
  • 教育培训官网/优化大师兑换码
  • 上海网站建设公司/seo网站营销公司哪家好
  • 西安 医疗网站建设/如何自制网站
  • 用明星名字做网站/seo属于运营还是技术
  • 跨境电子商务网站建设/网站制作公司官网
  • 做网站找哪个/廊坊百度推广电话
  • 网站后台文本编辑器/seo优化工具
  • 金启网站建设/找网络公司做推广费用
  • 网络在线培训网站建设方案/搜索引擎优化排名seo
  • 在建设部网站呢李可以看出需要什么时候考试/seo关键词排名优化哪好
  • 中土南方建设有限公司网站/seo引擎优化是什么
  • 深圳个人网站建设/营销网站
  • wordpress 响应速度慢/seo是什么意思 为什么要做seo
  • 网站页面统计代码是什么意思/苏州优化seo
  • 苏州专业网站设计/智能营销方法
  • 北京大型网站优化/抖音seo是什么意思
  • 销售网站建设价格/b站在线观看
  • 做网页网站怎么样/zac博客seo
  • 手机做任务网站有哪些/成都seo论坛
  • 做网站如何语音/网站推广
  • 外贸网站建设哪家公司好/nba赛程排名
  • Spring Boot 3.4.x 性能优化实战:用 Undertow 替换 Tomcat 全指南​
  • 数字ic后端设计从入门到精通14(含fusion compiler, tcl教学)半定制后端设计
  • LeetCode算法日记 - Day 16: 连续数组、矩阵区域和
  • 【QT入门到晋级】进程间通信(IPC)-socket(包含性能优化案例)
  • ‌关于人工智能(AI)的发展现状和未来趋势的详细分析!
  • 如何在 uBlock Origin 中忽略指定网站的某一个拦截规则