
Elasticsearch
文章平均质量分 64
ElasticsearchElasticsearchElasticsearch
风情客家__
简述需要300字以内_(¦3」∠)_
展开
-
主流日志平台对比(ES, ClickHouse,Loki)
原创 2023-11-23 15:17:50 · 879 阅读 · 0 评论 -
Elasticsearch 7.X 中文分词器 ik 使用,及词库的动态扩展
分片和水平扩容,前面再使用的时候应该就会发现,在做match 匹配时,默认会进行分词,但当查询内容是中文时,分词效果是一个字被认定了一个词,这显然不符合我们对中文分词的效果,因此本篇我们讲解下ES中中文分词器ik 的使用。上面已经实现了动态词库的效果,上面使用的都是直接使用分词器进行测试的,在实际使用中不可能这样做的,都是去查询数据的,所以这里就会出现一个问题。注意更新索引,会影响线上的es的 qps,尽量选择夜深人静的时候进行更新。此时就实现了,无需重启es,热更新词库的效果了。转载 2023-10-31 10:02:42 · 1027 阅读 · 0 评论 -
10倍提升效率,号称取代 Elasticsearch 的轻量级搜索引擎到底有多强悍?
Manticore Search 是一个使用 C++ 开发的高性能搜索引擎,创建于 2017 年,其前身是 Sphinx Search。Manticore Search 充分利用了 Sphinx,显着改进了它的功能,修复了数百个错误,几乎完全重写了代码并保持开源。这一切使 Manticore Search 成为一个现代,快速,轻量级和功能齐全的数据库,具有出色的全文搜索功能。Manticore Search目前在GitHub收获3.7k star,拥有大批忠实用户。转载 2023-06-29 10:32:22 · 1236 阅读 · 0 评论 -
MySQL数据同步ES方案选型大全
例如商品库的商品品类、spu、sku表是分开的,但是查询是跨维度的,在ES里再聚合一次效率就低一些,最好就是把商品的数据给聚合起来,在ES里以类似大宽表的形式存储,这样一来查询效率就高一些。我们以应用最广泛的canal为例,canal通过canal-adapter,支持多种适配器,其中就有ES适配器,通过一些配置,启动之后,就可以直接把MySQL数据同步到ES,这个过程是零代码的。但是,和老板了解过,使用canal看起来很美好,帮我们把同步的事情都干了,但其实,还是要写代码。转载 2023-06-24 20:55:52 · 133 阅读 · 0 评论 -
SpringBoot ES 查询空字段
参考文章:Elasticsearch 字段为空(null)记录查询 - illusioned - 博客园/** * 查询空字段 */public void searchNullField() { NativeSearchQueryBuilder queryBuilder = new NativeSearchQueryBuilder(); queryBuilder.withFields("price"); BoolQueryBuilder boolQueryBuilder = QueryB原创 2021-11-26 14:36:01 · 2426 阅读 · 0 评论 -
Elasticsearch 搜索数组字段
参考文章:Elasticsearch 搜索数组字段_hhhzua的专栏-优快云博客_elasticsearch 查询数组1、搜索 数组字段tags中同时存在元素str_a、str_b{ "query": { "bool": { "filter": [ { "term": { "tags": "str_a" } }, { "term":...转载 2021-11-23 16:05:29 · 2628 阅读 · 0 评论 -
elasticsearchTemplate.query查询
参考文章:ElasticSearch基础操作及ElasticsearchTemplate API_MJ丶的博客-优快云博客BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();boolQueryBuilder.must(QueryBuilders.termQuery("_id", qaPairId));searchQuery.withQuery(boolQueryBuilder);JSONObject resultJson原创 2021-11-23 15:26:04 · 1903 阅读 · 0 评论 -
elasticsearchTemplate UpdateQuery 更新数据
参考文章:elasticsearchTemplate 更新数据_鶸者为何战斗-优快云博客/** * update数据 */public void update(String brand) { // 示例一 Map<String, Object> params = new HashMap<>(); params.put("price", new BigDecimal("800.00")); UpdateRequest updateRequest = new Up.原创 2021-11-23 15:11:23 · 5477 阅读 · 2 评论 -
spring data elasticsearch 批量删除
参考文章:spring data elasticsearch 批量删除 log.info("开始删除缓存"+serviceApiCode); long start = System.currentTimeMillis(); DeleteQuery deleteQuery = new DeleteQuery(); BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery(); b原创 2021-11-23 11:21:39 · 2276 阅读 · 1 评论 -
Es检索 must与filter区别
参考文章:Es检索 must与filter区别//组合查询对象,//如搜索条件为“小米手机”这里must会分词为“小米”和“手机”这两个词是or关系//加operator(Operator.AND)可以把or改为and关系BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();boolQueryBuilder.must(QueryBuilders.matchQuery("name",searchmap.get("keyword转载 2021-11-22 16:57:17 · 5611 阅读 · 0 评论 -
ElasticSearch的term多条件与terms多值查询
参考文章:ElasticSearch的term多条件与terms多值查询一、term多条件查询一次查询多个字段,每个字段对应一个值。如查询条件属性allowance_id、skuId,值分别为:11、121、json请求格式如下{ "from": 1, "size": 20, "query": { "bool": { "filter": [{ "term": { "allowance_id": { "value": 11, "bo.转载 2021-11-22 16:39:59 · 5704 阅读 · 0 评论 -
es查询中 match、match_phrase、query_string和term的区别
参考文章:es match、match_phrase、query_string和term的区别(一)text字段和keyword字段的区别以下给出一个例子:首先建立一个索引和类型,引入一个keywork的字段:PUT my_index{ "mappings": { "products": { "properties": { "name": { "type": "keyword" } } }转载 2021-11-22 16:34:19 · 4108 阅读 · 1 评论 -
sprinboot 整合 elasticsearch实现各种查询:高亮查询、termQuery、rangeQuery、matchQuery、multiMatchQuery、分页查询
参考文章:sprinboot 整合 elasticsearch实现各种查询:高亮查询、termQuery、rangeQuery、matchQuery、multiMatchQuery、分页查询注意:本文使用 Springboot 2.4.3,、elasticsearchRestTemplate,elasticsearch使用的是 7.9.3主要是学习使用 ElasticsearchRestTemplate 的 API,termQuery、matchQuery、rangeQuery、.转载 2021-11-22 16:18:49 · 1276 阅读 · 0 评论 -
SpringBoot集成elasticsearch支持字段映射(驼峰转下划线)
参考文章:SpringBoot集成elasticsearch支持字段映射SpringBoot集成elasticsearch支持自动@Field别名存储问题1、问题描述Java代码属性字段多使用驼峰命名法,而mysql、elasticsearch等数据存储系统中字段多采用下划线命名法。mysql使用tk.mybatis+@Column注解即可轻松实现Java对象持久化存储字段映射,本文主要解决在elasticsearch集成过程中遇到的问题及如何字段映射2、集成版本列表SpringClou原创 2021-11-22 11:25:59 · 6236 阅读 · 0 评论 -
Windows免安装ElasticSearch
官方下载地址:Download Elasticsearch | Elastic参考文章:ES安装(Windows版本) 免安装 可学习用1 安装Elasticsearch#Elasticsearch安装链接1、下载Elastucsearch安装包(Windows版本)2、将elasticsearch-7.15.0-windows-x86_64.zip文件解压出来3、进入解压后的文件目录elasticsearch-7.15.0bin目录 主文件目录 elasticsearch文件为.转载 2021-11-19 08:50:51 · 582 阅读 · 2 评论 -
结合CAP理论分析ElasticSearch的分布式实现方式
参考文章:结合CAP理论分析ElasticSearch的分布式实现方式简介首先引出本人对ElasticSearch分布式的特点;再者针对分布式系统CAP理论,来论证分析ElasticSearch如何实现分布式?另外分析ElasticSearch在CAP理论的实现中是如何在三取二中权衡的?最后回归到论点。一 ElasticSearch分布式的特点1.强一致性,ES保证每一次的数据的更新都更新都所有的节点。2.高可用,ES保证在某些节点/分片挂掉后仍不影响对外的响应。3.低分区容错性。转载 2021-03-12 16:24:18 · 710 阅读 · 1 评论 -
关于elasticsearch索引,倒排索引简介
参考文章:终于有人把elasticsearch原理讲通了!小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了。随着央视诗词大会的热播,小史开始对诗词感兴趣,最喜欢的就是飞花令的环节。但是由于小史很久没有背过诗词了,飞一个字很难说出一句,很多之前很熟悉的诗句也想不起来。【倒排索引】吕老师:但是我让你说出带“前”字的诗句,由于没有索引,你只能遍历脑海...转载 2021-02-24 14:04:55 · 1740 阅读 · 4 评论 -
ES支持的数据类型
参考文章:ES支持的数据类型ES支持的数据类型:字符串类型 :string: text: keyword:从ElasticSearch 5.x开始不再支持string,由text和keyword类型替代;当一个字段是要被全文搜索的,设置text类型,字段内容会被分析,text类型的字段不用于排序,很少用于聚合;keyword类型的字段只能通过精确值搜索到,如果字段需要进行过滤、排序、聚合,设置keyword类型。整数类型:long integer short by..转载 2020-12-22 10:07:58 · 3153 阅读 · 0 评论 -
Elasticsearch和Hbase对比分析
参考文章:Elasticsearch和Hbase对比分析MongoDB、Redis、elasticSearch、hbase的对比为什么写这篇文章 可能有些童鞋已经发现:1.阿里云上的Hbase服务,基于Hbase深度定制和扩展,能比较好的支持时序场景和全文检索场景,其增强版Lindorm,已经作为单独的云服务售卖,单独演进。2.腾讯云上,基于ES构建了CTSDB时序数据库单独售卖,同时也推出了增强版的ES云服务。可以看出,在这两个服务所在团队中,一边选择基于ES来支持时序和全文检索场景,一转载 2020-08-24 14:58:38 · 3473 阅读 · 0 评论 -
Elasticsearch对比TiDB
参考文章:Elasticsearch对比TiDB笔者做过的一个项目中,同时用到了Elasticsearch和Tidb两种存储相关的产品。这两者适用的场景有些差异,但其实又有交集。前者偏向搜索,后者则主打分布式存储。下面根据自己的理解从不同维度分析下二者的相同点和不同点。对比维度 Elasticsearch TiDB 产地 公司现在的名称是Elastic, 其实它的员工遍布世界各地,一般认为公司的总部是阿姆斯特丹 公司是PinCap,在北京,是国内的公司。 版本历转载 2020-07-21 14:13:01 · 1163 阅读 · 0 评论 -
es索引优化(行存储、列存储、索引)
参考文章:es索引优化(行存储、列存储、索引)es的底层存储使用lucene,主要包含行存储(storefiled),列存储(docvalues)和倒排索引(invertindex)。大多数使用场景中,没有必要同时存储这三个部分,可以通过下面的参数来做适当调整1 mapping type index 设置"_source": { "enabled": false}StoreFiled: 行存储,其中占比最大的是_source字段,它控制doc原始数据的存储。在...转载 2020-06-11 18:28:13 · 1399 阅读 · 0 评论 -
行式存储和列式存储优缺点和paruqet文件结构
参考文章:行式存储和列式存储优缺点和paruqet文件结构一、列式存储和行式存储的比较列式存储和行式存储是针对数据在存储介质中的排序形式而言的,假设存在一张table,那么:行式存储:依次连续存储第1、2、3...行的数据到存储介质中; 列式存储:依次连续存储第1、2、3...列的数据到存储介质中。图1-1所示为行式存储和列式存储的示意图,一张table包含5个字段(列)即rowid、date/time、customer name以及quantity,共7行,图中的红色箭头表示存储顺序转载 2020-06-11 17:59:45 · 6764 阅读 · 0 评论 -
ElasticSearch(ES)和solr的关系和区别
参考文章:Elasticsearch与Solr搜索引擎选型调研文档ElasticSearch(ES)和solr的关系和区别Elasticsearch简介Elasticsearch是一个实时的分布式搜索和分析引擎。它可以帮助你用前所未有的速度去处理大规模数据。它可以用于全文搜索, 结构化搜索以及分析, 当然你也可以将这三者进行组合。Elasticsearch是一个建立在全文搜索引擎 Apache Lucene™ 基础上的搜索引擎, 可以说Lucene是当今最先进, 最高效的全功能开源搜索引擎转载 2020-06-11 17:50:44 · 1562 阅读 · 0 评论 -
javascript玩转ElasticSearch(一)
参考文章:javascript玩转ElasticSearch(一)转载 2020-04-02 20:56:08 · 844 阅读 · 0 评论 -
elasticsearch数据导入导出
参考文章:elasticsearch数据导入导出Elasticsearchdump 数据导入/导出一. 安装工具elasticdump方法一:wget安装:$ wget https://nodejs.org/dist/v10.15.0/node-v10.15.0-linux-x64.tar.xz$ tar -xf node-v10.15.0-linux-x64.tar.xz...转载 2020-03-27 11:26:44 · 13424 阅读 · 1 评论 -
centos7 rpm 离线安装 Elasticsearch 6.5
参考文章:elasticsearch安装与使用(1)-- centos7 elasticsearch的两种简单安装方法elasticsearch配置一文上手 Elasticsearch常用可视化管理工具1. 官网下载rpm包https://www.elastic.co/downloads/elasticsearch#ga-release找到manually安装rpm的地方,可以...原创 2019-01-03 19:32:25 · 1550 阅读 · 0 评论 -
ElasticSearch监控工具 - cerebro
参考文章:ElasticSearch监控工具 - cerebro转载 2020-03-24 17:21:18 · 510 阅读 · 0 评论 -
Kafka和ElasticSearch的整合
参考文章:Kafka和ElasticSearch的整合三种方案:Kafka->logstash->elasticsearch->kibana(简单,只需启动一个代理程序) Kafka->kafka-connect-elasticsearch->elasticsearch->kibana(与confluent绑定紧,有些复杂) https://githu...转载 2020-02-22 14:14:26 · 1913 阅读 · 0 评论 -
实战场景 Flink读取kafka数据,处理以后写入到ElasticSearch
参考文章:实战场景 Flink读取kafka数据,处理以后写入到ElasticSearch添加pom: <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-connector-kafka-0.9_2.11</arti...转载 2020-02-22 14:06:59 · 2794 阅读 · 0 评论 -
ElasticSearch-6.5.3集群环境搭建
参考文章:ElasticSearch-5.3.1集群环境搭建,安装ElasticSearch-head插件,安装错误解决elasticsearch系列八:ES 集群管理(集群规划、集群搭建、集群管理)...原创 2019-12-10 10:10:50 · 425 阅读 · 0 评论 -
ES索引写入性能优化
参考文章:ES索引写入性能优化Elasticsearch一些使用笔记(持续更新)-use1、用bulk批量写入你如果要往es里面灌入数据的话,那么根据你的业务场景来,如果你的业务场景可以支持让你将一批数据聚合起来,一次性写入es,那么就尽量采用bulk的方式,每次批量写个几百条这样子。bulk批量写入的性能比你一条一条写入大量的document的性能要好很多。但是如果要知道一个bu...转载 2019-12-10 09:11:15 · 375 阅读 · 0 评论 -
ES线程池设置
参考文章:ES线程池设置每个Elasticsearch节点内部都维护着多个线程池,如index、search、get、bulk等,用户可以修改线程池的类型和大小,线程池默认大小跟CPU逻辑一致一、查看当前线程组状态curl -XGET 'http://localhost:9200/_nodes/stats?pretty'"thread_pool": { "bulk": { ...转载 2019-11-25 10:12:42 · 5072 阅读 · 0 评论 -
elstaticsearch6.5.4 调优--总参
参考文章:死磕elasticsearch(六)写入速度优化超详细的ELASTICSEARCH高性能优化实践Elasticsearch调优实践--use关于线程池队列大小调优疑问-useElasticsearch Index模块elasticsearch性能调优如何提高ElasticSearch 索引速度ES线程池设置# vi /etc/elasticsearc...原创 2019-11-21 11:43:57 · 705 阅读 · 0 评论 -
elasticsearch-curator -- 参考
干货 | Elasticsearch索引管理利器——Curator深入详解elasticsearch-curator--简书原创 2019-11-12 16:10:21 · 282 阅读 · 0 评论 -
java ElasticSearch并发操作之乐观锁的使用
参考文章:java ElasticSearch并发操作之乐观锁的使用简介 ES在添加和更新操作,其实是不安全的,所有的数据库db系统都会存在并发问题像关系型数据库MySQL,Oracle,SQL Server默认采用的是悲观锁。 在ElasticSearch中采用的乐观锁,下面先熟悉下什么是乐观锁和悲观锁:悲观锁(Pessimistic Lock), 顾名...转载 2019-03-01 14:27:55 · 824 阅读 · 0 评论 -
一文上手 Elasticsearch常用可视化管理工具
参考文章:一文上手 Elasticsearch常用可视化管理工具elasticsearch-head 无法连接elasticsearch的原因和解决elasticsearch-head 安装,运行及无法连接es问题的原因和解决elasticsearch的索引自动清理及自定义清理elasticsearch集群文件及路径设置elasticsearch配置文件详解--------...转载 2019-02-26 00:47:55 · 1948 阅读 · 0 评论 -
elasticsearch迁移数据存储位置和日志存储位置
参考文章:Elastic数据迁移方法及注意事项1. 修改/etc/elasticsearch/elasticsearch.yml文件,修改数据文件存储位置: 默认位置: path.data: /var/lib/elasticsearch 修改为: path.data: /data/elasticsearch_data_dir修改日志文件存储位置: 默认位置: pa...原创 2019-02-26 17:50:11 · 19767 阅读 · 0 评论 -
elasticsearch的应用场景分析
参考文章: Elasticsearch、MongoDB和Hadoop比较 搜索引擎选型调研文档--------------------------------------------------------------------------------------------------ElasticSearch: 分布式实时文件存储,并将每...原创 2019-02-27 11:10:02 · 564 阅读 · 0 评论 -
springboot操作elasticsearch
参考文章:Elasticsearch之数据类型 SpringBoot整合Elasticsearch目录1. pom.xml配置2. application.yml文件配置3. entity文件配置4. repository配置5. controller调用6. repository自定义方法7. 其它查询方法--controll...原创 2019-02-27 15:01:20 · 5374 阅读 · 7 评论 -
spring data elasticsearch的一个复杂查询条件
原文地址:https://www.cnblogs.com/snake23/p/9438785.htmlCriteriaQuery criteriaQuery = new CriteriaQuery(new Criteria().and(new Criteria("clusterName").is("app")).and(new Criteria("ip").is("127.0.0.1...转载 2019-03-04 11:10:30 · 16881 阅读 · 6 评论