![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
elastic-search
文章平均质量分 65
wyaoyao93
小白
展开
-
23 Rest高级客户端实践(九):批量搜索
文章目录1 代码Java客户端还提供了批量搜索的1 代码使用MultiSearchRequest将多个SearchRequest收集起来而已package study.wyy.esclient.high.search;import lombok.extern.slf4j.Slf4j;import lombok.var;import org.elasticsearch.action.search.MultiSearchRequest;import org.elasticsearch.act原创 2021-01-14 16:21:55 · 363 阅读 · 0 评论 -
22 Rest高级客户端实践(八):滚动搜索
文章目录1 同步执行Search Scroll API :可以获取大量的搜索结果,有点类似于MySQL的分页查询1 同步执行package study.wyy.esclient.high.search;import lombok.extern.slf4j.Slf4j;import org.elasticsearch.action.search.*;import org.elasticsearch.client.RequestOptions;import org.elasticsearch.原创 2021-01-14 11:12:43 · 154 阅读 · 0 评论 -
21 Rest高级客户端实践(七):一个小案例
文章目录1 准备2 编码1 准备之前的索引PUT books{ "settings": { "number_of_shards": 3, "number_of_replicas": 1 }, "mappings": { "properties": { "id":{ "type": "long" }, "title":{ "type": "text",原创 2021-01-13 16:40:21 · 109 阅读 · 0 评论 -
20 Rest高级客户端实践(六):搜索入门和基本API介绍
文章目录1 入门程序1 入门程序通过入门程序,简单的对搜索Java API有一个整体的认识。来个基本的搜索:GET books/_search{ "query": { "match_all": {} }}package study.wyy.esclient.high.search;import com.fasterxml.jackson.databind.ObjectMapper;import lombok.extern.slf4j.Slf4j;import org.原创 2021-01-12 17:44:40 · 423 阅读 · 0 评论 -
19 Rest高级客户端实践(五):文档其他操作
文章目录1 文档查询时更新(todo)1 文档查询时删除(todo)1 文档查询时更新(todo)在文档查询时更新接口,以更新索引中的文档,与update的更新方式不同:查询时更新(update_by_ query)是在不更改源的情况下对索引中的每个文档进行更新1 文档查询时删除(todo)...原创 2021-01-12 16:21:08 · 89 阅读 · 0 评论 -
18 Rest高级客户端实践(五):ReIndex
文章目录1 文档的ReIndex1 文档的ReIndex当从一个或者更多的索引中复制相关的文档到一个新的索引中需要重建索引。需要指出的是不会尝试自动设置目标索引的相关设置,不会复制源索引的设置。因此用户需要在reIndex之前,设置目标索引,包括设置映射,分片数量,副本数量。构建ReIndexRequest:核心就是设置源索引和目标索引,还有一下其他可选配置执行请求解析响应先去创建一个索引:PUT books_copy{ "settings": { "number_of_sh原创 2021-01-12 15:24:36 · 808 阅读 · 2 评论 -
17 Rest高级客户端实践(三):文档的批量操作
文章目录1 批量请求(Bulk)2 批量处理器3 批量获取(MultiGet)1 批量请求(Bulk)可通过单次请求执行多个操作,如文档索引,文档更新,文档删除等操作。构建请求执行:同步和异步解析响应在这为了方便,我直接将响应序列化为json了package study.wyy.esclient.high.document;import lombok.extern.slf4j.Slf4j;import org.elasticsearch.action.bulk.BulkReques原创 2021-01-12 12:24:05 · 561 阅读 · 0 评论 -
16 Rest高级客户端实践(二):文档删除、更新
文章目录1 文档存在性校验2 删除文档3 更新文档4 获取文档的词向量如果对es Java客户端不了解的,可以先看一下上一篇 Rest高级客户端实践(一):文档索引1 文档存在性校验顾名思义,校验文档是否在指定索引库中存在:构建请求参数执行请求:分为异步和同步解析响应package study.wyy.esclient.high.document;import lombok.SneakyThrows;import lombok.extern.slf4j.Slf4j;import原创 2021-01-11 16:31:27 · 258 阅读 · 0 评论 -
15 Rest高级客户端实践(一):文档索引
文章目录1 准备工作2 构建高级客户端3 创建索引3.1 构建创建索引的请求设置分片数量1 准备工作依赖<dependencies> <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-high-level-client</artifactId>原创 2021-01-11 10:58:40 · 609 阅读 · 0 评论 -
14 低级客户端入门
文章目录1 环境准备1.1 依赖1.2 索引库准备2 客户端初始化2.1 基本用法2.2 可配置项目配置请求头配置失败监听器配置节点选择器配置超时时间配置线程数3 构建请求4 执行请求4.1 同步执行4.2 异步执行API介绍示例5 响应解析1 环境准备1.1 依赖依赖<dependencies> <dependency> <groupId>org.elasticsearch.client</groupId>原创 2021-01-08 14:52:00 · 306 阅读 · 0 评论 -
13 搜索之DSL--高级查询
文章目录1 环境准备2 布尔查询(bool)演示3 最佳匹配字段3.1 引入3.2 dis_max查询3.3 tie_breaker参数4 过滤(filter)4.1 入门4.2 constant_score5 高亮5.1 入门5.2 自定义高亮标签5.3 多字段高亮5.4 高亮性能分析6 排序默认排序6.2 多字段排序1 环境准备新建一个索引库itemPUT item{ "mappings":{ "properties":{ "id":{原创 2021-01-02 21:07:36 · 232 阅读 · 0 评论 -
12 搜索之DSL--基础查询
文章目录1 DSL介绍查询和过滤的区别2 叶查询子句2.1 match 查询查询所有(match_all)1 DSL介绍Elasticsearch提供了基于JSON的完整查询DSL(Domain Specific Language)来定义查询。将查询DSL视为查询的AST(抽象语法树),它由两种子句组成:叶子查询子句(Leaf query clauses)在特定字段中查找特定值, 例如match,term或range查询复合查询子句(Compound query clauses)以逻原创 2021-01-02 18:29:19 · 1101 阅读 · 0 评论 -
11 搜索之url搜索和搜索类型
文章目录1 准备数据2 url搜索1 准备数据构建个文章的索引PUT article{ "mappings": { "properties": { "id":{ "type": "long" }, "title":{ "type": "text", "analyzer": "ik_max_word" }, "category":{ "type": "keywor原创 2020-12-31 16:15:20 · 3113 阅读 · 0 评论 -
10 映射(mappings)介绍和基本API
文章目录1 概念1.1 映射类型1.2 字段类型1 概念映射是定义存储和索引的文档类型以及字段的过程。一个映射定义了文档结构内的每个字段的数据类型。映射通过配置来定义字段类型与该类型相关联的元数据类型。可以在映射中预先定义字段的数据类型,分词器,字段权重等属性1.1 映射类型映射分为静态映射和动态映射之前创建索引的时候并没设置这些信息,es会在文档写入的时候,根据字段的类型进行自动判断,这个就是动态映射。静态映射则是在写入数据之前进行手工映射。映射主要包括:元字段:用来定义如何处理文原创 2020-11-30 07:23:36 · 3014 阅读 · 0 评论 -
09 文档(document)操作
文章目录1 新增文档1.1 指定id创建1.2 不指定指定id创建1.3 自动创建索引1.4 版本号1.5 操作类型1.6 分片选择1.7 其他说明2 ID查询文档2.1 入门2.2 禁用实时性2.3 _source2.3.1 不返回_source字段2.3.1 只返回_source字段(只获取文档内容)2.3.2 过滤_source2.4 分片选择2.5 其他查询参数2.6 多文档查询3 更新文档4 删除文档文档是具体的数据,类似于数据库中的一条数据,文档必须包含在一个索引中1 新增文档需要注意的是原创 2020-11-29 22:04:59 · 499 阅读 · 0 评论 -
08 索引操作
文章目录1 索引介绍2 索引管理2.1 创建索引创建索引注意点2.2 查看索引2.3 打开/关闭索引2.4 删除索引3 索引别名(后面在补充)3.1 添加索引3.2 删除别名3.3 修改别名3.4 一个别名关联多个索引3.5 过滤索引别名4 索引配置4.1 获取配置4.2 更新索引的分片信息4.3 更新分词器4.4 索引的读写权限1 索引介绍索引就是就有相同结构的文档集合。2 索引管理2.1 创建索引创建之前先查看一下所有的索引:请求:GET _cat/indices响应gr原创 2020-11-29 15:39:22 · 384 阅读 · 0 评论 -
06 kibana安装
文章目录1 介绍2 安装2.1 Mac安装1 介绍Kibana是一个针对Elasticsearch的开源分析及可视化平台,用来搜索、查看交互存储在Elasticsearch索引中的数据。使用Kibana,可以通过各种图表进行高级数据分析及展示。Kibana让海量数据更容易理解。它操作简单,基于浏览器的用户界面可以快速创建仪表板(dashboard)实时显示Elasticsearch查询动态。设置Kibana非常简单。无需编码或者额外的基础架构,几分钟内就可以完成Kibana安装并启动Elastics原创 2020-11-29 09:53:01 · 213 阅读 · 0 评论 -
05 elasticSearch的架构设计的简单介绍
文章目录1 架构图2 节点自动发现机制2.1 单播模式2.2 多播模式3 节点类型1 架构图2 节点自动发现机制es内部,通过在集群中配置一个相同的集群名称(cluster.name)就能够将不同的节点链接到一个集群中。这是怎么实现的呢?—> 节点自动发现机制es内部主要提供了4种自动发现机制。其中一个是默认实现,其他都是通过插件实现的。Azure discovery: 多播模式EC2 discovery: 多播模式Google Computer Engine (GCE)discov原创 2020-11-28 20:10:06 · 190 阅读 · 0 评论 -
04 elasticSearch核心概念
文章目录1 核心概念和术语1 核心概念和术语elasticSearch的核心概念有:Node,Cluster,Shards,Replicas,Index,Type,Document,Settings,Mapping,和Analyzer。Node即节点。节点是组成elasticSearch集群的基本服务单元,集群中的每个运行中的elasticSearch服务器都可称之为节点。Cluster即集群。elasticSearch的集群是由具有相同cluster.name(默认值为elastics原创 2020-11-28 18:52:46 · 134 阅读 · 0 评论 -
03 ELasticSearch介绍与安装
文章目录1 简介2 安装1 简介Elastic官网ElasticSearch具备以下特点:分布式,无需人工搭建集群(solr就需要人为配置,使用Zookeeper作为注册中心)Restful风格,一切API都遵循Rest原则,容易上手近实时搜索,数据更新在ElasticSearch中几乎是完全同步的。实时分析的分布式搜索引擎。ElasticSearch的索引可以拆成多个分片,每个分片可以有零个多个副本。集群中的每个数据节点都可以承载一个或多个分片,并且协调和处理各种操作;高扩展性,可以扩展原创 2020-11-28 16:27:45 · 189 阅读 · 0 评论 -
02 搜索技术的基础知识
文章目录1 数据搜索方式2 搜索引擎的原理1 数据搜索方式对于开发人员对数据的结构化感知会特别强烈。比如结构化数据我们一般会放到关系型数据库中,比如MySQL,Oracle。结构化数据有固定的字段类型和长度,因此可以使用二维化的表结构来承载。对于非结构化数据一般会放入MongoDB这种非关系性数据库。数据的搜索也因此分为结构化数据搜索和非结构化数据搜索。对于结构化数据来说,可以基于关系型数据库进行搜索,比如可以进行顺序扫描,字段精确匹配,部分匹配等等。但对于非结构化数据,主要的搜索方式有顺序的扫原创 2020-11-26 22:25:01 · 170 阅读 · 0 评论 -
01 搜索技术的发展史
文章目录1 搜索技术的发展历史2 五大阶段3 两大分类1 搜索技术的发展历史搜索引擎的发展经历了5个阶段和两大分类。五个阶段:FTP文件检索阶段分类目录导航阶段文本相关性检索阶段网页链接分析阶段用户意图识别阶段两大分类:站内搜索站外搜索2 五大阶段FTP文件检索阶段该阶段搜索引擎只检索多个FTP服务器存储的文件,比如:Archie。用户搜索文件时需要输入精确的文件名来进行搜索查找,搜索引擎会告诉用户从哪一个FTP地址可以下载需要的文件分类目录导航阶段该阶段搜索原创 2020-11-26 22:01:53 · 1144 阅读 · 0 评论