随笔分类 - ElasticSearch
摘要:需求 1. 把分布式系统,集群日志集中处理快速查询 2. 搭建ELK并与springboot日志输出结合 搭建ELK 1. 基于我前面的elasticsearch搭建博客文档docker compose.yml基础上进行添加修改 2. 新建docker compose.yml文件,内容如下 kiba
阅读全文
摘要:创建索引 1. 当我们需要确保索引被创建在适当数量的分片上,在索引数据之前设置好分析器和类型映射。 2. 手动创建索引,在请求中加入所有设置和类型映射,如下所示: 3. 你可以通过在 config/elasticsearch.yml 中添加下面的配置来防止自动创建索引。 删除索引 1. 使用以下的请
阅读全文
摘要:查询阶段 1. 在初始化查询阶段(query phase),查询被向索引中的每个分片副本(原本或副本)广播。 2. 每个分片在本地执行搜索并且建立了匹配document的优先队列(priority queue)。 优先队列 一个优先队列(priority queue is)只是一个存有前n个(top
阅读全文
摘要:ES5的变化 1. search_type=count和scan都移除了 2. count可以用size=0代替 3. scan用下面的_doc代替,按_doc 排序是经过优化的,他和scanAPI有一样的效果 4. fields参数被stroed_fields取代了,stroed_fields只返
阅读全文
摘要:排序方式 1. 相关性排序 默认情况下,结果集会按照相关性进行排序 相关性越高,排名越靠前。 相关性分值会用_score字段来给出一个浮点型的数值,所以默认情况下,结果集以_score进行倒序排列。 2. 字段值排序 使用 sort 参数进行排序: 你会发现这里有两个不同点: 3. 默认排序 指定要
阅读全文
摘要:请求体查询 1. 简单查询语句(lite)是一种有效的命令行adhoc查询。但是,如果你想要善用搜索,你必须使用请求体查询(request body search)API。 2. 空查询 我们以最简单的 search API开始,空查询将会返回索引中所有的文档。 GET /_search {} 同字
阅读全文
摘要:概念 1. 映射(mapping)机制用于进行 字段类型确认 ,将每个字段匹配为一种确定的数据类型(string, number, booleans, date等)。+ 2. 分析(analysis)机制用于进行全文文本(Full Text)的 分词 ,以建立供搜索用的反向索引。 数据类型差异 1.
阅读全文
摘要:路由文档到分片 1. 当你索引一个文档,它被存储在单独一个主分片上。Elasticsearch是如何知道文档属于哪个分片的呢?当你创建一个新文档,它是如何知道是应该存储在分片1还是分片2上的呢? 2. 进程不能是随机的,因为我们将来要检索文档。事实上,它根据一个简单的算法决定: shard = ha
阅读全文
摘要:什么是文档 1. 在Elasticsearch中,文档(document)这个术语有着特殊含义。它特指最顶层结构或者根对象(root object)序列化成的JSON数据(以唯一ID标识并存储于Elasticsearch中) 2. 文档元数据 节点| 说明 | _index| 文档存储的地方 _ty
阅读全文
摘要:空集群 1. 只有一个空节点的集群 一个节点(node)就是一个Elasticsearch实例,而一个集群(cluster)由一个或多个节点组成,它们具有相同的cluster.name,它们协同工作,分享数据和负载。当加入新的节点或者删除一个节点时, 集群就会感知到并平衡数据 。 集群中一个节点会被
阅读全文
摘要:如何超出扩容极限,以及如何提升容错性 1. primary&replica自动负载均衡,6个shared,3个primary,3个replica,随着机器扩容,会被均衡分配到多台机器上 2. 6个shared,要扩容到9台机器,增加replica shared数量,primary shared数量是
阅读全文
摘要:es的六种搜索方式 1. query string search 2. query DSL DSL:Domain Specified Language:特定领域的语言 http request body:请求体,用json格式构建查询语法 3. query filter 4. full text s
阅读全文
摘要:需求 1. 用docker搭建一个ElasticSearch一主一从的集群,加一个elasticsearch head查看集群状态 步骤 1. 在参考了一堆博客后,我写了个固定容器ip的docker compose.yml es1.yml es2.yml docker compose.yml 遇到的
阅读全文