Elasticsearch7.12全文搜索-索引的建立

扫码关注持续好文

索引简介

    索引是具有相同结构的文档集合,我们对elasticsearch的大部分操作都是 基于索引来完成,在Elasticsearch中,文档归属于一种 类型(type) ,在 5.X 版本中,一个 index 下可以创建多个 type;在 6.X 版本中,一个 index 下只能存在一个 type;在 7.X 版本中,直接去除了 type 的概念,就是说 index 不再会有 type。而类型存在于索引(index)中。

与关系型数据库类比

Elasticsearch

Oracle

Index

Database

Type

Table

Document

Row

Field

Column

Mapping

Schema (表类型)

  • Relational DB  ⇒ Databases ⇒ Tables ⇒ Rows   ⇒ Columns关系型数据库     

数据库表行列  Elasticsearch ⇒Indices ⇒Types ⇒ Documents ⇒ FieldsEls 索引类型文档域(字段)

  • 1.es不支持事务。

2.也没有oracle的用户的概念,es有安全控制是通过xpack实现,但是是针对访问全局的安全控制。

3.另外也不支持类似数据库中通过外键的复杂的多表关联操作。

索引管理

创建索引

PUT /user_info

图片

可以看出默认是一个分片一个副本,副本未分配,一个索引的分片数一经创建后不能在修改,虽然新版提供了修改功能,但是我们可以看到它修改后也是新建立的索引,原来的索引并没有变化。

  • 查看某个索引的信息

     创建索引与创建关系型数据库是一样的,注意elasticsearch索引名不能出现大写字母,如有多个字母一下划线区分。如创建用户信息 user_info

 

查看索引

    使用GET方法加上_setting参数可以查看一个索引的所有配置信息,例如查看user_info索引的设置信息,命令如下:

  • 查看索引

GET user_info/_settings

图片

查看配置可以看到确实是number_of_shards一个number_of_replicas一个

  • 修改索引

   修改索引的副本,es支持已经存在的索引副本修改,我们把user_info修改2个副本

1、dsl修改

PUT user_info/_settings

{

 "number_of_replicas":2

}

 

查看索引信息

图片

索引别名

    索引别名就是给一个索引或者多个索引起的另一个名字,索引别名是一个非常有用的功能,尤其在数据要重新导入时可以很优雅的切换数据为名为user_info的索引,创建别名user_info_alicas。

  • 创建别名

PUT  /_aliases

{

      "actions":[{"add":{"index":"user_info","alias":"user_info_alicas"}}]

}

可以看到已经给user_info建立了索引

图片

  • 删除别名

移除别名:

PUT   /_aliases

{

"actions":[{"remove":{"index":"user_info","alias":"user_info_alicas"}}]

}

索引模板

   针对一批大量数据存储的时候需要使用多个索引库,如果手工指定每个索引库的配置信息(settings和mappings)的话就很麻烦了。所以,这个时候,就存在创建索引模板的必要了。

  • 创建模板

PUT _template/template_1

{

  "index_patterns": ["te*", "bar*"],

  "settings": {

    "number_of_shards": 1

  },

  "mappings": {

      "_source": {

        "enabled": false

      },

      "properties": {

        "host_name": {

          "type": "keyword"

        },

        "created_at": {

          "type": "date",

          "format": "yyyy-MM-dd"

        }

      }

  }

}

  • 删除模板

DELETE /_template/template_1

elasticsearch-7.12.0-py2.py3-none-any.whl 是 Elasticsearch 的 Python 客户端库的一个安装文件。Elasticsearch 是一个开源的实时分布式搜索和分析引擎,用于处理大规模数据集。它提供了一个简单可扩展的 RESTful API 接口,允许用户进行高效的数据搜索、分析以及存储。 这个安装文件的命名规则是根据 Python 的支持版本以及可运行平台来命名的。-py2.py3 表示可以同时兼容 Python 2 和 Python 3 版本的代码。-none-any 表示它是一个纯 Python 代码的库,不依赖于特定的操作系统或平台。 通过安装 elasticsearch-7.12.0-py2.py3-none-any.whl,您可以轻松地在您的 Python 环境中使用 Elasticsearch。这个库提供了许多功能,包括连接到 Elasticsearch 实例、执行索引搜索和分析操作,以及管理和维护 Elasticsearch 的集群和节点。您可以使用这个库来构建各种应用,如全文搜索引擎、实时日志分析等。 要安装 elasticsearch-7.12.0-py2.py3-none-any.whl,您可以使用 pip 工具,在命令行中运行以下命令: ``` pip install elasticsearch-7.12.0-py2.py3-none-any.whl ``` 安装成功后,您就可以在您的 Python 代码中导入 elasticsearch 模块,并开始使用 Elasticsearch 的功能了。 总结:elasticsearch-7.12.0-py2.py3-none-any.whl 是 Elasticsearch 的 Python 客户端库的安装文件,用于连接、操作和管理 Elasticsearch 实例。通过安装这个库,您可以在您的 Python 项目中轻松使用 Elasticsearch 的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值