es操作索引库

本文介绍了Elasticsearch中的字段映射,包括不同类型的字段(如text,keyword,long等),如何配置分词器(analyzer)以及如何管理索引库,如创建、修改和删除索引。特别关注了mapping属性和索引设置,如是否创建倒排索引和添加新字段时的注意事项。

mapping属性

type 字符串数据类型,常见的简单类型有:

  • 字符串:text(分词字段),keyword(精确值,例如:品牌、国家、IP地址),text就是可以分词搜索的,keyword就是那个词是不能拆分搜索的,拆分就没意义
  • 数值:long、integer、short、byte、double、float
  • 布尔:boolean
  • 日期:date
  • 对象:object
    index是否创建倒排索引,意思就是是否参与倒排索引,参与搜索,默认为true
    analyzer:使用哪种分词,与text配合使用
    properties:该字段的子字段,就是跟那个object类型一起使用

mapper映射语法格式

在这里插入图片描述

# 创建索引库
PUT /addmp
{
  "mappings": {
    "properties": {
      "info":{
        "type": "text",
        "analyzer": "ik_max_word"
      },
      "email":{
        "type": "keyword",
        "index": false
      },
      "name":{
        "type": "object", 
        "properties": {
          "firstName":{
            "type":"keyword"
          },
          "lastName":{
            "type":"keyword"
          }
        }
      }
    }
  }
}

查询索引库
斜杠后面加上那你们索引库名
GET /addmq
修改索引库
实际上创建了索引库之后就不能,修复这个索引库的东西了,但是能添加字段到索引库中,并且添加的索引库字段不能与存在的字段名相同,要不然他会以为你修改字段然后报错

PUT /addmp/_mapping
{
  "properties":{
    "age":{
      "type":"long"
    }
  }
}

删除索引库
斜杠后面加上那你们索引库名
DELETE /addmq

### Elasticsearch 实现索引库同步的方法 #### 使用 Logstash 进行 ES 索引数据同步 对于希望在不同环境间同步Elasticsearch索引的情况,Logstash是一个强大的工具。它可以从一个或多个源读取数据并将其写入目标位置,在此场景下即是从一个Elasticsearch集群向另一个集群传输数据[^1]。 为了设置这种同步机制: - **安装与配置**:确保已按照官方指南下载适合版本的Logstash,并完成基本配置。 - **编写配置文件**:创建一个新的`.conf`文件来定义输入、过滤器以及输出插件。下面给出了一种简单的配置方案用于连接两个不同的Elasticsearch实例之间进行全量复制操作。 ```ruby input { elasticsearch { hosts => ["http://source-es-host:9200"] index => "source-index-name" query => '{ "sort": [ "_doc" ] }' } } output { elasticsearch { hosts => ["http://target-es-host:9200"] index => "%{[@metadata][_index]}" } } ``` 这段脚本会从指定主机上的特定索引中拉取消息流,并将它们推送到另一台服务器上相同名称的新建索引里去。 #### 利用 Canal 工具实现 MySQL 至 Elasticsearch 数据同步 当涉及到关系型数据库如MySQL的数据变更事件捕捉并向Elasticsearch推送更新时,Canal提供了一个解决方案。尽管这种方法存在一定的延迟问题——因为它是基于MySQL的日志解析来进行增量同步工作的——但它仍然是跨异构系统传递更改的有效途径之一[^4]。 具体来说,通过监听MySQL binlog的变化记录,Canal能够捕获新增加、修改过的记录条目并将之转发给下游消费者(在这里就是指Elasticsearch),从而保持两端数据的一致性。 #### 备份恢复策略下的索引迁移 另外一种间接形式的“同步”,即是利用备份/还原流程把现有索引迁移到新的环境中。这通常涉及先使用像Elasticdump这样的专用工具导出所需索引的内容到外部存储介质;之后再把这些静态快照重新导入目的端群集内重建相应的结构体[^2]。 这种方式适用于一次性转移大量历史存档资料的情形,而非持续性的实时镜像需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值