same::

ElasticSearch

ElasticSearch-(搜索-查找-寻找-搜寻-搜集-(电脑-PC-桌面端-计算机)过滤-筛选-挑选-选取)ES-(后端-)ES [father::元笔记汇总]

梗概

  • 一个强大的搜索与分析引擎     - 更快、更全的进行全文检索         - 建立更先进的索引
    • 强大的分析功能

适用范围

核心概念

ES(Elasticsearch)核心概念主要包括以下几个方面:

  1. [child::es_索引] (Index)
  2. [child::es_文档] (Document)
  3. [child::es_映射] (Mapping)
  4. [child::es_分片] (Shard)
  5. [child::es_节点] (Node)
  6. [child::es_集群] (Cluster) 这些概念构成了Elasticsearch的基本架构,使其能够进行高效的全文搜索、分析和处理大规模数据。

示例

假设我们在Elasticsearch中创建一个包含博客文章的索引,并存储一些文章文档。以下是一个具体的例子。

1. 创建索引

我们可以通过以下命令在Elasticsearch中创建一个名为blog的索引:

PUT /blog
{
  "settings": {
    "number_of_shards": 1,
    "number_of_replicas": 1
  },
  "mappings": {
    "properties": {
      "title": {
        "type": "text"
      },
      "author": {
        "type": "keyword"
      },
      "content": {
        "type": "text"
      },
      "publish_date": {
        "type": "date"
      },
      "tags": {
        "type": "keyword"
      }
    }
  }
}

2. 插入文档

blog索引中添加一篇文章:

POST /blog/_doc/1
{
  "title": "Understanding Elasticsearch Core Concepts",
  "author": "John Doe",
  "content": "Elasticsearch is a distributed, RESTful search and analytics engine capable of solving a growing number of use cases...",
  "publish_date": "2023-08-23",
  "tags": ["Elasticsearch", "Search", "Tutorial"]
}

3. 查询文档

我们可以通过简单的搜索请求来查询文章:

GET /blog/_search
{
  "query": {
    "match": {
      "content": "Elasticsearch"
    }
  }
}

该查询会返回所有在content字段中包含“Elasticsearch”关键字的文章。

4. 更新文档

更新文档的内容(例如添加一个新标签):

POST /blog/_update/1
{
  "doc": {
    "tags": ["Elasticsearch", "Search", "Tutorial", "Guide"]
  }
}

5. 删除文档

如果不再需要某篇文章,可以将其删除:

DELETE /blog/_doc/1

6. 查看索引状态

可以查看索引的状态和健康状况:

GET /blog/_stats

通过这些基本操作,我们能够创建、管理和查询Elasticsearch中的数据。这个示例展示了如何使用Elasticsearch进行文档的创建、更新、搜索和删除。

使用指南

  • 与数据库插入同步更新es索引

father:: wiki.js

same:: es

指向原始笔记的链接

child:: es_索引 father:: wiki.js