多值字段(Multivalue Fields)
在多值字段上使用短语匹配会产生古怪的行为:
PUT /my_index/groups/1
{
"names": [ "John Abraham", "Lincoln Smith"]
}
运行一个针对Abraham Lincoln的短语查询:
GET /my_index/groups/_search
{
"q...
分类:
其他好文 时间:
2014-12-16 10:04:15
阅读次数:
236
本文翻译自Elasticsearch官方指南的Proximity Matching一章。
邻近匹配(Proximity Matching)
使用了TF/IDF的标准全文搜索将文档,或者至少文档中的每个字段,视作"一大袋的单词"(Big bag of Words)。match查询能够告诉我们这个袋子中是否包含了我们的搜索词条,但是这只是一个方面。它不能告诉我们关于单词间关...
分类:
其他好文 时间:
2014-12-15 12:11:17
阅读次数:
205
派猴子来的救兵对于Kibana4,官方只提供了一个打包好的JAVA的包. 如果想自己修改一些代码添加一些自定义功能, impossible. 至少我还是希望能像Kibana3一样,就是一普通的hmlt静态网站,放在nginx下面跑. 可以添加一些自己的panel. 好吧, 虽然Kibana4好像已经...
分类:
其他好文 时间:
2014-12-14 00:41:48
阅读次数:
216
自定义_all字段
在元数据:_all字段中,我们解释了特殊的_all字段会将其它所有字段中的值作为一个大字符串进行索引。尽管将所有字段的值作为一个字段进行索引并不是非常灵活。如果有一个自定义的_all字段用来索引人名,另外一个自定义的_all字段用来索引地址就更好了。
ES通过字段映射中的copy_to参数向我们提供了这一功能:
PUT /my_index
{
"m...
分类:
其他好文 时间:
2014-12-12 10:12:29
阅读次数:
205
以字段为中心的查询(Field-centric Queries)
上述提到的三个问题都来源于most_fields是以字段为中心(Field-centric),而不是以词条为中心(Term-centric):它会查询最多匹配的字段(Most matching fields),而我们真正感兴趣的最匹配的词条(Most matching terms)。
NOTE
best_fields同...
分类:
其他好文 时间:
2014-12-11 10:26:13
阅读次数:
312
跨字段实体搜索(Cross-fields Entity Search)
现在让我们看看一个常见的模式:跨字段实体搜索。类似person,product或者address这样的实体,它们的信息会分散到多个字段中。我们或许有一个person实体被索引如下:
{
"firstname": "Peter",
"lastname": "Smith"
}
而addr...
分类:
其他好文 时间:
2014-12-11 10:25:02
阅读次数:
232
multi_match查询
multi_match查询提供了一个简便的方法用来对多个字段执行相同的查询。
NOTE
存在几种类型的multi_match查询,其中的3种正好和在"了解你的数据"一节中提到的几种类型相同:best_fields,most_fields以及cross_fields。
默认情况下,该查询以best_fields类型执行,它会为每个字段生成一...
分类:
其他好文 时间:
2014-12-10 10:51:19
阅读次数:
315
1、首先下载elasticsearch安装版本下载地址:http://www.elasticsearch.org/downloads/jdk1.6X推荐使用elasticsearch-0.90.13,再高的elasticSearch版本不支持jdk1.6X,下载完成后,解压到安装目录,进入安装目录下的bin文件夹,运行elasticsearch.bat,启动成功后,在浏览器中..
多字段搜索(Multifield Search)
本文翻译自官方指南的Multifield Search一章。
查询很少是只拥有一个match查询子句的查询。我们经常需要对一个或者多个字段使用相同或者不同的查询字符串进行搜索,这意味着我们需要将多个查询子句和它们得到的相关度分值以一种有意义的方式进行合并。
也许我们正在寻找一本名为战争与和平的书,它的作者是Leo Tolstoy。...
分类:
其他好文 时间:
2014-12-08 10:46:57
阅读次数:
302
ElasticSearch-API-Index 索引创建API允许初始化一个索引。ElasticSearch对多重索引提供了支持,包括跨多个索引执行操作。每个索引在创建时可以让一个特定的设置项与其关联。 最简单的方式创建索引 curl?-XPUT?...