es的使用方法以及概念

Elasticsearch(简称为ES)是一个开源的搜索引擎,它构建在Lucene搜索引擎之上。它提供了一个分布式、多租户的全文搜索引擎,具有强大的实时分析能力。以下是关于Elasticsearch的一些基本概念和使用方法:

基本概念:

  1. 索引(Index):

    • Elasticsearch中的数据存储在索引中,每个索引包含一个或多个类型的文档。
    • 一个索引可以看作是一个数据库。
  2. 文档(Document):

    • 文档是索引中的基本数据单元,用JSON格式表示。
    • 一个文档对应数据库表中的一行记录。
  3. 类型(Type):

    • Elasticsearch 6.x及以上版本中,一个索引只能包含一个类型,类型已经逐渐被弃用。
  4. 节点(Node):

    • 节点是集群中的一个单独的服务器,用于存储数据和参与集群的索引和搜索能力。
  5. 集群(Cluster):

    • 一个集群由一个或多个节点组成,共同存储数据并提供联合搜索和索引功能。
  6. 分片和副本(Shard & Replica):

    • 数据在索引中被分成分片,每个分片是一个独立的Lucene索引。
    • 分片可以有零个或多个副本,用于提高数据的可用性和容错性。

使用方法:

  1. 安装 Elasticsearch:

  2. 启动 Elasticsearch:

    • 启动Elasticsearch节点,可以通过命令行或服务方式启动。
  3. 使用 RESTful API 进行操作:

    • Elasticsearch提供了RESTful API,可以使用curl或任何支持HTTP的客户端进行交互。
    • 默认端口为9200,例如:http://localhost:9200/
  4. 索引操作:

    • 创建索引:PUT /index_name
    • 删除索引:DELETE /index_name
  5. 文档操作:

    • 添加文档:POST /index_name/_doc
    • 获取文档:GET /index_name/_doc/document_id
    • 更新文档:POST /index_name/_doc/document_id/_update
    • 删除文档:DELETE /index_name/_doc/document_id
  6. 搜索:

    • 通过查询DSL进行搜索,例如:

      复制代码

      jsonCopy code

      POST /index_name/_search { "query": { "match": { "field_name": "search_term" } } }

  7. 聚合(Aggregations):

    • 使用聚合框架进行数据分析。
  8. Mappings:

    • 映射定义了索引中的文档如何存储和索引。

示例教程:

  1. Elasticsearch官方文档:提供详细的官方文档,涵盖了各个方面的信息和示例。

  2. Elasticsearch权威指南(中文版):深入介绍Elasticsearch的使用和原理,非常适合初学者。

  3. Elasticsearch基础教程:Tutorialspoint网站提供的基础教程,适合入门学习。

请注意,由于Elasticsearch的版本不断更新,建议查看相应版本的官方文档以获取最准确的信息。

相关推荐
cfm_29142 天前
Logstash 8.x 入门实战
安全·es
倒流时光三十年7 天前
第五阶段 40 · 深分页与性能(from/size、search_after、scroll、PIT)
es
倒流时光三十年9 天前
第三阶段 29 · suggester 自动补全(搜索框联想 / 拼写纠错)
es
倒流时光三十年9 天前
第三阶段 24 · filter / filters 桶聚合
es
倒流时光三十年10 天前
第二阶段 17 · multi_match 多字段匹配
es
倒流时光三十年10 天前
第三阶段 23 · 嵌套与子聚合 / top_hits
es
倒流时光三十年10 天前
第二阶段 19 · _source 字段裁剪
es
倒流时光三十年11 天前
第二阶段 15 · prefix / wildcard / fuzzy 模糊匹配
es
粗体鱼11 天前
RAG/Agent 记忆混合检索多路召回:RRF 算法与Chunk RRF、Document RRF如何决策TopK
postgresql·milvus·es·rag·rff·mermory
huisheng_qaq2 个月前
【项目篇-01】Vmware虚拟机和环境安装配置
redis·mysql·canal·rocketmq·es·vaware虚拟机