首页 > 其他分享 >38_初识搜索引擎_用一个例子告诉你mapping到底是什么

38_初识搜索引擎_用一个例子告诉你mapping到底是什么

时间:2024-10-01 20:13:02浏览次数:1  
标签:website 38 01 mapping 初识 date article type

插入几条数据,让es自动为我们建立一个索引

PUT /website/article/1
{
"post_date": "2017-01-01",
"title": "my first article",
"content": "this is my first article in this website",
"author_id": 11400
}

PUT /website/article/2
{
"post_date": "2017-01-02",
"title": "my second article",
"content": "this is my second article in this website",
"author_id": 11400
}

PUT /website/article/3
{
"post_date": "2017-01-03",
"title": "my third article",
"content": "this is my third article in this website",
"author_id": 11400
}

尝试各种搜索

GET /website/article/_search?q=2017 3条结果
GET /website/article/_search?q=2017-01-01 3条结果
GET /website/article/_search?q=post_date:2017-01-01 1条结果
GET /website/article/_search?q=post_date:2017 1条结果

查看es自动建立的mapping,带出什么是mapping的知识点
自动或手动为index中的type建立的一种数据结构和相关配置,简称为mapping
dynamic mapping,自动为我们建立index,创建type,以及type对应的mapping,mapping中包含了每个field对应的数据类型,以及如何分词等设置
我们当然,后面会讲解,也可以手动在创建数据之前,先创建index和type,以及type对应的mapping

GET /website/_mapping/article

{
"website": {
"mappings": {
"article": {
"properties": {
"author_id": {
"type": "long"
},
"content": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"post_date": {
"type": "date"
},
"title": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}
}
}
}
}
}

搜索结果为什么不一致,因为es自动建立mapping的时候,设置了不同的field不同的data type。不同的data type的分词、搜索等行为是不一样的。所以出现了_all field和post_date field的搜索表现完全不一样。

标签:website,38,01,mapping,初识,date,article,type
From: https://www.cnblogs.com/siben/p/18443184

相关文章

  • 37_初识搜索引擎_快速掌握query string search语法以及_all metadata原理揭秘
    1、querystring基础语法GET/test_index/test_type/_search?q=test_field:testGET/test_index/test_type/_search?q=+test_field:testGET/test_index/test_type/_search?q=-test_field:test一个是掌握q=field:searchcontent的语法,还有一个是掌握+和-的含义2、_allmetada......
  • 34_初识搜索引擎_search结果深入解析(search timeout机制揭秘)
    课程大纲1、我们如果发出一个搜索请求的话,会拿到一堆搜索结果,本节课,我们来讲解一下,这个搜索结果里的各种数据,都代表了什么含义2、我们来讲解一下,搜索的timeout机制,底层的原理,画图讲解GET/_search{"took":6,"timed_out":false,"_shards":{"total":6,"successful":6,......
  • 35_初识搜索引擎_multi-index&multi-type搜索模式解析以及搜索原理初步图解
    课程大纲1、multi-index和multi-type搜索模式告诉你如何一次性搜索多个index和多个type下的数据/_search:所有索引,所有type下的所有数据都搜索出来/index1/_search:指定一个index,搜索其下所有type的数据/index1,index2/_search:同时搜索两个index下的数据/1,2/_search:按照通配......
  • 初识C语言
    C语言人机交互的一门语言 一刚发明计算机时人们普遍用着二进制语言也就是0和1的组合,那时的人们要编程,要翻书对应其数字0和1代表的意义,后来人们将一些常见的0和1写成助记符于是就形成了汇编语言,然而汇编语言仍然不够省事,于是人们苦思冥想,想出了编译器这一转折性的app,人们......
  • 【独家首发】鲸鱼算法WOA优化Transformer-LSTM负荷数据回归预测【含Matlab源码 6386期
    ......
  • 【C++篇】启航——初识C++(下篇)
     接上篇【C++篇】启航——初识C++(上篇)目录一、引用1.引用的概念2.引用的基本语法3.引用的特点 3.1别名3.2不占用额外内存3.3必须初始化3.4 不能为NULL4.引用的使用 4.1 函数参数传递4.2 返回值4.3 常量引用5.引用和指针的关系 (1).基本定义(2).初......
  • 3805 谁拿了最多的奖学金 结构体排序
    解决思路 定义结构体:定义一个结构体 Student 来存储每个学生的信息和奖金总数。 读取输入:读取每个学生的信息,并计算每个学生的奖金总数。 3. 排序:根据奖金总数对学生进行排序,如果奖金总数相同,则按输入顺序排序。 输出结果:输出获得最多奖金的学生的姓名、奖金......
  • [数据集][图像分类]骨关节炎严重程度分类数据集14038张4分类
    数据集类型:图像分类用,不可用于目标检测无标注文件数据集格式:仅仅包含jpg图片,每个类别文件夹下面存放着对应图片图片数量(jpg文件个数):14038分类类别数:4类别名称:[“grade0”,“grade2”,“grade3”,“grade4”]每个类别图片数:类别名称图片数grade08080grade23691grade31843gra......
  • JavaScript初学必备 之 初识ajax
    今日推荐歌曲:遇见一、ajax介绍1、学习前提需要有以下基础:HTML和CSS基础JavaScript基础2、什么是ajax?(1)、全称ajax===asyncJavascriptandxml(ajax===异步JavaScript和XML),ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。async:异步x......
  • css伪类元素初识
    昨天想写一个登陆网站,但是怎么都实现不了图片里+表单,搜索发现需要css的伪类元素帮助,特意学习常见的伪类元素在CSS中,:before和:after是伪元素,它们可以用于在指定元素的内容之前或之后插入内容。这两个伪元素非常强大,常用于装饰性元素或者清除浮动等。关于:before和:after的一......