ES基础入门

1.核心架构概念

1.1 集群(Cluster)

  • 一个或多个节点的集合

  • 唯一标识:cluster.name(默认 "elasticsearch")

  • 所有节点共同持有完整数据,提供跨节点联合索引和搜索能力

1.2 节点(Node)

  • 集群中的单个服务器,存储数据并参与集群的索引和搜索

  • 节点类型

    • 主节点:负责集群管理(索引创建、删除、节点管理)

    • 数据节点:存储数据,执行数据相关操作(CRUD、搜索、聚合)

    • 协调节点:处理客户端请求,路由操作

    • Ingest 节点:数据预处理管道

1.3 分片(Shard)

  • 索引的子集,是数据存储的基本单元

  • 主分片:数据的原始分片,数量在索引创建时固定

  • 副本分片:主分片的拷贝,提供:

    • 高可用(故障转移)

    • 提高搜索性能(并行处理)

    • 数据冗余

2.基本概念

2.1 文档和字段

文档:elasticsearch是面向文档(Document)存储的,可以是数据库中的一条商品数据,一个订单信息。文档数据会被序列化为json格式后存储在elasticsearch中。

字段:而Json文档中往往包含很多的字段(Field),类似于mysql数据库中的列。

一个文档就像数据库里的一条数据,字段就像数据库里的列。

2.2 索引和映射

索引:索引(Index),就是相同类型的文档的集合【类似mysql中的表】

映射:索引库中就有映射(mapping),是索引中文档的字段约束信息,类似表的结构约束。

3. 基本操作

3.1 索引库操作

创建索引库和映射

复制代码
PUT /索引库名称
{
  "mappings": {
    "properties": {
      "字段名":{
        "type": "text",
        "analyzer": "ik_smart"
      },
      "字段名2":{
        "type": "keyword",
        "index": "false"
      },
      "字段名3":{
        "properties": {
          "子字段": {
            "type": "keyword"
          }
        }
      },
      // ...略
    }
  }
}

查询索引库

复制代码
GET /索引库名

修改索引库

复制代码
PUT /索引库名/_mapping
{
  "properties": {
    "新字段名":{
      "type": "integer"
    }
  }
}

删除索引库

复制代码
DELETE /索引库名

3.2 文档操作

新增文档

复制代码
POST /索引库名/_doc/文档id
{
    "字段1": "值1",
    "字段2": "值2",
    "字段3": {
        "子属性1": "值3",
        "子属性2": "值4"
    },
    // ...
}

查询文档

复制代码
GET /{索引库名称}/_doc/{id}
//批量查询:查询该索引库下的全部文档
GET /{索引库名称}/_search

删除文档

复制代码
DELETE /{索引库名}/_doc/id值

修改文档

复制代码
全量修改
PUT /{索引库名}/_doc/文档id
{
    "字段1": "值1",
    "字段2": "值2",
    // ... 略
}


增量修改
POST /{索引库名}/_update/文档id
{
    "doc": {
         "字段名": "新的值",
    }
}
相关推荐
hans汉斯2 分钟前
国产生成式人工智能解决物理问题能力研究——以“智谱AI”、“讯飞星火认知大模型”、“天工”、“360智脑”、“文心一言”为例
大数据·人工智能·算法·aigc·文心一言·汉斯出版社·天工
发哥来了4 分钟前
主流AI视频生成商用方案选型评测:关键能力与成本效益分析
大数据·人工智能·音视频
yuluo_YX6 分钟前
Alias for Linux/Mac
linux·elasticsearch·macos
TracyCoder1237 分钟前
ElasticSearch内存管理与操作系统(三):并发控制与线程模型
大数据·elasticsearch·搜索引擎
B站计算机毕业设计超人17 分钟前
计算机毕业设计hadoop+spark+hive在线教育可视化 课程推荐系统 大数据毕业设计(源码+LW文档+PPT+讲解)
大数据·人工智能·hive·hadoop·scrapy·spark·课程设计
B站计算机毕业设计超人18 分钟前
计算机毕业设计PySpark+Hive+Django小红书评论情感分析 小红书笔记可视化 小红书舆情分析预测系统 大数据毕业设计(源码+LW+PPT+讲解)
大数据·人工智能·hive·爬虫·python·spark·课程设计
Lethehong27 分钟前
探索高效工作流的秘密:GLM-4.7 与 Dify 平台深度集成实践
大数据·人工智能·算法
大鳥30 分钟前
第一章 - 数据仓库是什么
大数据·数据库·hive
20130924162736 分钟前
1986年《通过误差反向传播学习表示》:连接主义的觉醒与深度学习的基石
搜索引擎
_周游37 分钟前
Java8 API 文档搜索引擎_2.索引模块(实现细节)
java·搜索引擎·intellij-idea