ElasticSearch 能说说ElasticSearch 写索引的逻辑吗?

ElasticSearch是一个基于Lucene的开源、分布式、RESTful搜索引擎。它提供了一种快速、灵活的方式来存储、搜索和分析大量数据。在写索引的逻辑方面,ElasticSearch主要遵循以下步骤:

  1. 创建索引:首先,您需要创建一个索引来存储您的数据。您可以使用ElasticSearch提供的API或客户端库来创建索引。在创建索引时,您需要指定索引名称、类型、映射等信息。
  2. 准备数据:一旦索引创建完毕,您需要准备要写入索引的数据。这可能涉及到将数据从其他系统导入到Elasticsearch,或者直接在Elasticsearch中创建文档。
  3. 索引文档:使用Elasticsearch提供的API或客户端库,将准备好的数据写入索引。您可以将数据作为JSON文档进行编码,并将其作为请求体发送到Elasticsearch。Elasticsearch会自动将文档存储在指定的索引中。
  4. 映射和索引优化:在写入文档后,您可能需要调整映射或优化索引以提高搜索性能。您可以使用Elasticsearch提供的API或客户端库来执行这些操作。
  5. 搜索和分析:一旦文档被写入索引,您就可以使用Elasticsearch提供的搜索和分析功能来查找和查询数据。您可以使用查询语言(如DSL或REST API)来构建搜索查询,并使用排序、过滤和其他功能来对结果进行排序和筛选。

总的来说,ElasticSearch写索引的逻辑包括创建索引、准备数据、将数据写入索引、优化索引以及使用搜索和分析功能来查找和查询数据。ElasticSearch还提供了许多其他功能,如聚合、脚本、动态模板等,可以根据您的需求进行配置和调整。

ElasticSearch 是集群的 = 主分片 + 副本分片。
写索引只能写主分片,然后主分片同步到副本分片上。但主分片不是固定的,可能网络原因,之前还是 Node1 是主分片,后来就变成了 Node2 经过选举成了主分片了。
客户端如何知道哪个是主分片呢? 看下面过程。
22. 客户端向某个节点 NodeX 发送写请求
23. NodeX 通过文档信息,请求会转发到主分片的节点上
24. 主分片处理完,通知到副本分片同步数据,向 Nodex 发送成功信息。
25. Nodex 将处理结果返回给客户端。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值