Elasticsearch7.9.3 02.入门-索引

目录

1.数据格式

2.创建索引

3.查看单个索引

4.查看所有索引

5.删除索引

6.关闭索引

7.打开索引

8.创建映射

9.修改副本数


1.数据格式

    Elasticsearch 是面向文档型数据库,一条数据在这里就是一个文档。为了方便大家理解,

    我们将 Elasticsearch 里存储文档数据和关系型数据库 MySQL 存储数据的概念进行一个类比

    

    ES里的Index可以看做一个库而Types 相当于表,Documents 则相当于表的行,这里 Types 的概念已经被逐渐弱化,

    Elasticsearch 6.X 中,一个 index 下已经只能包含一个type,Elasticsearch 7.X 中, Type 的概念已经被删除了

2.创建索引

    对比关系型数据库,创建索引就等同于创建数据库,

    在Postman中,向ES 服务器发 PUT 请求 :http://127.0.0.1:9200/shopping

    

    请求后,服务器返回响应

{

    "acknowledged": true,              【响应结果】# true 操作成功  

    "shards_acknowledged": true, 【分片结果】 # 分片操作成功   

    "index": "product"                     【索引名称】

}

# 注意:创建索引库的分片数默认1片,在7.0.0之前的Elasticsearch版本中,默认 5 片

# 如果重复添加索引,会返回错误信息

3.查看单个索引

    在Postman中向ES服务器发GET请求http://localhost:9200/shopping,

    

    请求后,服务器响应结果如下

{
    "product" 索引名: {
        "aliases" 别名: {},
        "mappings" 映射: {},
        "settings" 设置: {
            "index" 索引: {
                "creation_date" 创建日期: "1622097375730",
                "number_of_shards" 主分片数量: "1",
                "number_of_replicas" 副分片数量: "1",
                "uuid" 唯一标识: "26oaCnIcTzK2wvd29tADjg",
                "version" 版本: {
                    "created": "7090399"
                },
                "provided_name" 名称: "product"
            }
        }
    }
}

4.查看所有索引

    在Postman中向ES服务器发GET http://127.0.0.1:9200/_cat/indices?v

    

    这里请求路径中的cat表示查看的意思,indices表示索引所以整体含义就是查看当前ES服务器中的所有索引, 服务器响应结果如下

    

    

表头说明
health

当前服务器健康状态:

green(集群完整)

yellow(单点正常、集群不完整)

red(单点不正常)
status索引打开、关闭状态
index索引名
uuid索引统一编号
pri主分片数量
rep副本数量
docs.count可用文档数量
docs.deleted文档删除状态(逻辑删除)
store.size主分片和副分片整体占空间大小
pri.store.size主分片占空间大小

5.删除索引

    1) 在Postman中向ES服务器发DELETE请求http://127.0.0.1:9200/shopping

    

    

    重新访问索引时,服务器返回响应:索引不存在

    

    2) 除了指定名称删除外,我们还可以通过索引别名或者通配符来删除, 注意:要谨慎使用 _all 或 * 去删除全部索引

    

6.关闭索引

  在Postman中向ES服务器发POST请求http://127.0.0.1:9200/shopping/_close

7.打开索引

  在Postman中向ES服务器发POST请求http://127.0.0.1:9200/shopping/_open

8.创建映射

    有了索引库,等于有了数据库中的 database。接下来就需要建索引库(index)中的映射了,类似于数据库(database)中的表结构(table)。创建数据库表需要设置字段名称,类型,长度,约束等;索引库也一样,需要知道这个类型,下有哪些字段,每个字段有哪些约束信息,这就叫做映射(mapping)

    向ES服务器发PUT请求http://localhost:9200/shopping/_mapping

{
    "properties": {
        "ProductName":{
            "type": "text",
            "index": true
        }, 
        "Spec":{
            "type": "text",
            "index": false
        },
        "Price":{
            "type":"double",
            "index": false
        }
    }
}
类型数据说明
type

类型,Elasticsearch 中支持的数据类型非常丰富

1.String 类型, text:可分词 keyword:不可分词,数据会作为完整字段进行匹配

2.Numerical:数值类型,分两类

   基本数据类型:long、integer、short、byte、double、float、half_float

   浮点数的高精度类型:scaled_float

3.Date日期类型

4.Array数组类型

5.Object对象

index是否索引,默认为 true,也就是说你不进行任何配置,所有字段都会被索引
store

是否将数据进行独立存储,默认为 false

原始的文本会存储在_source 里面,默认情况下其他提取出来的字段都不是独立存储 的,是从_source 里面提取出来的。当然你也可以独立的存储某个字段,只要设置 "store": true 即可,获取独立存储的字段要比从_source 中解析快得多,但是也会占用 更多的空间,所以要根据实际业务需求来设置

fielddata

文本(text)字段使用查询时内存中的数据结构,true才可以排序

analyzer分词器这里的ik_max_word即使用ik 分词器

9.修改副本数

    PUT http://localhost:9200/product/_settings

{
	"number_of_replicas": "0"
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wang_peng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值