<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ## geohash單元聚合器 一個查詢返回的結果集中可能包含很多的點,以至于不能在地圖上全部單獨顯示。 geohash單元聚合器可以按照你指定的精度計算每個點的geohash并將相鄰的點聚合到一起。 返回結果是一個個單元格,每個單元格對應一個可以在地圖上展示的 geohash。 通過改變 geohash 的精度,你可以統計全球、某個國家,或者一個城市級別的綜述信息。 聚合結果是稀疏(_sparse_)的,因為它只返回包含了文檔集合的單元。 如果你的geohash精度太細,導致生成了太多的結果集,它默認只會返回包含結果最多的10000個單元 -- 它們包含了大部分文檔集合。 然后,為了找出這排在前10000的單元,它還是需要先生成所有的結果集。 你可以通過如下方式控制生成的單元的數目: - 1. 使用一個矩形過濾器來限制結果集。 - 2. 對應該矩形,選擇一個合適的精度。 ```json GET /attractions/restaurant/_search?search_type=count { "query": { "filtered": { "filter": { "geo_bounding_box": { "location": { <1> "top_left": { "lat": 40,8, "lon": -74.1 }, "bottom_right": { "lat": 40.4, "lon": -73.7 } } } } } }, "aggs": { "new_york": { "geohash_grid": { <2> "field": "location", "precision": 5 } } } } ``` - <1> 矩形框將檢索限制在紐約區域。 - <2> 使用精度為 `5` 的geohash,精度大約是 5km x 5km. 每個精度為 `5` 的 geohash 覆蓋約 25平方公里,那 10000 個單元就能覆蓋 25萬平方公里。 我們指定的矩形框覆蓋面積約 44km * 33km,也就是大概 1452平方公里。 所以這肯定在一個安全的限度內,我們不會因此浪費大量內存來生成太多單元。 上例請求的返回如下: ```json ... "aggregations": { "new_york": { "buckets": [ <1> { "key": "dr5rs", "doc_count": 2 }, { "key": "dr5re", "doc_count": 1 } ] } } ... ``` - <1> 每個單元以一個 geohash 作為 `key`。 Again, we didn't specify any subaggregations, so all we got back was the document count. We could have asked for popular restaurant types, average price, or other details. 同樣的,我們沒有指定子聚合器,所以我們的返回結果是文檔數目。 我們也可以(指定子聚合器來)得到流行的飯店類型,平均價格,或者其它詳細信息。 > 提示 > 為了將這些單元放置在地圖上展示,我們需要一個類庫來將geohash解析為對于的矩形框或者中心點。 > Javascript和一些語言中有現成的類庫,不過你也可以根據 [geo-bounds-agg](/geo-bounds-agg) 的信息自己來實現。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看