随笔分类 -  Elasticsearch

摘要:1. cross-fields搜索 一个唯一标识,跨了多个field。比如一个人,标识,是姓名;一个建筑,它的标识是地址。姓名可以散落在多个field中,比如first_name和last_name中,地址可以散落在country,province,city中。跨多个field搜索一个标识,比如搜索 阅读全文
posted @ 2017-07-01 16:58 天~宇~翱~翔 阅读(710) 评论(0) 推荐(0)
摘要:1. 为帖子数据增加content字段 POST /forum/article/_bulk { "update": { "_id": "1"} } { "doc" : {"content" : "i like to write best elasticsearch article"} } { "up 阅读全文
posted @ 2017-07-01 16:19 天~宇~翱~翔 阅读(925) 评论(0) 推荐(0)
摘要:1. 普通match如何转换为term+should { "match": { "title": "java elasticsearch"}} 使用诸如上面的match query进行多值搜索的时候,es会在底层自动将这个match query转换为bool的语法,bool should,指定多个搜 阅读全文
posted @ 2017-07-01 14:46 天~宇~翱~翔 阅读(1426) 评论(0) 推荐(0)
摘要:1. 为帖子增加标题字段 POST /forum/article/_bulk { "update": { "_id": "1"} } { "doc" : {"title" : "this is java and elasticsearch blog"} } { "update": { "_id": 阅读全文
posted @ 2017-07-01 14:25 天~宇~翱~翔 阅读(4945) 评论(1) 推荐(0)
摘要:1. fielddata核心原理 fielddata加载到内存的过程是lazy加载的,对一个analzyed field执行聚合时,才会加载,而且是field-level加载的,一个index的一个field,所有doc都会被加载,而不是少数doc,不是index-time创建,是query-tim 阅读全文
posted @ 2017-07-01 11:25 天~宇~翱~翔 阅读(1085) 评论(0) 推荐(0)
摘要:1. 需求:比如有一个网站,记录下了每次请求的访问的耗时,需要统计tp50,tp90,tp99 tp50:50%的请求的耗时最长在多长时间tp90:90%的请求的耗时最长在多长时间tp99:99%的请求的耗时最长在多长时间 PUT /website { "mappings": { "logs": { 阅读全文
posted @ 2017-07-01 11:17 天~宇~翱~翔 阅读(1898) 评论(0) 推荐(0)
摘要:1. 统计指定品牌下每个颜色的销量 任何的聚合,都必须在搜索出来的结果数据中进行,搜索结果,就是聚合分析操作的scope 2. 单个品牌与所有品牌销量对比 一个聚合操作,必须在query的搜索结果范围内执行出来两个结果,一个结果,是基于query搜索结果来聚合的; 一个结果,是对所有数据执行聚合的 阅读全文
posted @ 2017-07-01 10:19 天~宇~翱~翔 阅读(453) 评论(0) 推荐(0)
摘要:以一个家电卖场中的电视销售数据为背景,来对各种品牌,各种颜色的电视的销量和销售额,进行各种各样角度的分析,首先建立电视销售的索引,然后 添加几条销售记录 PUT /tvs { "mappings": { "sales": { "properties": { "price": { "type": "l 阅读全文
posted @ 2017-07-01 09:46 天~宇~翱~翔 阅读(677) 评论(0) 推荐(0)
摘要:首先明白两个核心概念:bucket和metric 1. bucket:一个数据分组 基于city划分buckets,划分出来两个bucket,一个是北京bucket,一个是上海bucket 北京bucket:包含了2个人,小李,小王上海bucket:包含了3个人,小张,小丽,小陈 按照某个字段进行b 阅读全文
posted @ 2017-07-01 08:47 天~宇~翱~翔 阅读(388) 评论(0) 推荐(0)
摘要:relevance score算法,简单来说,就是计算出,一个索引中的文本,与搜索文本,他们之间的关联匹配程度 Elasticsearch使用的是 term frequency/inverse document frequency算法,简称为TF/IDF算法 Term frequency(TF):搜 阅读全文
posted @ 2017-06-26 08:58 天~宇~翱~翔 阅读(2030) 评论(0) 推荐(0)
摘要:ElasticSearch 5.0.0 安装部署常见错误或问题 原因:报了一大串错误,大家不必惊慌,其实只是一个警告,主要是因为你Linux版本过低造成的。 解决方案: 1、重新安装新版本的Linux系统 2、警告不影响使用,可以忽略 问题二: ERROR: bootstrap checks fai 阅读全文
posted @ 2017-06-22 15:29 天~宇~翱~翔 阅读(351) 评论(0) 推荐(0)
摘要:1. 计算每个tag下的商品数量 GET /ecommerce/product/_search { "aggs": { "group_by_tags": { "terms": { "field": "tags" } } } } 2. 将文本field的fielddata属性设置为true PUT / 阅读全文
posted @ 2017-06-15 20:17 天~宇~翱~翔 阅读(2153) 评论(0) 推荐(0)
摘要:1. query string search 搜索全部商品:GET /ecommerce/product/_search took:耗费了几毫秒 timed_out:是否超时,这里是没有 _shards:数据拆成了5个分片,所以对于搜索请求,会打到所有的primary shard(或者是它的某个re 阅读全文
posted @ 2017-06-15 19:50 天~宇~翱~翔 阅读(840) 评论(0) 推荐(0)
摘要:1. document数据格式 面向文档的搜索分析引擎 (1)应用系统的数据结构都是面向对象的,复杂的(2)对象数据存储到数据库中,只能拆解开来,变为扁平的多张表,每次查询的时候还得还原回对象格式,相当麻烦(3)ES是面向文档的,文档中存储的数据结构,与面向对象的数据结构是一样的,基于这种文档数据结 阅读全文
posted @ 2017-06-15 11:38 天~宇~翱~翔 阅读(1310) 评论(0) 推荐(0)
摘要:在Elasticsearch中有许多术语和概念 1. 核心概念 Elasticsearch集群可以包含多个索引(indices)(数据库),每一个索引可以包含多个类型(types)(表),每一个类型包含多个文档(documents)(行),然后每个文档包含多个字段(Fields)(列) (1)Nea 阅读全文
posted @ 2017-06-14 15:47 天~宇~翱~翔 阅读(431) 评论(0) 推荐(0)
摘要:安装启动很简单,参考官网步骤:https://www.elastic.co/downloads/elasticsearch 为了介绍Elasticsearch中的不同查询类型,我们将对带有下列字段的文档进行搜索:title(标题),authors(作者),summary(摘要),release da 阅读全文
posted @ 2017-03-31 22:01 天~宇~翱~翔 阅读(63276) 评论(0) 推荐(2)
摘要:Elasticsearch的config文件夹里面有两个配置文件:elasticsearch.yml和logging.yml。第一个是es的基本配置文件,第二个是日志配置文件,es也是使用log4j来记录日志的,所以logging.yml里的设置按普通log4j配置文件来设置就行了。下面主要讲解下e 阅读全文
posted @ 2017-03-31 16:08 天~宇~翱~翔 阅读(1349) 评论(0) 推荐(0)