随笔分类 - Log
摘要:ElasticSearch 2 (18) 深入搜索系列之控制相关度 摘要 处理结构化数据(比如:时间、数字、字符串、枚举)的数据库只需要检查一个文档(或行,在关系数据库)是否与查询匹配。 布尔是/非匹配是全文搜索的基础部分,但不止这些,我们也同样需要知道每个文档与查询的相关度,在全文搜索引擎中我们不
阅读全文
摘要:ElasticSearch 2 (17) 深入搜索系列之部分匹配 摘要 到目前为止,我们介绍的所有查询都是基于完整术语的,为了匹配,最小的单元为单个术语,我们只能查找反向索引中存在的术语。 但是,如果我们想匹配部分术语而不是全部改怎么办? 部分匹配(Partial matching) 允许用户指定查
阅读全文
摘要:ElasticSearch 2 (16) 深入搜索系列之近似度匹配 摘要 标准的全文搜索使用TF/IDF处理文档、文档里的每个字段或一袋子词。 match 查询可以告诉我们哪个袋子里面包含我们搜索的术语,但这只是故事的一部分。它并不能告诉我们词语之间的关系。 考虑下面句子的区别: Sue ate t
阅读全文
摘要:ElasticSearch 2 (15) 深入搜索系列之多字段搜索 摘要 查询很少是简单的一句话匹配(one clause match )查询。很多时候,我们需要用相同或不同的字符串查询1个或多个字段,也就是说,我们需要对多个查询语句以及他们相关分数(relevance scores)进行有意义的合
阅读全文
摘要:ElasticSearch 2 (14) 深入搜索系列之全文搜索 摘要 在看过结构化搜索之后,我们看看怎样在全文字段中查找相关度最高的文档。 全文搜索两个最重要的方面是: 相关(relevance) 相关是将查询到相关的文档结果进行排名的一种能力,这种相关度可以是根据TF/IDF、地理位置相似性(g
阅读全文
摘要:ElasticSearch 2 (13) 深入搜索系列之结构化搜索 摘要 结构化查询指的是查询那些具有内在结构的数据,比如日期、时间、数字都是结构化的。它们都有精确的格式,我们可以对这些数据进行逻辑操作,比较常见的操作包括比较时间区间,或者获取两个数字间的较大值。 文本也可以是结构化的。比如彩笔可以
阅读全文
摘要:ElasticSearch 2 (12) Shard数调优(ElasticSearch性能) 摘要 当创建一个索引的时候,我们经常会面对一个问题:要为索引分配多少个shard?多少个replica?对于这个问题,仍然没有明确的统一答案,但是本文会给出一些引导,方便在实施ElasticSearch时给
阅读全文
摘要:ElasticSearch 2 (11) 节点调优(ElasticSearch性能) 摘要 一个ElasticSearch集群需要多少个节点很难用一种明确的方式回答,但是,我们可以将问题细化成一下几个,以便帮助我们更好的了解,如何去设计ElasticSearch节点的数目: 1. 打算处理多少数据?
阅读全文
摘要:ElasticSearch 2 (10) 在ElasticSearch之下(深入理解Shard和Lucene Index) 摘要 从底层介绍ElasticSearch Shard的内部原理,以及回答为什么使用ElasticSearch有必要了解Lucene的内部工作方式? 了解ElasticSear
阅读全文
摘要:ElasticSearch 2 (9) 在ElasticSearch之下(图解搜索的故事) 摘要 先自上而下,后自底向上的介绍ElasticSearch的底层工作原理,试图回答以下问题: 为什么我的搜索 \ foo bar\ 无法匹配 foo bar ? 为什么增加更多的文件会压缩索引(Index)
阅读全文
摘要:ELK Stack (2) —— ELK + Redis收集Nginx日志 摘要 使用Elasticsearch、Logstash、Kibana与Redis(作为缓冲区)对Nginx日志进行收集 版本 elasticsearch版本: elasticsearch 2.2.0 logstash版本:
阅读全文
摘要:ELK Stack (1) —— ELK + Redis安装 摘要 安装Elasticsearch、Logstash、Kibana与Redis以实现一个日志收集平台 版本 elasticsearch版本: elasticsearch 2.2.0 logstash版本: logstash 2.2.2
阅读全文