首页 > 其他分享 >5.ELASTICSEARCH~高级(一)

5.ELASTICSEARCH~高级(一)

时间:2023-07-21 16:34:08浏览次数:43  
标签:index 映射 索引 高级 field ELASTICSEARCH type bank

五、Mapping
1、ElasticSearch7去掉type的概念
关系数据库中两个数据表示是独立的,即使他们里面有相同名称的列也不影响使用,但ES中不是这样的。elasticsearch是基于Lucene开发的搜索引擎,而Es中不同type下名称相同的field最终在Lucene中的处理方式是一样的两个不同type下的user-name,在es同一个索引下其实被认为是同一个field,你必须在不同的type中定义相同的field映射。否则,不同type中的相同字段名称就会在处理时出现冲突的情况,导致Lucene处理效率下降

2、查看某个索引的映射

GET bank/_mapping

【注意】text属性的field,都会有一个keyword子属性

 3、创建映射  
PUT /my_index
{
  "mappings":{
    "properties": {
      "age":{"type":"integer"},
      "name":{"type": "text"},
      "email":{"type": "keyword"}
    }
  }
}

4、添加新的映射字段

PUT /my_index/_mapping
{
  "properties":{
    "employ_id":{
      "type":"keyword",
      "index":false   //控制该字段能不能被检索
    }
  }
}

5、修改映射&

不能修改映射,因为这会导致已经存入的数据所拥有的索引规则不能用,只能新建一个索引和映射关系,并将旧的数据迁移过去

6、数据迁移

数据迁移:

POST _reindex
{
    "source":{
        "index":"bank"
    },
    "dest":{
        "index":"newbank"
    }
}

如果是老版本的,包含type的

POST _reindex
{
    "source":{
        "index":"bank",
        "type":"account"
    },
    "dest":{
        "index":"newbank"
    }
}

 

标签:index,映射,索引,高级,field,ELASTICSEARCH,type,bank
From: https://www.cnblogs.com/xcwang9/p/17571786.html

相关文章

  • 9探索Java内置函数的隐藏功能和高级用法
     Java作为一种广泛使用的编程语言,拥有丰富的内置函数库,这些函数可以大大简化开发过程,并提供了许多强大的功能。然而,除了常见的用法之外,Java内置函数还具有一些隐藏的功能和高级用法,这些功能和用法可能被开发者所忽视,但却能提高代码的效率和可读性。本文将围绕这一主题,探索Java内......
  • elasticsearch 生命周期策略配置以及模版索引设置
    elastcisearch生命周期策略PUT_ilm/policy/deeplang-logger-policy{"policy":{"phases":{"warm":{"min_age":"7d","actions":{"allocate&......
  • 行行AI人才直播第11期:墨尔本大学数据科学高级讲师-宫明明《机器学习:从统计到因果,人工
    行行AI人才是博客园和顺顺智慧共同运营的AI行业人才全生命周期服务平台。马克斯·普朗克智能系统中心主任曾在国际数学家大会进行了题为FromStatisticaltoCausalLearning的报告,建立和理解人工智能系统的基本研究思路:从通过统计学习的符号方法到依靠因果关系概念的干预模......
  • Google 最高级别工程师的教育梦
    阅读文本大概需要2.8分钟。之前有读者问我,说我是不是Udacity的人,怎么老在底部放Udacity的Banner,这让我无言以对,我当然不是Udacity的人,Udacity是我的赞助商,正是这些赞助商爸爸们,才能让我有动力继续分享下去,所以我很感激他们。可能有人并不了解Udacity,其实Udacity的创立......
  • Elasticsearch查询
    Elasticsearch查询什么是Elasticsearch?Elasticsearchisareal-time,distributedstorage,search,andanalyticsengineElasticsearch是一个实时的分布式存储、搜索、分析的引擎。介绍那儿有几个关键字:实时分布式搜索分析于是我们就得知道Elasticsearch......
  • elasticsearch 聚合函数求和、求平均值
    按dlmc字段分组,对tbmj字段求和、求平均值{"aggs":{"group_by_dlmc_sum":{"terms":{"size":1000,"field":"dlmc.keyword"},......
  • elasticsearch 设置自定义分词
    要在Elasticsearch中使用MySQL数据库中定义的分词,你需要执行以下步骤:将MySQL数据库中的分词数据导入到Elasticsearch中:从MySQL数据库中提取分词数据,包括分词规则、停用词等。将这些数据转换为适合Elasticsearch使用的格式,例如JSON。使用Elasticsearch的API(如BulkAPI)将分词......
  • MySQL高级锁之意向锁
    2.1意向锁2.1.1意向锁的概念意向锁的存在是为了协调行锁和表锁的关系,用于优化InnoDB加锁的策略。意向锁的主要功能就是:避免为了判断表是否存在行锁而去全表扫描。意向锁是由InnoDB在操作数据之前自动加的,不需要用户干预;意向共享锁(IS锁):事务在请求S锁前,要先获得IS锁意向排他锁(IX锁......
  • MySQL高级锁之临键锁
    2.4临键锁2.4.1临键锁的区间测试临键锁(Next-KeyLock):临键锁是查询时InnoDB根据查询的条件而锁定的一个范围,这个范围中包含有间隙锁和记录数;临键锁=间隙锁+记录锁。其设计的目的是为了解决PhantomProblem(幻读);主要是阻塞insert,但由于临键锁中包含有记录锁,因此临键锁所锁定的范......
  • MySQL高级锁之自增锁
    2.5自增锁MySQL的自增锁是指在使用自增主键(AutoIncrement)时,为了保证==唯一性和正确性==,系统会对自增字段进行加锁。这样可以确保同时插入多条记录时,每条记录都能够获得唯一的自增值。创建测试表:droptableifexistst3;CREATETABLE`t3`(`id`int(11)NOTNULLAUTO_INC......