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

搜索引擎onesearch3实现解释和升级到Elasticsearch v8系列(二)-索引

场景

首先介绍测试的场景,本系列schema定义

pdm文档索引,包括nested,作为文档扩展属性字段,_content字段是组件保留字段,支持文本内容,字段属性还有其他属性,如boost,getter,search策略(match, match phrase,query_string等),索引分词器,查询分词器,是否高亮等

索引

索引服务负责索引的操作,包括构建,put mapping,alias,更新,删除等

构建索引

CreateIndexRequest  构建索引请求,支持设置索引的分片和复制;分词器,通常索引级分词器可满足要求,不需要每个字段设置,字段设置在put mapping,本组就也可以支持字段的分词器设置,在schema设置相关属性

put Mapping

put mapping定义索引字段属性,类似数据库的表,虽然elasticsearch支持schema free,通常严格定义更符合应用要求,保证类型,格式符合要求

构建PutMappingRequest

解释索引schema,构建Property,支持nested类型

根据字段类型定义,构建相应的Property

上图是Keyword类型Property的构建,设置字段是否存储(store),是否要索引分析(index)

上图是nested字段,构建NestedProperty,其引用Property

alias

索引别名对于管理很有用,特别是索引的迁移

alias可以多个索引共用,即,上面的index参数应该是数组,但该api没有使用,管理员有管理台,暂时不改动

效果

本节展示索引api效果

Head 插件展示构建的索引,alias可以设置多个,设置复制2,只有一个节点

下面看一下索引信息

分片,复制,默认分词器设置为ik_smart

上图mapping,其中包括nested,注意,这图是写入文档后,未写入nested字段没有属性,后面用户写入不断扩展字段

后来后续解释搜索,聚合

http://www.lryc.cn/news/447883.html

相关文章:

  • 离散化算法
  • 基于ollama的本地RAG实践
  • 安卓开发板_MTK开发板_联发科开发评估套件Demo板接口介绍
  • 代码随想录冲冲冲 Day58 图论Part9
  • UnityHub下载任意版本的Unity包
  • 网站服务器怎么计算同时在线人数?
  • [spring]MyBatis介绍 及 用MyBatis注解操作简单数据库
  • Ks渲染做汽车动画吗?汽车本地渲染与云渲染成本分析
  • AI智能时代:哪款编程工具让你的工作效率翻倍?
  • 这五本大模型书籍,让你从大模型零基础到精通,非常详细收藏我这一篇就够了
  • 面试经典150题 堆
  • day-62 每种字符至少取 K 个
  • 免费好用!AI声音克隆神器,超级简单,10秒就能克隆任何声音!(附保姆级教程)
  • LeetCode146 LRU缓存
  • 【Java】包装类【主线学习笔记】
  • 华为HarmonyOS地图服务 11 - 如何在地图上增加点注释?
  • uniapp js怎么根据map需要显示的点位,计算自适应的缩放scale
  • Mysql 架构
  • C语言 | Leetcode C语言题解之第429题N叉树的层序遍历
  • Python中列表常用方法
  • 『功能项目』下载Mongodb【81】
  • 图像特征提取-SIFT
  • ElasticSearch分页查询性能及封装实现
  • Python精选200Tips:176-180
  • 【Kotlin 集合概述】可变参数vararg、中缀函数infix以及解构声明(二十)
  • unity安装报错问题记录
  • 秋招|面试|群面|求职
  • 【Kubernetes】日志平台EFK+Logstash+Kafka【理论】
  • 基于SpringBoot+Vue+MySQL的教学资料管理系统
  • 动态规划day45:编辑距离|115. 不同的子序列、583. 两个字符串的删除操作、72. 编辑距离(动规终极好题)