我在研究弹性搜索查询。我不能理解这个问题:
{
"term" : { "user" : { "term" : "kimchy", "boost" : 2.0 } }
}
我读过这篇文章,但不清楚:http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-term-query.html
1-第二个“term”是什么?
2-boost的用法是什么?
3-如何使用一个或多个term进行查询:
名为“title”的字段必须包含:“key1”和“key2”或“key3”和“key4”
>
第一个术语
是查询的类型。第二个项
是此查询的参数。
boost用于使此查询比默认值更相关,如果您有多个查询(默认boost值为1.0)
有几种方法可以实现这一点。其中一个是query_string
,另一个是bool
查询。下面是query_string的一个示例:
{
"query_string" : {
"default_field" : "user",
"query" : "(key1 AND key2) OR (key3 AND key4)"
}
}
我使用Elasticsearch允许用户输入要搜索的术语。例如,我要搜索以下属性'name': 如果使用以下代码搜索或,我希望返回此文档。 我尝试过做一个bool must和做多个术语,但它似乎只有在整个字符串都匹配的情况下才起作用。 所以我真正想做的是,这个词是否以任何顺序包含两个词。 有人能帮我走上正轨吗?我已经在这上面砸了一段时间了。
在弹性搜索中,我正在努力使助推按我所希望的方式工作。 假设我有一些包含性别、兴趣和年龄的索引配置文件,假设我发现性别匹配是最相关的,那么兴趣和最不重要的标准是用户的年龄。我原以为下面的查询会根据刚才提到的原则导致匹配配置文件的排序,但是当我执行它时,我首先得到一些男性,然后我得到50岁的女性安娜,然后是喜欢汽车的女性玛丽亚。.为什么Maria的分数没有比Anna高?? 我们将不胜感激, 斯汀 以下
我对Elasticsearch相当陌生,所以这是我的问题。我想用elasticsearch做一个搜索查询,想用多个术语过滤。 如果我想搜索用户'Tom',那么我希望获得用户'is active=1'、'is private=0'和'is owner=1'的所有匹配项。 这是我的搜索查询 谢谢你的帮助!!
我试着遵循这里列出的Nutch+ES指南 https://gist.github.com/xrstf/b48a970098a8e76943b9 https://qbox.io/blog/scring-the-web-wit-nutch-for-elasticsearch 然而,我无法让他们的组合工作。基本上,我在Nutch上执行了以下命令: 现在,我想将获取的数据索引到ES中,我按照指南进行了操作
我可以搜索正常的查询。包含来自elasticsearch uri search的字段值或排序,但无法运行uri search的术语聚合查询。 我怎么能做到这一点? 术语聚合查询是: curl-u-elastic-XGET'127.0.0.1:9200/indexname/typename/\u搜索?pretty'-d'{“size”:0,aggs:{“groupu by_field”:{“term
我有大量相同类型的实体,每个实体都有大量属性,并且我只有以下两种选择来存储它们: 将每个项存储在索引中并执行多索引搜索 将所有enties存储在单个索引中,并且只搜索1个索引。 一般而言,我想要一个时间复杂度之间的比较搜索“N”实体与“M”特征在上述每一种情况!