[英]Optimize MLT elasticsearch query
我想應用more like this
查詢的內容,因此我使用了以下代碼(用於Elasticsearch的python包裝器):
{
"query": {
"more_like_this": {
"fields": ["title", "content"],
"docs": [
{
"_index": "kavosh",
"_type": "articles",
"_id": str(news_id)
}
]
}
},
"size": 1,
}
但是我有很多超時 所以我決定將mlt檢查的范圍減少到一周。 (是否有效?)例如添加以下內容:
{
"range": {
"publication_date": {
"lte": now,
"gte": now - 1week
}
}
}
如何將此過濾器應用於MLT查詢,您對優化查詢有何建議?
您可以使用以下查詢:
{
"query": {
"filtered": {
"query": {
"more_like_this": {
"fields": [
"title",
"content"
],
"docs": [
{
"_index": "kavosh",
"_type": "articles",
"_id": str(news_id)
}
]
}
},
"filter": {
"range": {
"publication_date": {
"lte": "now",
"gte": "now - 1week"
}
}
}
}
}
}
希望能幫助到你。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.