![](https://img-blog.csdnimg.cn/5c2ca011ae7047bcab99fa666b205f0f.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
ElasticSearch
文章平均质量分 96
从项目中接触到ES开始,就开始从简单到复杂应用,从简单查询到复杂统计,每一篇示例都可以一现用,项目中可直接使用。
YPhen
公众号同步【YPhen聊码】同步更新!
无需关注,无需知识付费,纯技术分享;博客提升自我,帮助他人,若有益,吾之幸,因吾价值尚存 !
展开
-
ElasticSearch 的 Translog 到底有多安全?
ElasticSearch 实现了近实时搜索,也要持久化变更,为了保证数据不丢失使用了 Translog,其目的是保证操作不会丢失。这引出了这个问题: **Translog 有多安全?**原创 2024-06-03 09:24:34 · 773 阅读 · 0 评论 -
ElasticSearch如何实现近实时搜索,如何提效【面试题,面道既学到】
当文档存储在 ElasticSearch 中时,文档就会被索引,并且在接近实时(1秒)内进行搜索,即 近实时搜索,也就是 动态更新索引,怎样在索引不变的前提下实现倒排索引的更新?答案是 用更多的索引,通过增加新的补充索引进来,而不是直接重写整个倒排索引,每一个倒排索引都会被轮流查询到,然后对结果进行合并。原创 2024-06-03 09:23:51 · 1051 阅读 · 0 评论 -
ElasticSearch 8.x 创建父子文档,用Join类型字段以及用has_child、has_parent 检索
那对于 ES 来说,这种情况只能有两种方式来做了,第一就是字段嵌套,需要定义一个 nested(嵌套)类型的字段,字段中有多个 对象,第二就是本文要讲到的 父子文档嵌套并用 has_child、has_parent 来检索。原创 2024-02-27 09:53:26 · 1273 阅读 · 0 评论 -
ElasticSearch 8.x 使用 High Level Client 以 HTTPS 方式链接,SSL 证书、主机名验证器 各是什么,如何忽略
生产环境的 ElasticSearch 有时可能是通过域名来访问的,并且是 https 开头的,那就需要 SSL/TLS 认证了,但是我们并不需要,那只能忽略了。那该如何忽略呢?原创 2024-02-05 11:04:32 · 2341 阅读 · 0 评论 -
ElasticSearch 8.x 版本如何使用 SearchRequestBuilder 检索
那如果特殊情况下,比如需要和老项目融合的时候,可能需要使用到 SearchRequestBuilder 来检索,该如何做呢?就是用 ElasticsearchClient 来包装 RestHighLevelClient 来执行查询,真正的检索使用 RestHighLevelClient 来执行的,而ElasticsearchClient则是构建为了融合并初始化 SearchRequestBuilder而创建的。原创 2024-01-29 10:47:44 · 1811 阅读 · 0 评论 -
ElasticSearch 8.x 使用 snapshot(快照)进行数据迁移
Elasticsearch 的快照就是指对数据和元数据的定期备份。因为快照中不仅包含了所有数据,也包含了所有的相关信息,比如:映射、配置等;这些快照可以保存在本地文件系统,也可以保存在共享文件系统或者专门存储快照的地方。在快照的概念中,数据并不都是每次全部备份一遍,而是采用增量的方式进行进行备份。首次备份会进行全力备份,而后续的备份则是在上一次备份后的更新的数据,增量备份可以有效地减少备份所需的存储空间和节省时间。原创 2024-01-29 10:45:55 · 1737 阅读 · 0 评论 -
ElasticSearch 8.x 弃用了 High Level REST Client,移除了 Java Transport Client,推荐使用 Elasticsearch Java API
从 ElasticSearch 7.0.0 版本开始,ElasticSearch 官方就不建议使用 TransportClient 客户端了,推荐使用 High Level REST Client 客户端了。然后接下来,从 ElasticSearch 7.15.0 版本开始,ElasticSearch 官方就不建议使用 High Level REST 客户端了,推荐使用 ElasticSearch-java 客户端了。原创 2024-01-11 10:14:48 · 3127 阅读 · 0 评论 -
ElasticSearch 7.x 版本使用 BulkProcessor 实现批量添加数据
BulkProcessor是 ElasticSearch 客户端中的一个功能,用于批量执行索引、更新或删除操作,BulkProcessor 运行将多个操作打包成一个请求进行发送,以提高效率和性能。性能优势:将多个操作打包成一个请求,这样可以减少网络开销,提高数据传输效率,从而可以加快数据写入索引速度。减少开销:较少的网络开销和较少的服务器的交互,减少服务器开销,尤其是大规模写入数据时。原子性:批量操作可以保证一组操作要么全部成功,要么全部失败,报错数据的一致性。原创 2024-01-11 10:12:16 · 2223 阅读 · 0 评论 -
GO学习之 搜索引擎(ElasticSearch)
使用 Go 语言操作 ElasticSearch 具有高性能、并发性和易维护性等优势,适用于需要快速、高效处理大量数据的场景。不过,也需要根据项目需求和团队技术栈的考量来决定是否选择 Go 语言来操作 ElasticSearch。原创 2023-08-27 22:56:25 · 1327 阅读 · 0 评论 -
Logstash部署与使用
Logstash是一个收集与处理数据的引擎,就像ElasticSearch是专门用来检索的引擎一样,Logstash用于收集、处理和转换各种数据源(文件、数据库、网站等)的数据,并将其转换为统一的格式。Logstash支持多种插件,进行数据过滤、转换和输出,可以方便地与 ES 和 Kibana 集成使用。还支持多线程处理和事件模型,可以在大规模数据处理场景下提供高性能、高可用的服务。原创 2023-06-04 16:15:44 · 6715 阅读 · 1 评论 -
ELK技术栈介绍
ELK技术栈由三个技术组成:Elasticsearch、Logstash和Kibana。每个技术都有自己的功能点和用法,同时它们也可以相互关联使用,形成一个完整的日志解决方案。此外,还有一个名为Beats的技术,它是一个轻量级的数据收集器,可以收集各种类型的数据并将其发送到Logstash或Elasticsearch进行处理和存储。ELK技术栈的三个技术可以相互关联使用,形成一个完整的日志解决方案。原创 2023-05-21 13:22:17 · 995 阅读 · 0 评论 -
ElasticSearch学习随笔之高级检索
本文主要介绍 ES 的一下高级检索功能,80% 的业务场景,简单搜索就可以实现了,但是在一些复杂的业务场景中,我们必须使用一些高级的功能来满足,比如在一些与舆情监测项目或者智能推荐、猜你想搜这种复杂的功能,有时候需要搜索中需要提高相关度,有时候搜索需要减低相关度等。让我们来准备一些数据来进行高级搜索测试,但是问题来了,这些数据真的是头疼,不好生成一些示例数据出来,这时候,chatGTP这是无敌了,简直太方便了。ES 是目前全文检索排行榜。原创 2023-05-07 21:50:59 · 2972 阅读 · 8 评论 -
ElasticSearch学习随笔之分词算法
本文主要对ElasticSearch分词算法进行简单讲解,在了解算法之前,我们先要知道两点,什么是相关性和相关性算分。站在用户的角度来看,检索是什么呢?是否找到所有相关的内容。是否得到了很多内容是不相关的。排在最前面的搜索结果打分是否合理。结合需求,结果排名是否平衡。那如何衡量相关性呢?Precision(查准率),尽可能的返回较少的无相关的文档。Recall(查全率),尽量返回较多的相关的文档。Ranking(排序),能够按照相关性进行排序。原创 2023-05-03 12:54:15 · 2117 阅读 · 0 评论 -
ElasticSearch学习随笔之嵌套操作
本文主要对ElasticSearch嵌套(Nested) 操作,以便上手 用。原创 2022-09-24 00:41:39 · 2706 阅读 · 0 评论 -
ElasticSearch学习随笔之SpringBoot Starter 操作
总结 spring boot 如何操作 ES,以及简单快速上手的案例,单元测试,可复制执行。原创 2022-05-17 23:47:20 · 953 阅读 · 0 评论