搜索引擎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字段没有属性,后面用户写入不断扩展字段
后来后续解释搜索,聚合