要连接到ElastickSearch,我使用basemkhirat/elasticsearch。形成了以下问题:将此方法与此查询(" google.com")一起使用以搜索索引中的链接
ES::type("links")->search("google.com")->get();
我找到了56个链接(例如),但如果我使用了查询" google"
ES::type("links")->search("google")->get();
我什么都没发现(0)。我的问题是什么?
通过搜索创建的JSON查询:
{
"index":"links",
"type":"link",
"body": {
"query": {
"bool": {
"must": [
{
"query_string": {
"query":"google.com"
}
}
]
}
}
},
"from":0,
"size":10000
}
P.S:Kibana我正在看同样的事情。
答案 0 :(得分:0)
我没有查看过您正在使用的库,但看起来像进行外卡查询会对您有用。如果您有大量数据,或者过度使用通配符,它将无法执行。
这样的事可能对你有用 - 让我知道它是怎么回事。
ES::type("links")->search("google*")->get();
PS,如果我在你的位置,我会调查库并试图找出它们是否支持前缀查询。我假设他们一定是 - 可能想花几个小时看那里。