Elastic Search入门到实践
1、elastic search相关术语
2、elastic search倒排索引与分词相关
3、elastic search之mapping相关
4、elastic search之search api相关
5、elastic search之集群
6、elastic其他产品……
饭一碗
Java工程师
展开
-
mysql和elastic search数据同步方案
方案一利用es api实时写入es中优点:实时性高,能灵活控制写入es的时间缺点:同步方案与业务逻辑耦合,严重依赖于es api,破坏了原有业务程序逻辑demo:https://blog.csdn.net/fanrenxiang/article/details/86509688备注:实时同步的场景比较多,比如后台维护(CRUD)基础数据或者接口调用时候,把es同步写逻辑加入到之...原创 2019-01-22 14:43:43 · 3475 阅读 · 0 评论 -
Elastic Search Java API(文档操作API、Query DSL查询API)、es搜索引擎实战demo
elastic search实战小demo:https://github.com/simonsfan/springboot-quartz-demo,分支:feature_es之前在 Elastic Search之Search API(Query DSL)、Elasticsearch之索引和文档API 文章中讲到过elastic search(以下简称es)的以下常用的原生api,本篇开始讲述如...原创 2019-01-17 18:48:17 · 30356 阅读 · 0 评论 -
NoNodeAvailableException[None of the configured nodes are available: [{#transport#-1}{QVFHsEVaRHiYIb
使用java api和elastic search进行交互时,进行到如下代码编写:elasticsearch: cluster: name: elasticsearch host: 127.0.0.1 port: 9200SearchRequestBuilder searchRequestBuilder = this.esClient .prep...原创 2019-01-17 11:18:22 · 58834 阅读 · 2 评论 -
Elastic Search之分页展示
类似于mysql中select ……limit n,m,限制返回的结果集条数并分页显示,需要用到elastic search中的分页参数。es提供了三种api方式进行分页:from size scroll search_afterfrom/size进行分页from/size进行时分页是es中最常用的分页方案,from表示开始位置偏移量(从0开始),size表示条数大小,和mysq...原创 2019-01-16 14:43:12 · 3923 阅读 · 0 评论 -
Elastic Search之Source Filtering(过滤结果中"_source"原始文本显示哪些字段)
之前在 elastic search之索引和文档 一文中简单说到过,查询语句返回的json中的"_source"字段就是文档的全部原始json数据,里面包含每个字段及内容,但有时候我们可能不需要这么多字段,也可能只需要其中的某几个字段,并且返回全部字段有时也浪费,这个时候通过"_source"参数便可以设置需要返回哪些具体的字段,甚至是不需要返回,我们可以类比mysql的select特定字段,而不...原创 2019-01-15 15:27:33 · 9284 阅读 · 0 评论 -
Elastic Search之Count API(获取符合条件的记录数)
上篇说到elastic search(简称es)中常用的search api,但有时候我们不需要满足条件的原始文档数据,而是需要返回符合条件的文档数,类似于mysql的select count(*)查询条数,es中进行count查询的api的endpoint为"_count",如下示例:返回的count节点即表示符合条件的匹配数目。"_count"支持多个索引同时查询符合条件的匹配数:...原创 2019-01-15 14:01:08 · 79623 阅读 · 6 评论 -
Elastic Search之Search API(Query DSL)、字段类查询、复合查询
search api就是对存储在elastic search(以下简称es)中的数据进行查询的相关API,可以类比mysql中的select语句。es中的search主要分为URI Search和Query DSL,其中又以Query DSL语法为主,也是我们学习es所要重点掌握的,例如如下的查询:es的Query DSL以_search为endpoint,主要分为字段类查询和复合查询()...原创 2019-01-15 10:33:12 · 19179 阅读 · 0 评论 -
Elastic Search之自定义Mapping
这里说的Mapping就是索引结构,你可以看做是数据库中的表结构,包括字段名、字段类型、倒排索引相关设置。es中查询索引的mapping结构api的endpoint为_mapping,如下图:右侧的查询结果我们就称为索引的"mapping"。接着来看es中如何创建自定义mapping,api如下: Field datatypes(字段类型)es中支持的数据类型在 Elastic...原创 2018-12-28 12:51:54 · 4138 阅读 · 1 评论 -
Elastic Search之分词
分词(Analysis):将文本切分为一系列单词的过程,比如 "美国留给伊拉克的是个烂摊子吗?"经过分词后的后果为:美国、伊拉克、烂摊子。分词器(Analyzer):elasticsearch中执行的分词的主体,官方把分词器分成三个层次:Character Filters:针对文档的原始文本进行处理,例如将印度语的阿拉伯数字"0 12345678 9"转换成拉丁语的阿拉伯数字"012345...原创 2018-12-27 15:44:24 · 11775 阅读 · 0 评论 -
Elasticsearch之倒排索引
之前说到es搜索引擎中的核心就是倒排索引,每个字段都会维护自己的倒排索引(除非显式的关闭了),倒排索引的结构组成如下:单词词典(Term Dictionary):记录所有文档的单词,占用数据量比较大,记录了从单词到到排列表的关联信息,一般会采用B+Tree结构实现; 倒排列表(Posting List):记录着单词词典对应的文档集合,它又由倒排索引项(Posting)构成,倒排索引项包括:...原创 2018-12-27 11:38:25 · 1979 阅读 · 0 评论 -
Elasticsearch入门与安装
Elasticsearch 是一个开源的搜索引擎,建立在一个全文搜索引擎库 Apache Lucene™ 基础之上。然而,Elasticsearch 不仅仅是 Lucene,并且也不仅仅只是一个全文搜索引擎。 它可以被下面这样准确的形容:一个分布式的实时文档存储,每个字段 可以被索引与搜索 一个分布式实时分析搜索引擎 能胜任上百个服务节点的扩展,并支持 PB 级别的结构化或者非结构化数...原创 2018-12-26 15:00:20 · 1009 阅读 · 0 评论 -
Elasticsearch之索引和文档、文档API
文档Document用户存储在es中的数据文档,相当于mysql的表中的一行,Json结构形式,由字段组成,常见数据类型如下:字符串:text、keyword,text是分词,keyword是不分词的 数值型:long、integer、short、byte、double、float、half_float、scaled_float 布尔:boolean 日期:date 二进制:bi...原创 2018-12-26 16:08:24 · 4948 阅读 · 0 评论