elasticsearch
文章平均质量分 82
hellozhxy
这个作者很懒,什么都没留下…
展开
-
ElasticSearch 如何像 MySQL 一样做多表联合查询?
今天我们来看 Es 中的嵌套查询与父子文档,这两个东西很有来头!关系型数据库中的多表联合查询需求在 Es 中可以用它们来解决。转载 2023-01-03 18:21:06 · 3772 阅读 · 1 评论 -
ES中的RollUp概念
在最新的ES中出现了一个X特性,卷数据(Data Rollup,不知道如何翻译,姑且这么称呼吧)。这个卷数据是个什么概念呢?如果做过监控(monitoring)的都知道,监控实际上是个大数据问题,这些”大“之一就是大量:一个复杂的系统可能每天面临上TB的原始数据;虽然监控系统所用的数据库都会有一些高效的压缩功能,但最终磁盘上存储的量仍然会按每天数十数百G增加。因此监控系统中数据的存留时间和策略(retention period & policy)始终是个核心问题。正是为了更好的解决这个问题,ES转载 2021-11-18 15:15:41 · 434 阅读 · 0 评论 -
Elasticsearch等同八大全能型的数据产品对比
Elasticseach从做搜索引擎开始,到现在主攻大数据分析领域,逐步进化成了一个全能型的数据产品,在Elasticsearch诸多优秀的功能中,与很多数据产品有越来越多的交叉竞争,有的功能很有特色,有的功能只是附带,了解这些产品特点有助于更好的应用于业务需求。1、LuceneLucene是一个搜索的核心库,Elastic也是在Lucene基础之上构建,它们之间的竞争关系是由Lucene本身决定的。 在互联网2.0时代,考验各互联网公司最简单的技术要求,就是看他们的搜索做...转载 2021-11-18 15:07:30 · 1959 阅读 · 0 评论 -
Elasticsearch Mapping 详解
1. Mapping(映射)Mapping 是定义文档及其包含的字段是如何存储和索引的过程例如,我们用映射来定义:哪些字符串字段应该被当做全文字段 哪些字段包含数字、日期或地理位置 是否应该将文档中所有字段的值索引到catch-all字段中 1.1. Mapping Type(映射类型)每个索引都有一个映射类型,以决定文档将被如何索引映射类型包含两部分: Meta-fields Meta-fields通常用于自定义文档的元数据。例如,meta-fields包括文档的 _in..原创 2021-09-08 14:35:33 · 1676 阅读 · 0 评论 -
Elasticsearch7.X ILM索引生命周期管理(冷热分离)
一、“索引生命周期管理”概述Elasticsearch索引生命周期管理指:Elasticsearch从设置、创建、打开、关闭、删除的全生命周期过程的管理。二、为什么要使用“索引生命周期管理”1、ELK集群之前的索引模式,通过app_name和日期区分,随着时间累积,索引数量逐渐增多,造成服务器内存、CPU、IO等指标上涨;2、需要创建额外定时任务执行索引删除脚本,这种方式无法避免kafka重复消费造成的大量已删除索引重建,并无法用脚本按日期删除;3、根据日志查询和存储的特点,将数据冷热分转载 2021-06-04 10:29:18 · 2276 阅读 · 0 评论 -
基于 Kafka 技术栈构建和部署实时搜索引擎的实践
在 Koverhoop,我们正在保险、医疗、房地产和离线分析领域建立一些大型项目。在我们其中一个多租户团体保险经纪平台 klient.ca,我们计划构建一个强大的搜索功能,希望能在用户输入内容的同时同步呈现搜索结果。下面是我们能够实现的效果,我将在这篇文章讨论这一功能的核心基础设施,包括如何完全自动化部署及如何快速完成构建工作。来自作者的动图: 搜索能力这个系列文章分为两部分,我将分别讨论以下内容: 第 1 部分:了解用于支持此搜索能力的技术栈,并使用 Docker 和 D...转载 2021-02-24 11:44:25 · 320 阅读 · 0 评论 -
解读电商搜索
“本文主要结合作者的一些电商算法经验,以手淘搜索为例展开,介绍产品和诉求层面以及如何使用搜索入口来做用户引导,后续文章会结合相关算法深入展开。”作者:姚凯飞,Club Factory 推荐算法负责人硕士毕业于上海交通大学,前阿里推荐算法工程师,多年电商及视频推荐经验,目前在出海电商Club Factory负责推荐算法工作。出品:DataFunTalk一. 概述一个产品的搜索功能,是用户快速触达所需信息的通道,起到了引导用户走向的重要作用;优秀的产品必然有成熟、体验良好的搜索功能。..转载 2020-10-13 20:06:55 · 3947 阅读 · 1 评论 -
图解 ElasticSearch 搜索原理
摘要先自上而下,后自底向上的介绍ElasticSearch的底层工作原理,试图回答以下问题: 为什么我的搜索 *foo-bar*无法匹配foo-bar? 为什么增加更多的文件会压缩索引(Index)? 为什么ElasticSearch占用很多内存? 版本elasticsearch版本: elasticsearch-2.2.0内容图解ElasticSearch云上的集群集群里的盒子云里面的每个白色正方形的盒子代表一个节点——Node。...转载 2020-10-10 09:54:19 · 338 阅读 · 0 评论 -
Elasticsearch 常见的 8 种错误及最佳实践
Elasticsearch 社区有大量关于 Elasticsearch 错误和异常的问题。深挖这些错误背后的原因,把常见的错误积累为自己的实战经验甚至是工具,不仅可以节省我们的开发和运维时间,而且可以帮助确保 Elasticsearch 集群的长期健康运行。常见的异常、原因和常规最佳实践拆解如下,这些最佳实践可以帮助我们更有效地识别、最小化定位和处理异常问题。1、 Mapper_parsing_exceptionElasticsearch 依靠映射(Mapping)定义的数据类型处理数据。原创 2020-08-05 11:28:57 · 2075 阅读 · 0 评论 -
58同城 Elasticsearch 应用及平台建设实践
导读:Elasticsearch是一个分布式的搜索和分析引擎,可以用于全文检索、结构化检索和分析,并能将这三者结合起来。Elasticsearch基于Lucene开发,现在是使用最广的开源搜索引擎之一。Elasticsearch可以应用于在/离线日志流水、用户标签画像、数据库二级缓存、安全风控行为数据、图数据库索引、监控数据、Wiki文档检索等应用场景。58同城有自己的主搜,而一些内部创新搜索业务和大规模的数据实时OLAP ( On-Line Analytical Processing,联机分析处理 ) 则转载 2020-07-17 15:55:19 · 309 阅读 · 1 评论 -
使用 Elasticsearch 优雅搭建自己的搜索系统
什么是elasticsearchElasticsearch 是一个开源的高度可扩展的全文搜索和分析引擎,拥有查询近实时的超强性能。大名鼎鼎的Lucene 搜索引擎被广泛用于搜索领域,但是操作复杂繁琐,总是让开发者敬而远之。而 Elasticsearch将 Lucene 作为其核心来实现所有索引和搜索的功能,通过简单的 RESTful 语法来隐藏掉 Lucene 的复杂性,从而让全文搜索变得简单ES在Lucene基础上,提供了一些分布式的实现:集群,分片,复制等。搜索为什么不用MySQL而用e转载 2020-07-11 17:01:04 · 696 阅读 · 0 评论 -
Elasticsearch对垒8大竞品技术
Elasticsearch当前热度排名很高青出于蓝,而胜于蓝。入行Elastic-Stack技术栈很久很久,为了免于知识匮乏眼光局限,有必要到外面的世界看看,丰富自己的世界观。本篇内容从Elastic的竞争产品角度分析探讨。 哪些应用场景下使用Elasticsearch最佳? 哪些应用场景下不使用Elasticsearch最好? 本文仅代表个人的观点,不代表社区技术阵营观点,无意口水之争,限于本人的经验知识有限,可能与读者观点认知不一致。竞争...转载 2020-06-03 09:39:15 · 603 阅读 · 0 评论 -
ES亿级数据检索优化,三秒返回突破性能瓶颈
作者丨mikevictor来源丨www.cnblogs.com/mikevictor07/p/10006553.html一、前言数据平台已迭代了三个版本,从刚开始遇到很多常见的难题,到终于有片段时间整理一些已完善的文档,在此分享以供需要的朋友参考,少走些弯路。此文篇幅会偏重于Elasticsearch的优化,关于HBase、Hadoop的设计优化估计有很多文章可以参考,不再...转载 2020-05-07 19:47:26 · 617 阅读 · 0 评论 -
Elasticsearch如何做到数十亿数据查询毫秒级响应?
如果面试的时候碰到这样一个面试题:ES 在数据量很大的情况下(数十亿级别)如何提高查询效率?这个问题说白了,就是看你有没有实际用过 ES,因为啥?其实 ES 性能并没有你想象中那么好的。很多时候数据量大了,特别是有几亿条数据的时候,可能你会懵逼的发现,跑个搜索怎么一下 5~10s?后面反而就快了,可能就几百毫秒。说实话,ES 性能优化是没有银弹的。啥意思呢?就是不要期待着随手调一个参数...转载 2020-01-07 11:24:14 · 1026 阅读 · 0 评论 -
你必须知道的23个最有用的Elasticseaerch检索技巧
题记本文详细论述了Elasticsearch全文检索、指定字段检索实战技巧,并提供了详尽的源码举例。是不可多得学习&实战资料。0、前言为了讲解不同类型ES检索,我们将要对包含以下类型的文档集合进行检索: 1. title 标题; 2. authors 作者; 3. summary 摘要; 4. release data 发布日期; 5. number o...转载 2018-08-07 14:39:31 · 506 阅读 · 0 评论 -
深入理解ElasticSearch(八):索引管理
索引管理1、创建一个索引到目前为止, 我们已经通过索引一篇文档创建了一个新的索引 。这个索引采用的是默认的配置,新的字段通过动态映射的方式被添加到类型映射。现在我们需要对这个建立索引的过程做更多的控制:我们想要确保这个索引有数量适中的主分片,并且在我们索引任何数据 之前 ,分析器和映射已经被建立好。为了达到这个目的,我们需要手动创建索引,在请求体里面传入设置或类型映射,如下所示:...转载 2018-09-11 20:50:10 · 629 阅读 · 0 评论 -
深入理解ElasticSearch(七):执行分布式检索
执行分布式检索一个 CRUD 操作只对单个文档进行处理,文档的唯一性由 _index, _type, 和 routing values (通常默认是该文档的 _id )的组合来确定。 这表示我们确切的知道集群中哪个分片含有此文档。搜索需要一种更加复杂的执行模型因为我们不知道查询会命中哪些文档: 这些文档有可能在集群的任何分片上。 一个搜索请求必须询问我们关注的索引(index or ind...转载 2018-09-11 20:43:51 · 273 阅读 · 0 评论 -
深入理解ElasticSearch(六)排序与相关性
排序与相关性默认情况下,返回的结果是按照 相关性 进行排序的——最相关的文档排在最前。 在本章的后面部分,我们会解释 相关性 意味着什么以及它是如何计算的, 不过让我们首先看看 sort 参数以及如何使用它。1、排序为了按照相关性来排序,需要将相关性表示为一个数值。在 Elasticsearch 中, 相关性得分 由一个浮点数进行表示,并在搜索结果中通过 _score 参数返回, 默认...转载 2018-09-11 20:20:14 · 1909 阅读 · 0 评论 -
深入理解ElasticSearch(五)请求体查询
请求体查询简易 查询 —query-string search— 对于用命令行进行点对点(ad-hoc)查询是非常有用的。 然而,为了充分利用查询的强大功能,你应该使用 请求体 search API, 之所以称之为请求体查询(Full-Body Search),因为大部分参数是通过 Http 请求体而非查询字符串来传递的。请求体查询 —下文简称 查询—不仅可以处理自身的查询请求,还允许你对...转载 2018-09-11 19:57:42 · 806 阅读 · 0 评论 -
ElasticSearch 使用Java Api访问集群
ElasticSearch 使用Java Api访问集群1、创建maven工程导入pom依赖<dependencies> <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>tra...转载 2018-09-11 17:00:01 · 3088 阅读 · 0 评论 -
Elasticsearch如何物理删除给定期限的历史数据?
1、题记想到删除,基础认知是delete,细分为删除文档(document)和删除索引;要删除历史数据,基础认知是:删除了给定条件的数据,用delete_by_query。 实际操作发现: - 删除文档后,磁盘空间并没有立即减少,反而增加了? - 除了定时任务+delete_by_query,有没有更好的方式呢?2、常见的删除操作2.1 删除单个文档DELETE /twit...转载 2018-08-03 10:19:43 · 8187 阅读 · 0 评论 -
Elasticsearch常用工具清单
1、题记工欲善其事必先利其器,ELK Stack的学习和实战更是如此,特将工作中用到的“高效”工具分享给大家。希望能借助“工具”提高开发、运维效率!2、工具分类概览2.1 基础类工具1、Head插件1)功能概述:ES集群状态查看、索引数据查看、ES DSL实现(增、删、改、查操作) 比较实用的地方:json串的格式化 2)地址:http://mobz.github....转载 2018-08-03 09:41:47 · 6268 阅读 · 0 评论 -
《深入理解Elasticsearch》读书笔记
题记由于之前已经梳理过Elasticsearch基础概念且在项目中实战过Elasticsearch的增删改查、聚类、排序等相关操作,对ES算是有了一定的认知。但是,仍然对于一些底层的原理认知模糊,特买来《深入理解Elasticsearch》过了一遍,将书中一些细节知识点结合官网文档梳理如下。1——4章偏应用,跟着敲一遍代码基本就能理解原理。 5——9章偏理论一些。 第5章 分布式...转载 2018-08-07 16:13:10 · 183 阅读 · 0 评论 -
Elasticsearch全量数据增量遍历实现原理
0、需求针对凤凰网财经版块的新闻数据和评论数据, 1个索引存储采集凤凰网财经版块的新闻数据;1个索引存储相关的财经数据评论结果。 统计: 1)某条新闻的评论数的多少? 2)某条评论属于哪条新闻? 3)当前已采集数据的所有评论、评论数汇总,按照评论数逆序排序,以便于图形化展示。1、问题分解1.1 数据如何存储,方案选型?方案一:类似需求,1个索引ifeng_index存储新闻...转载 2018-08-07 15:50:01 · 1076 阅读 · 0 评论 -
Elasticsearch 实现自定义排序插件
插件入口: package ttd.ugc.plugin;import org.elasticsearch.plugins.Plugin;import org.elasticsearch.script.ScriptModule;/** * Created by jin_h on 2017/1/9. */public class NativeScriptPlugin ex...转载 2018-12-07 17:10:31 · 2201 阅读 · 0 评论 -
让Elasticsearch飞起来:性能优化实践干货
版权声明:本文为博主原创文章,未经博主允许不得转载。转载请务必加上原作者:铭毅天下,原文地址:blog.csdn.net/laoyang360 https://blog.csdn.net/wojiushiwo987/article/details/851097690、题记Elasticsearch性能优化的最终目的:用户体验爽。关于爽的定义——著名产品人梁宁曾经说过“人在满足时候的状态叫做愉...转载 2018-12-24 13:49:57 · 5548 阅读 · 0 评论 -
elasticsearch httpclient认证机制
转载自http://www.cnblogs.com/youran-he/p/7562870.html最近公司单位搬迁,所有的服务都停止了,我负责的elasticsearch不知道怎么回事,一直不能运行呢,因此,我一直在负责调试工作。经过两天的调试工作,我发现新的服务器增加了httpclient认证机制,经过几次研究,发现服务器的新增了如下内容: http.basic.log: false...转载 2019-01-25 17:23:53 · 1247 阅读 · 0 评论 -
ElasticSearch jestClient增删改 索引基础方法
package cn.focus.dc.app.xinfang.service.third;import static cn.focus.dc.app.constants.AppConstants.ES_INDEX_PASSWORD;import io.searchbox.client.JestClient;import io.searchbox.client.JestResult;import ...转载 2018-05-16 21:19:25 · 6085 阅读 · 1 评论 -
ES 在数据量很大的情况下如何提高查询效率
如果面试的时候碰到这样一个面试题:ES 在数据量很大的情况下(数十亿级别)如何提高查询效率?这个问题说白了,就是看你有没有实际用过 ES,因为啥?其实 ES 性能并没有你想象中那么好的。很多时候数据量大了,特别是有几亿条数据的时候,可能你会懵逼的发现,跑个搜索怎么一下 5~10s,坑爹了。第一次搜索的时候,是 5~10s,后面反而就快了,可能就几百毫秒。你就很懵,每个用户第一...转载 2019-06-05 20:43:06 · 16001 阅读 · 7 评论 -
一个百亿级日志系统是怎么设计出来的?
日志是记录系统中各种问题信息的关键,也是一种常见的海量数据。日志平台为集团所有业务系统提供日志采集、消费、分析、存储、索引和查询的一站式日志服务。主要为了解决日志分散不方便查看、日志搜索操作复杂且效率低、业务异常无法及时发现等等问题。随着有赞业务的发展与增长,每天都会产生百亿级别的日志量(据统计,平均每秒产生 50 万条日志,峰值每秒可达 80 万条)。日志平台也随着业务的不断发展...转载 2019-05-09 14:55:33 · 681 阅读 · 0 评论 -
ElasticSearch index 剖析
ElasticSearch index 剖析在看ElasticSearch权威指南基础入门中关于:分片内部原理这一小节内容后,大致对ElasticSearch的索引、搜索底层实现有了一个初步的认识。记录一下在看文档的过程中碰到的问题以及我的理解。此外,在文章的末尾,还讨论分布式系统中的主从复制原理,以及采用这种副本复制方案带来的数据一致性问题。ElasticSearch index 操作背...转载 2019-04-18 20:49:35 · 868 阅读 · 0 评论 -
ElasticSearch评分分析 explian 解释和一些查询理解
ElasticSearch评分分析 explian 解释和一些查询理解按照es-ik分析器安装了ik分词器。创建索引:PUT /index_ik_test。索引包含2个字段:content和nick,如下:GET index_ik_test/_mapping{ "index_ik_test": { "mappings": { "fulltext": { ...转载 2019-04-18 20:41:00 · 830 阅读 · 0 评论 -
让Elasticsearch飞起来!百亿级实时查询优化实战
最近的一个项目是风控过程数据实时统计分析和聚合的一个 OLAP 分析监控平台,日流量峰值在 10 到 12 亿上下,每年数据约 4000 亿条,占用空间大概 200T。面对这样一个数据量级的需求,我们的数据如何存储和实现实时查询将是一个严峻的挑战。经过对 Elasticsearch 多方调研和超过几百亿条数据的插入和聚合查询的验证之后,我们总结出以下几种能够有效提升性能和解决这一问题...转载 2019-04-02 19:24:16 · 4737 阅读 · 2 评论 -
使用Java客户端操作elasticsearch
常见的配置前面已介绍过,RestClientBuilder支持同时提供一个RequestConfigCallback和一个HttpClientConfigCallback,你可以定制 the Apache Async Http Client 公开的配置。这两个回调函数可以修改某些特定的行为,而不会覆盖RestClient初始化的所有其他默认配置。 本节介绍一些需要为客户端进行额外配置的常见场景...转载 2019-01-25 17:35:14 · 919 阅读 · 0 评论 -
ElasticSearch 实践过程中遇到的几个小问题
ulimit “不生效”有一台机器的在启动 ES 的时候始终报错 1 max file descriptors [65000] for elasticsearch process is too low 但是我已经在/etc/security/limits.conf里增加了如下配置, 1234 ela...转载 2019-01-25 17:32:57 · 20204 阅读 · 0 评论 -
使用JestClient操作ElasticSearch
可参考: https://www.blog-china.cn/template/documentHtml/1484101683485.htmlhttps://github.com/searchbox-io/Jest/blob/master/jest/src/test/java/io/searchbox/core/SearchScrollIntegrationTest.java使用JestC...转载 2019-01-25 17:30:33 · 1792 阅读 · 1 评论 -
Base authentication of elasticsearch Java resetclient
Basic authenticationConfiguring basic authentication can be done by providing an HttpClientConfigCallback while building the RestClient through its builder. The interface has one method that receive...转载 2019-01-25 17:25:53 · 284 阅读 · 0 评论 -
Elasticsearch大文件搜索
1、大文件是多大?ES建立索引完成全文检索的前提是将待检索的信息导入Elaticsearch。项目中,有时候需要将一些扫描件、PDF文档、Word、Excel、PPT等文档内容导入Elasticsearch。比如:将《深入理解Elasticsearch》这边书导入ES,而这边书的全文内容被识别后的大小可能为3MB——5MB以上的字节。存入ES后是一个content字段,对这个con...转载 2018-08-07 13:21:45 · 5124 阅读 · 0 评论 -
Elasticsearch5.X Mapping万能模板
0、引言在关系型数据库如Mysql中,设计库表需要注意的是: 1)需要几个表; 2)每个表有哪些字段; 3)表的主键及外键的设定——便于有效关联。 表的设计遵守范式约束,考虑表的可扩展性,避免开发后期对表做大的改动。 Mysql或者Oracle中,修改数据类型相对比较简单,通过命令行或者navicat、sqldeveloper等可视化工具直接修改。 即便千万级别数据量,多等点时间,...转载 2018-08-07 09:32:32 · 235 阅读 · 0 评论 -
Elasticsearch聚合深入详解——对比Mysql实现
聚合认知前提桶(Buckets)——满足特定条件的文档的集合 指标(Metrics)——对桶内的文档进行统计计算SELECT COUNT(color) FROM table GROUP BY colorCOUNT(color) 相当于指标。 GROUP BY color 相当于桶。一、聚合起步1、创建索引1.1 创建索引DSL实现put carsPOST...转载 2018-08-07 09:32:16 · 2839 阅读 · 0 评论