当前位置: 首页 > news >正文

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:

    • 从Elasticsearch官网下载并安装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的版本不断更新,建议查看相应版本的官方文档以获取最准确的信息。

http://www.lryc.cn/news/234292.html

相关文章:

  • WPF xaml Command用法介绍
  • 微信小程序动态生成表单来啦!你再也不需要手写表单了!
  • 顺序表(数据结构与算法)
  • 【大连民族大学C语言CG题库练习题】——判断一个矩阵是另一个矩阵的子矩阵
  • C#WPF控制模板实例
  • MATLAB Simulink和S7-1200PLC MOBUSTCP通信
  • 五、函数的介绍
  • 【广州华锐互动VRAR】VR元宇宙技术在气象卫星知识科普中的应用
  • F. Alex‘s whims Codeforces Round 909 (Div. 3) 1899F
  • 面试题-5
  • 车载以太网-ARP
  • Kafka学习笔记(三)
  • JVM-HotSpot虚拟机对象探秘
  • 大模型技术的发展:开源和闭源,究竟谁强谁弱又该何去何从?
  • Python学习笔记--自定义元类
  • 软件测试 —— 常见的自动化测试架构!
  • Python 的 @lru_cache() 装饰器
  • Swift制作打包framework
  • 无线WiFi安全渗透与攻防(N.2)WPA渗透-使用airolib-ng创建彩虹表加速
  • 整形数据和浮点型数据在内存中的存储差别
  • 【Python基础篇】运算符
  • 开启数据库审计 db,extended级别或os级别)并将审计文件存放到/opt/oracle/audit/下
  • 02.webpack中多文件打包
  • IEEE Standard for SystemVerilog Chapter 22. Compiler directives
  • 机器学习中的独立和同分布 (IID):假设和影响
  • PTP软硬件时间戳
  • 使用ADS进行serdes仿真时,Tx_Diff中EQ的设置对发送端波形的影响。
  • 数据库迁移(DBeaver版本)
  • 【c++STL常见排序算法sort,merge,random_shuffle,reverse】
  • STM32/N32G455国民科技芯片驱动DS1302时钟---笔记