
elasticsearch
文章平均质量分 56
u010585120
这个作者很懒,什么都没留下…
展开
-
elasticsearch中更新mapping的方式
curl -XPUT localhost:9200/my_index/my_type/_mapping -d '{ "my_type": { "properties": { "created": { "type": "multi_field", "fields": {原创 2015-08-12 08:58:19 · 5051 阅读 · 0 评论 -
邻近匹配中的多值字段查询
多值字段(Multivalue Fields)在多值字段上使用短语匹配会产生古怪的行为:PUT /my_index/groups/1{ "names": [ "John Abraham", "Lincoln Smith"]}运行一个针对Abraham Lincoln的短语查询:GET /my_index/groups/_search{ "q转载 2015-09-16 11:15:02 · 555 阅读 · 0 评论 -
Elasticsearch中的邻近匹配【proximity Matching】
使用了TF/IDF的标准全文搜索将文档或者文档中的某个字段,视为一大袋子单词。match查询能够告诉我们这个袋子当中是否包含了我们所要生产的单词,但是这只是一个方面。它不能告诉我们单词之间任何关系的信息。考虑以下这些句子的区别:Sue ate the alligator.The alligator ate Sue.Sue never goes any转载 2015-09-15 11:18:56 · 617 阅读 · 0 评论 -
多次查询以及查询的合并
如果我们一次只能搜索一个词,那么全文搜索就会显得相当不灵活。幸运的是,通过match来实现多次查询也同样简单:GET /my_index/my_type/_search{ "query": { "match": { "title": "BROWN DOG!" } }}以上查询会返回所有的四份文档:{转载 2015-09-14 14:44:58 · 1152 阅读 · 0 评论 -
match查询
全文搜索(full text search):对于文本的查询可以分为两类:基于词条的查询(Term-based Queries)和全文查询(Full-Text Queries)基于词条的查询:类似于term和fuzzy的查询是不含有解析阶段的低级查询。它们在单一词条上进行操作。一个针对词条Foo的term查询会在倒排索引中寻找该词条的精确匹配(Exact term),然后对每一份含有该转载 2015-09-14 13:36:01 · 619 阅读 · 0 评论 -
Elasticsearch中的动态映射
转载自:http://blog.youkuaiyun.com/dm_vincent/article/details/41593987当ES在文档中碰到一个以前没有见过的字段的时候,它会利用动态映射来决定改字段的类型,并且自动地对该字段添加映射。有时候这正是需要的行为,但有时候不是。或者你希望这些未知的字段会抛出异常来提醒你注意这个问题。对于动态映射可以通过dynamic来进行控制,它接受一下选项:转载 2015-09-08 10:22:47 · 846 阅读 · 0 评论 -
Elasticsearch中的根对象(Root Object)
映射的最顶层被称为根对象。它包含了以下几个部分:属性区域,列举了文档中包含的每个字段的映射信息。元数据字段:各种元数据字段,它们都以”_“开头,包括:_index _type _id _version _score _source控制用于新字段的动态探测的设置,如analyzer,dynamic_date_formates和dynamic_templates。其它转载 2015-09-07 15:41:48 · 1236 阅读 · 0 评论 -
Elasticsearch中的默认映射,重索引和索引别名
转载自:http://blog.youkuaiyun.com/dm_vincent/article/details/41643793默认映射:一般情况下索引中的所有类型都会有相似的字段和设置。因此将这些常用设置在_default映射中指定会更加方便,这样就不需要在每次创建新类型的时候重复设置。_default映射的角色是新类型的模板。所有在_defautl映射之后创建的类型都会包含所有的默认设置,除非转载 2015-09-08 13:31:25 · 4440 阅读 · 0 评论 -
Elasticsearch Facet的一个例子
Facet【聚类】,在elacticsearch搜索结果的基础上,对某个字段按照内容的不同进行分类统计。package bio_rdf.impl.fieldfacet;import org.elasticsearch.action.search.SearchRequestBuilder;import org.elasticsearch.action.search.SearchRespon原创 2015-09-28 14:48:25 · 3333 阅读 · 1 评论 -
Elasticsearch 分片交互过程分析
http://my.oschina.net/galenz/blog/422189一、Elasticseach如何将数据存储到分片中问题:当我们要在ES中存储数据的时候,数据应该存储在主分片和复制分片中的哪一个中去;当我们在ES中检索数据的时候,又是怎么判断要查询的数据是属于哪一个分片。 数据存储到分片的过程是一定规则的,并不是随机发生的。转载 2015-09-10 14:23:07 · 1752 阅读 · 0 评论 -
ElasticSearch更新字段类型的具体解决办法(重要)
前几天遇到的问题,elasticsearch中已经导入了将近两亿条数据,但是客户方又需要把其中的一个字段由string类型改为date类型,本来以为这是一个很简单的问题,但是。。。麻烦大了这个麻烦就是,当你要给已经索引好的文档改变其中一个字段类型的时候,需要对所有的数据重新索引!!!!!下面是利用elasticsearch java api实现的一个数据重新索引工具:package e原创 2015-09-09 16:54:12 · 18722 阅读 · 3 评论 -
ElasticSearch reindex by JAVA API
package elasticsearch.importdata;import org.elasticsearch.action.search.SearchResponse;import org.elasticsearch.action.search.SearchType;import org.elasticsearch.client.Client;import org.elastics原创 2015-09-09 14:41:33 · 3554 阅读 · 0 评论 -
elasticsearch中遇到的一些问题以及解决方式
(1)submitDate(08-MAY-2013)字段支持范围搜索的解决方式:"submitDate": { "type": "Date", "format": "dd-MMM-yyyy", "locale": "US"}说明:首先将字段类型(type)修改为Date类型(elasticsearch默认是string),然后添加("locale"原创 2015-08-12 09:00:35 · 6068 阅读 · 0 评论 -
Elasticsearch中同时实现对某一字段的精确查询和模糊查询的方法
"source.strain": { "type": "muti_field", "fields": { "name": { "type": "string", "index": "analyzed"原创 2015-10-21 17:56:28 · 30656 阅读 · 1 评论