Elasticsearch keyword与text有什么区别

这篇具有很好参考价值的文章主要介绍了Elasticsearch keyword与text有什么区别。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Text:

1.支持分词,全文检索,支持模糊查询,支持精确查询,不支持聚合,排序操作;
2.最大支持的字符长度无限制,适合大字段存储;
3.将字段进行分词处理,然后再存入到es中;

使用场景:
    1.存储全文搜索数据,例如:文章内容、地址、代码块;
    2.默认结合standard analyzer(标准解析器)对文本进行分词、倒排索引;
    3.默认结合标准分析器进行词命中、词频相关度打分;

Keyword:

1.不进行分词,直接索引,支持模糊查询,支持精确查询,支持聚合,排序操作;
2.最大支持的字符长度UTF-8 32766个,可以通过设置ignore_above指定自持字段长度,超过给定长度后的数据将不被索引,无法通过term精确匹配检索返回结果;
3.默认字符长度256个;

使用场景:
    1.存储邮箱号码,url,name,title,手机号码;
    2.用于筛选数据(例如:select * from x where status = ‘open’)、排序、聚合;
    3.直接将完整的文本保存至倒排索引中;

对比后的选择:

text比keyword多出了分词处理,所以从内存占比与性能上来看,如果keyword满足业务场景并且业务场景中不需要分词,那么优先使用keyword,因为其内存占比更低,性能更优。 文章来源地址https://www.toymoban.com/news/detail-417923.html

到了这里,关于Elasticsearch keyword与text有什么区别的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • laravel如何使用scout+elasticsearch搜索,并支持IK分词

    本扩展包支持IK分词设置。 在按下文操作前请先阅读 laravel scout 全文搜索文档 安装 您可以通过composer安装软件包 wannanbigpig/laravel-scout-elastic: Laravel 会自动注册驱动服务提供者。 Elasticsearch 配置 安装完成后,您应该使用vendor:publish Artisan命令发布Scout配置文件。该命令将把scou

    2024年02月06日
    浏览(84)
  • es中的match、term、text、keyword、bool

    总结一下es中的match、term、text、keyword、bool等。比如我想搜索一辆“红色奥迪车”: match:在匹配时会对所查找的进行分词,然后按分词匹配查找,用于模糊查询。结果会将包含“红色”或“奥迪”的车都找出来。 term:对进行查找,用于精确查找。只有名

    2024年02月11日
    浏览(41)
  • es字段查询加keyword和不加keyword的区别

    在ES(Elasticsearch)中,查询字段名后面加上\\\"keyword\\\"和不加\\\"keyword\\\"有着不同的含义和用途。 当字段名后面加上\\\"keyword\\\"时, 表示该字段是一个keyword类型的字段。Keyword类型的字段会将文本作为一个整体进行索引和搜索,不会进行分词 。这意味着,如果你想要精确匹配某个特定的

    2024年02月10日
    浏览(49)
  • ES中type和keyword两个数据类型的区别

    前言 这是我在这个网站整理的笔记,关注我,接下来还会持续更新。 作者:神的孩子都在歌唱 参考文章: https://segmentfault.com/q/1010000017312707 ES数据类型:type与keyword :https://blog.csdn.net/ywb201314/article/details/112667516 数据类型 简单的类型: text、keyword、date、long、double、boolean和i

    2024年02月07日
    浏览(46)
  • Elasticsearch keyword 中的 ignore_above配置项

    关于es mapping的keyword ignore_above配置项的解释如下: Do not index any string longer than this value. Defaults to  2147483647  so that all values would be accepted. 不会索引大于ignore_above配置值的数据,默认值 2147483647字符。注意:动态mappings中自动为256。 Strings longer than the  ignore_above  setting will not

    2024年02月07日
    浏览(41)
  • Flutter vue 有什么区别,它们都支持哪些平台?

    Flutter 和 Vue 是两个不同的跨平台应用程序开发框架,它们有一些不同的特点和适用场景。 1. 语言:Flutter 使用 Dart 语言,而 Vue 使用 JavaScript 语言。Dart 是一种面向对象的语言,具有静态类型检查、异步编程和编译时优化等特性,适合构建复杂的应用程序。JavaScript 是一种脚本

    2024年02月10日
    浏览(58)
  • dede:channel标签支持调用子栏目描述description及关键词keywords的办法

    dede:channel标签不支持调用子栏目的及栏目描述,有些时候我们需要用户,需要简单的修改一下文件,如下: includetaglibchannel.lib.php文件第86行(注意sql语句有多个,最好是都替换下) 在后面添加,keywords,description,成如下 在模板中(举例,根据自己的代码灵活使用):

    2024年02月02日
    浏览(58)
  • 什么是聚簇索引和非聚簇索引?它们有什么区别?MySQL支持哪些存储引擎?

    聚簇索引(Clustered Index)和非聚簇索引(Non-clustered Index)是数据库中两种不同类型的索引结构,它们在存储和组织数据上有所不同。 聚簇索引: 聚簇索引是按照索引列的顺序重新组织数据的方式。它定义了表的物理排序方式,使得数据行按照索引列的顺序存储在磁盘上相邻

    2024年04月26日
    浏览(49)
  • es自定义分词器支持数字字母分词,中文分词器jieba支持添加禁用词和扩展词典

    自定义分析器,分词器 所有字段检索 高亮搜索 分词测试 GET /test_index/_analyze jieba中文分词支持添加禁用词和扩展词库功能 创建索引:PUT http://xxxx:9200/test_index 分词测试: GET http://xxxxxx:9200/test_index/_analyze

    2024年02月11日
    浏览(44)
  • GPT的Dall E3绘画和midjourney绘画有什么区别,哪个更好用——沃卡AI已集成支持

    AI绘画即指人工智能绘画,是一种计算机生成绘画的方式。是AIGC应用领域内的一大分支。 AI绘画主要分为两个部分,一个是对图像的分析与判断,即“学习”,一个是对图像的处理和还原,即“输出”。 人工智能通过对数以万计的图像及绘画作品进行不断学习,如今已经达到

    2024年01月19日
    浏览(62)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包