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的版本不断更新,建议查看相应版本的官方文档以获取最准确的信息。

相关推荐
hengzhepa2 小时前
ElasticSearch备考 -- Search across cluster
学习·elasticsearch·搜索引擎·全文检索·es
hengzhepa2 天前
ElasticSearch备考 -- 多字段查询
学习·elasticsearch·搜索引擎·全文检索·es
hengzhepa2 天前
ElasticSearch 备考 -- 备份和恢复
大数据·学习·elasticsearch·搜索引擎·es
珍珠是蚌的眼泪4 天前
Elasticsearch基础_2.数据类型
elasticsearch·es·date·text·keyword·动态映射
冬日9微醺13 天前
白酒冷知识 普通人判断酒好坏这三招就够了
安全·阿里云·es
丁总学Java15 天前
elasticsearch同步mysql方案
es
请叫我江同学呀23 天前
关于elasticsearch的terms查询超过最大terms数
数据库·elasticsearch·搜索引擎·es·非关系型数据库
冬日9微醺1 个月前
白露微凉,白酒暖肠
安全·阿里云·es
灰色孤星A1 个月前
ElasticSearch学习笔记(三)RestClient操作文档、DSL查询文档、搜索结果排序
笔记·学习·elasticsearch·微服务·kibana·es·索引
丁总学Java1 个月前
使用kafka完成数据的实时同步,同步到es中。(使用kafka实现自动上下架 upper、lower)
分布式·kafka·es