今天在做查询category的时候,遇到一个问题,查询出来的cateogry为food,fun的形式.但是我需要的只是food或者fun 不包含逗号. 开始想着在aggs后再做过滤,这样有些麻烦.遂在query中过滤掉category字段带逗号的. 同事说如果不做打分建议使用filter而不要使用query,这样会提高一定的效率.(注:打分只会对属性为text的字段,如果字段属性为keyword则不会打分) 所以在实际的需求中,只要不存在分词搜索那么都可以在的filter中将需要过滤的条件过滤掉…
这里有一篇很好的文章,很不错,翻译和整理了一下,英文不错的,建议直接看原文:http://euphonious-intuition.com/2013/05/all-about-elasticsearch-filter-bitsets/ elasticsearch里面有BOOL filter.AND.OR.NOT filter,这几个看起来很相似,都有什么区别呢?什么时候用boolfilter?什么时候用AND filter呢? 事实上,bool filter和AND .OR.NOT filter…
 前期博客 Logstash安装和设置(图文详解)(多节点的ELK集群安装在一个节点就好) Filebeat啊,根据input来监控数据,根据output来使用数据!!! 请移步, Filebeat之input和output(包含Elasticsearch Output .Logstash Output. Redis Output. File Output和 Console Output) Logstash啊,根据input来监控数据,根据output来使用数据!!! 手把手带你看官方文档(Lo…
IP,直接在case class里用string, 可以考虑先用其它程序生成相关的mapping,然后再去用spark填充数据…
刚接触elasticsearch,好多东西都不会用,百度了很多,都看不懂,终于摸索出了最简单的通过http建立mappings的方法~ 有人在建立mappings报各种错误,首先,如果你的这个索引中已经有数据了,你想修改,最简单的方法,重新建立一个新的索引,成功了以后,再将数据拷贝过来. 数据拷贝工具:https://www.npmjs.com/package/elasticsearch-reindex 1.示例说明,建立一个名为 rdx_index_v2的新索引 马赛克的部分,是你的服务器地址…
DELETE testindex 请求方式为 DELETE, 跟库名…
前期博客 基于CentOS6.5下Suricata(一款高性能的网络IDS.IPS和网络安全监控引擎)的搭建(图文详解)(博主推荐) 基于Ubuntu14.04下Suricata(一款高性能的网络IDS.IPS和网络安全监控引擎)的搭建(图文详解)(博主推荐) 参考官网 https://redmine.openinfosecfoundation.org/projects/suricata/wiki/_Logstash_Kibana_and_Suricata_JSON_output 注意,这官网,…
一.   Elasticsearch的基本概念 term索引词,在elasticsearch中索引词(term)是一个能够被索引的精确值.foo,Foo Foo几个单词是不相同的索引词.索引词(term)是可以通过term查询进行准确的搜索. text文本是一段普通的非结构化文字,通常,文本会被分析称一个个的索引词,存储在elasticsearch的索引库中,为了让文本能够进行搜索,文本字段需要事先进行分析:当对文本中的关键词进行查询的时候,搜索引擎应该根据搜索条件搜索出原文本. analysi…
ElasticSearch 2 (22) - 语言处理系列之标记规范化 摘要 将文本拆解成标记只是工作的一半.为了使这些标记更容易被搜索到,它们需要经过一个规范化的处理过程,以移除相同单词间不重要的差异(比如:大小写).或许我们还需要移除一些重要的差异,让esta.ésta和 está 可以作为相同的词被搜索.是会搜索 déjà vu 还是 deja vu 呢? 这是标记过滤器的工作,它从标记器接收一个标记流.我们可以有多个标记过滤器,他们各司其则,每个都将它们前一个标记过滤器的输出作为自己的新…
ElasticSearch 2 (18) - 深入搜索系列之控制相关度 摘要 处理结构化数据(比如:时间.数字.字符串.枚举)的数据库只需要检查一个文档(或行,在关系数据库)是否与查询匹配. 布尔是/非匹配是全文搜索的基础部分,但不止这些,我们也同样需要知道每个文档与查询的相关度,在全文搜索引擎中我们不仅需要找到匹配的文档,还需要根据他们相关度的高低,对他们进行排序. 全文相关的公式或相似算法(similarity algorithms) 会将多个因素合并起来,为每个文档生成一个相关度分数 *_…
ElasticSearch 2 (17) - 深入搜索系列之部分匹配 摘要 到目前为止,我们介绍的所有查询都是基于完整术语的,为了匹配,最小的单元为单个术语,我们只能查找反向索引中存在的术语. 但是,如果我们想匹配部分术语而不是全部改怎么办?部分匹配(Partial matching) 允许用户指定查找术语的一部分,然后找出所有包含这部分片段的词. 与我们想象的不一样,需要对术语进行部分匹配的需求在全文搜索引擎的世界并不常见,但是如果读者有SQL方面的背景,可能会在某个时候使用下面的SQL语句对…
ElasticSearch 2 (13) - 深入搜索系列之结构化搜索 摘要 结构化查询指的是查询那些具有内在结构的数据,比如日期.时间.数字都是结构化的.它们都有精确的格式,我们可以对这些数据进行逻辑操作,比较常见的操作包括比较时间区间,或者获取两个数字间的较大值. 文本也可以是结构化的.比如彩笔可以有红.绿.蓝颜色集合,一个博客可以有关键字标签 分布式 和 搜索 . 电商网站上的商品都有UPC(Universal Product Codes)或者其他需要严格结构化格式的唯一标识. 在结构化查…
0x00 ElasticSearch的索引和MySQL的索引方式对比 Elasticsearch是通过Lucene的倒排索引技术实现比关系型数据库更快的过滤.特别是它对多条件的过滤支持非常好,比如年龄在18和30之间,性别为女性这样的组合查询. 倒排索引很多地方都有介绍,但是其比关系型数据库的b-tree索引快在哪里?到底为什么快呢? 笼统的来说,b-tree索引是为写入优化的索引结构.当我们不需要支持快速的更新的时候,可以用预先排序等方式换取更小的存储空间,更快的检索速度等好处,其代价就是更新…
本章内容 如何选择正确的目录实现,使得ElasticSearch能够以高效的方式访问底层I/O系统. 如何配置发现模块来避免潜在的问题. 如何配置网关模块以适应我们的需求. 恢复模块能带来什么,以及如何更改它的配置. 如何查看段信息. ElasticSearch的缓存是什么样的,它的职责是什么,如何使用以及更改它的配置. 5.1 选择正确的目录实现-存储模块 存储模块是一个在配置集群时容易被忽视的模块,然而它非常重要.该模块允许用户控制索引的存储方式,例如,可以持久化存储(存储在磁盘上)或非持久…
Elasticsearch数据库 2018-05-06 11:30:48 七色米 阅读数 23634更多 分类专栏: 数据库   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/aisemi/article/details/80212836 1.什么是Elasticsearch 1.概念以及特点 1.Elasticsearch和MongoDB/Redis/Memcache一样,是非关系型数…
近似匹配 使用 TF/IDF 的标准全文检索将文档或者文档中的字段作一大袋的词语处理. match 查询可以告知我们这大袋子中是否包含查询的词条,但却无法告知词语之间的关系. 思考下面这几个句子的不同: Sue ate the alligator. The alligator ate Sue. Sue never goes anywhere without her alligator-skin purse. 用 match 搜索 sue alligator 上面的三个文档都会得到匹配,但它却不能…
核心概念 集群(Cluster) 一个Es集群由多个节点(Node)组成,每个集群都有一个共同的集群名称作为标识 节点(Node) 一个Es实例就是一个Node.Es的配置文件中可以通过node.master.node.data来设置节点类型. Es的节点有如下几个类型: 主节点 master节点在每个集群中有且只有一个.master节点应该只承担轻量级的任务:如创建删除索引.分片均衡等 # 设置为true node.master: true # 尽量设置主节点不为数据节点,提⽰效率 node.…
  1.Filter的功能filter功能,它使用户可以改变一个 request和修改一个response. Filter 不是一个servlet,它不能产生一个response,它能够在一个request到达servlet之前预处理request,也可以在离开 servlet时处理response.换种说法,filter其实是一个”servlet chaining”(servlet 链). 一个Filter包括: 1).在servlet被调用之前截获; 2).在servlet被调用之前检查se…
分布式搜索的执行方式 在继续之前,我们将绕道讲一下搜索是如何在分布式环境中执行的. 它比我们之前讲的基础的增删改查(create-read-update-delete ,CRUD)请求要复杂一些. 注意: 本章的信息只是出于兴趣阅读,使用Elasticsearch并不需要理解和记住这里的所有细节. 阅读这一章只是增加对系统如何工作的了解,并让你知道这些信息以备以后参考,所以别淹没在细节里. 一个CRUD操作只处理一个单独的文档.文档的唯一性由_index, _type和routing-value…
template的使用  刚开始的时候,每次实验都去改/etc/elasticsearch/elasticsearch.yml配置文件.事实上在template里修改settings更方便而且灵活!当然最主要的,还是调节里面的properties设定,合理的控制store和analyze了.  template设定也有多种方法.最简单的就是和存储数据一样POST上去.长期的办法,就是写成json文件放在配置路径里.其中,default配置放在/etc/elasticsearch/下,其他配置放在…
Elasticsearch 系列导航 elasticsearch 与 elasticsearch-head 的安装 ElasticSearch Index API && Mapping 在ElasticSearch中使用 IK 中文分词插件 ElasticSearch 基本概念 Nest客户端的基本使用方法 持续更新中 正文 假设你已经有一份数据保存在Elasticsearch里,类似于下面这种schema,如果没有参考导入测试数据 { "account_number"…
在使用elasticsearch的时候,经常会遇到需要淘汰掉历史数据的场景. 为了方便数据淘汰,并使得数据管理更加灵活,我们经常会以时间为粒度建立索引,例如: 每个月建立一个索引:monthly-201709.monthly-201710.monthly-201711 每天建立一个索引:daily-20171015.daily-20171016.daily-20171017.daily-20171018 当不需要再继续使用历史数据的时候,我们就可以将索引删除,释放资源. 为了很好的支撑这个场景,…
转载 http://blog.csdn.net/endlu/article/details/51720299 最近在参与一个基于Elasticsearch作为底层数据框架提供大数据量(亿级)的实时统计查询的方案设计工作,花了些时间学习Elasticsearch的基础理论知识,整理了一下,希望能对Elasticsearch感兴趣/想了解的同学有所帮助. 同时也希望有发现内容不正确或者有疑问的地方,望指明,一起探讨,学习,进步. 介绍 Elasticsearch 是一个分布式可扩展的实时搜索和分析引…
最近在参与一个基于Elasticsearch作为底层数据框架提供大数据量(亿级)的实时统计查询的方案设计工作,花了些时间学习Elasticsearch的基础理论知识,整理了一下,希望能对Elasticsearch感兴趣/想了解的同学有所帮助. 同时也希望有发现内容不正确或者有疑问的地方,望指明,一起探讨,学习,进步. 介绍 Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene(TM) 基础上的搜索引擎.当然 Elasticsear…
Elasticsearch-基础介绍及索引原理分析 最近在参与一个基于Elasticsearch作为底层数据框架提供大数据量(亿级)的实时统计查询的方案设计工作,花了些时间学习Elasticsearch的基础理论知识,整理了一下,希望能对Elasticsearch感兴趣/想了解的同学有所帮助. 同时也希望有发现内容不正确或者有疑问的地方,望指明,一起探讨,学习,进步. 介绍 Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene(T…
在使用elasticsearch的时候,经常会遇到需要淘汰掉历史数据的场景. 为了方便数据淘汰,并使得数据管理更加灵活,我们经常会以时间为粒度建立索引,例如: 每个月建立一个索引:monthly-201709.monthly-201710.monthly-201711 每天建立一个索引:daily-20171015.daily-20171016.daily-20171017.daily-20171018 当不需要再继续使用历史数据的时候,我们就可以将索引删除,释放资源. 为了很好的支撑这个场景,…
解剖 Elasticsearch 集群 - 之一 本篇文章是一系列涵盖 Elasticsearch 底层架构和原型示例的其中一篇.在本篇文章中,我们会讨论底层的存储模型以及 CRUD(创建.读取.更新和删除)操作在 Elasticsearch 中是如何工作的. 全文搜索(Full-text search) 例如,找到与搜索词最为相关的维基百科文章. 聚合(Aggregations) 例如,对搜索词在广告网络中进行直方图可视化展示. 空间地理位置 API(Geospatial API) 例如,拼车…
介绍 Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene(TM) 基础上的搜索引擎.当然 Elasticsearch 并不仅仅是 Lucene 那么简单,它不仅包括了全文搜索功能,还可以进行以下工作: 分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索. 实时分析的分布式搜索引擎. 可以扩展到上百台服务器,处理PB级别的结构化或非结构化数据. 基本概念 先说Elasticsearch的文件存储,Elasticsearc…
最近在参与一个基于Elasticsearch作为底层数据框架提供大数据量(亿级)的实时统计查询的方案设计工作,花了些时间学习Elasticsearch的基础理论知识,整理了一下,希望能对Elasticsearch感兴趣/想了解的同学有所帮助. 同时也希望有发现内容不正确或者有疑问的地方,望指明,一起探讨,学习,进步. 介绍 Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene(TM) 基础上的搜索引擎.当然 Elasticsear…
1. 背景 Elasticsearch 在公司的使用越来越广,很多同事之前并没有接触过 Elasticsearch,所以,最近在公司准备了一次关于 Elasticsearch 的分享,整理成此文.此文面向 Elasticsearch 新手,老司机们可以撤了. 2. 倒排索引 先简单介绍下搜索引擎的基础数据结构倒排索引. 我们在平时,会经常使用各种各样的索引,如我们根据链接,可以找到链接里的具体文本,这就是索引.反过来,如果,如果我们能根据具体文本,找到文本存在的具体链接,这就是倒排索引,可简单理…