[ES]二基础 |

一、索引库操作

1、mapping属性

mapping是对索引库中文档的约束,常见的mapping属性包括:

1)type:字段数据类型,常见的简单类型有:

①字符串:text(可分词的文本)、keyword(精确值,如品牌、国家、ip等不拆分的数据,这种拆分没意义)

②数值:long、integer、short、byte、double、float(es的底层是用java实现的,所以和java一致)

③boolean

④date

⑤object对象,对象可以任意嵌套,对象的子属性可以参与搜索

注:es没有数组,但是允许每个类型有多个值

2)index:是否创建倒排索引

默认为true(创建),为所有的字段都创建倒排索引。false不参与搜索,像商品的图片是个url这种就不需要参与搜索,并不是所有的字段都需要创建搜索。

3)analyzer:使用哪种分词器

4)properties:该字段的子字段,可以用于指定object的子字段

2、创建索引库

ES中通过Restful请求操作索引库、文档。请求内容用DSL语句来标识。创建索引库和mapping的DSL语法如下:

测试

ruby 复制代码
PUT /student
{
    "mappings":{
        "properties":{
            "info":{"type":"text","analyzer":"ik_smart"},--如果指定text类型必须指定分词器,否则分词有问题
            "email":{"type":"keyword","index":"false"},
            "name":{"properties":{"firstName":{"type":"keyword"}},...也可以有lastName}
        }
    }
}

二、文档操作

相关推荐
互联网江湖12 分钟前
快手营收利润双增,可灵AI会不会成为第二个Seedance?
大数据·人工智能
KANGBboy14 分钟前
ES 父子索引使用
大数据·elasticsearch·搜索引擎
pp起床33 分钟前
Part02:基本概念以及基本要素
大数据·人工智能·算法
Gauss松鼠会44 分钟前
【GaussDB】LLVM技术在GaussDB等数据库中的应用
大数据·数据库·架构·数据库开发·gaussdb·llvm
易天ETU2 小时前
100G BIDI 80km ZR4光模块:长距离传输的革新力量
大数据·光模块·易天光通信
七夜zippoe2 小时前
OpenClaw 接入 Discord:从零开始
大数据·人工智能·microsoft·discord·openclaw
北京软秦科技有限公司2 小时前
AI报告审核守护公共卫生安全:IACheck助力公共纺织品卫生检测报告合规与健康保障
大数据·人工智能·安全
商业数据派4 小时前
快手估值重构的“隐藏彩蛋”
大数据·人工智能·重构
新缸中之脑4 小时前
你的智能体技术栈中缺失的层
大数据·人工智能·数据挖掘
墨神谕5 小时前
ES为什么要进行分片
大数据·elasticsearch·搜索引擎