簡體   English   中英

ElasticSearch查詢引用文檔

[英]ElasticSearch query referencing document

我前段時間讀到,有一種方法可以建立一個引用索引中另一個文檔的查詢。 當時,這對我沒有幫助,但是我現在需要查詢很大的GIS區域,每次將數據發送到查詢主體中的ElasticSearch似乎都是浪費。

雖然我的特定用例與GIS, geo_shape等有關,但這是一個普遍的問題,可以應用於其他類型的查詢。

我有一個文檔類型areas ,其中包含所有預定義的搜索區域(例如郊區,州等),以及包含我所有搜索數據的entities ,包括帶有geo_point類型字段。

我需要能夠為entities文檔構造一個geo_shape查詢 ,該entities文檔在其areas坐標上引用其mpoly坐標上的mpoly屬性(這是GeoShape類型 )。

不幸的是,在這種情況下,谷歌和閱讀ElasticSearch文檔都沒有被證明是有用的,因為人們通常對嵌套文檔(相關的,但不是我想要的)感興趣。

最終,我在尋找不同的東西時找到了答案。 不幸的是,有關GeoShape過濾器的信息不在GeoShape查詢手冊頁中:

http://www.elasticsearch.org/guide/zh-CN/elasticsearch/reference/current/query-dsl-geo-shape-filter.html#_pre_indexed_shape

{
    "filtered": {
        "query": {
            "match_all": {}
        },
        "filter": {
            "geo_shape": {
                "location": {
                    "indexed_shape": {
                        "id": "DEU",
                        "type": "countries",
                        "index": "shapes",
                        "path": "location"
                    }
                }
            }
        }
    }
}

如果有人對如何進行此操作有更好的了解,我會很樂意接受他們的回答。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM