es索引与数据结构 ,以及其他知识使用

本文深入探讨Elasticsearch的索引模板设置,包括如何创建名为'my_template'的模板,该模板针对'my-*'开头的索引,设定10个分片和0个副本。同时,我们也会讨论Elasticsearch的数据结构,帮助理解其存储和检索机制。
摘要由CSDN通过智能技术生成
1:es   索引与数据结构映射
----es索引说明: 
索引结构: index/type/id   
对应的关系型数据库结构  index = database , type = table , id = id 


----默认
--插入新的索引
PUT test-index/default/1
{
  "test":"one",
  "other":1
}
--查询索引与数据结构
GET test-index/_mapping?pretty
-结果
{
  "test-index": {
    "mappings": {
      "default": {
        "properties": {
          "other": {
            "type": "long"
          },
          "test": {
            "type": "text",
            "fields": {
              "keyword": {
                "type": "keyword",
                "ignore_above": 256
              }
            }
          }
        }
      }
    }
  }
}


--解释
es会对字段类型进行分析和模式匹配,test的字段会映射为string,other字段映射为long


mapping - 映射和定义数据结构 
mapping由一个或多个analyzer(分词器)组成, analyzer又由一个或多个filter组成的。当ES索引文档的时候,字段中的内容传递给analyzer并通过子集的filters进行数据转换(分词,索引等操作)。


--自定义mapping
PUT newindex
{
  "mappings": {
      "default": {
        "properties": {
          "name": {
            "type": "text"
          },
          "age": {
            "type": "long"
          }
        }
      }
    }
}
--说明
索引newIndex - 指定 name为text ,age指定long


--查看
GET newIndex/_mapping?pretty


--测试
PUT newindex/default/1
{
  "name":"xxx",
  "age":"xxx"
}
--结果
mapper_parsing_exception
failed to parse [age]


--测试2
PUT newindex/default/1
{
  "name":"xxx",
  "age":11
}
--结果
"created": true




2:es  对binary数据类型的支持


--原理
该binary类型接受一个二进制值作为 Base64编码的字符串。该字段默认情况下不存储,不可搜索

--使用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值