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

Elasticsearch 分词与字段类型(keyword vs. text)面试题

Elasticsearch 分词与字段类型(keyword vs. text)面试题 🔍

目录

  • 基础概念
  • 底层存储
  • 查询影响
  • 多字段
  • 聚合与排序
  • 分词器
  • 实战排查
  • 总结

基础概念

💡 问题1:Elasticsearch 中的 keyword 和 text 类型有什么区别?

👉 查看参考答案
对比项keywordtext
分词(Analysis)❌ 不进行分词,存储原始字符串✅ 存入时先分词(如标准分词器)
搜索方式🎯 只能精确匹配(如 term 查询)🔎 支持全文检索(如 match 查询)
适用场景📊 精确匹配、聚合、排序(如 status、ID)📝 全文搜索(如 article、description)
是否支持 DocValues✅ 默认支持(适合排序/聚合)❌ 默认不支持(除非启用 fielddata)

底层存储

🗄️ 问题2:keyword 和 text 类型在倒排索引中的存储方式有何不同?

👉 查看参考答案
keyword:
  • 整个字符串作为**一个词项(term)**存入倒排索引
  • 例如 “error” 会直接存储为 error,搜索时必须完全匹配
text:
  • 字符串会被分词器拆分成多个词项
  • 例如 “Quick Fox” 可能被拆分为 ["quick", "fox"],支持部分匹配

查询影响

🔍 问题3:以下查询会返回什么结果?为什么?

PUT /test_index
{"mappings": {"properties": {"title": { "type": "text"
http://www.xdnf.cn/news/479683.html

相关文章:

  • 深入浅出 MinIO:身份管理与权限配置实战 !
  • AI与产品架构设计系列(2):Agent系统的应用架构与落地实
  • GpuGeek 网络加速:破解 AI 开发中的 “最后一公里” 瓶颈
  • vhca_id 简介,以及同 pf, vf 的关系
  • QT6 源(103)篇三:阅读与注释 QPlainTextEdit,给出源代码
  • 基于OpenCV的SIFT特征匹配指纹识别
  • 基于 CSS Grid 的网页,拆解页面整体布局结构
  • MCP协议的核心机制和交互过程
  • Review --- 框架
  • #跟着若城学鸿蒙# web篇-获取定位
  • 医学图像分析中的大规模基准测试与增强迁移学习|文献速递-深度学习医疗AI最新文献
  • 2025蓝桥杯JAVA编程题练习Day8
  • Java 后端给前端传Long值,精度丢失的问题与解决
  • 【pbootcms】打开访问首页显示未检测到您服务器环境的sqlite3数据库拓展,请检查php.ini中是否已经开启该拓展
  • 职业院校物联网安装调试员(工业数智技术)实训解决方案
  • 股指期货贴水为何会产生成本?
  • OceanBase 的系统变量、配置项和用户变量有何差异
  • 快速通关双链表秘籍
  • 旧 docker 版本通过 nvkind 搭建虚拟多节点 gpu 集群的坑
  • 智能裂变引擎 商业增长利器 —— 专业推客系统耀世而来
  • 图像对比度调整(局域拉普拉斯滤波)
  • 电子学会Python一级真题总结2
  • PHP 与 面向对象编程(OOP)
  • [250516] OpenAI 升级 ChatGPT:GPT-4.1 及 Mini 版上线!
  • 使用pytest实现参数化后,控制台输出的日志是乱码
  • 数学复习笔记 12
  • RabbitMQ ④-持久化 || 死信队列 || 延迟队列 || 事务
  • AWS Elastic Beanstalk控制台部署Spring极简工程(LB版)
  • Mysql存储过程(附案例)
  • LabVIEW光谱检测系统