58 lines
1.8 KiB
Plaintext
58 lines
1.8 KiB
Plaintext
|
[[java-aggs-bucket-geohashgrid]]
|
||
|
==== Geo Hash Grid Aggregation
|
||
|
|
||
|
Here is how you can use
|
||
|
{ref}/search-aggregations-bucket-geohashgrid-aggregation.html[Geo Hash Grid Aggregation]
|
||
|
with Java API.
|
||
|
|
||
|
|
||
|
===== Prepare aggregation request
|
||
|
|
||
|
Here is an example on how to create the aggregation request:
|
||
|
|
||
|
[source,java]
|
||
|
--------------------------------------------------
|
||
|
AggregationBuilder aggregation =
|
||
|
AggregationBuilders
|
||
|
.geohashGrid("agg")
|
||
|
.field("address.location")
|
||
|
.precision(4);
|
||
|
--------------------------------------------------
|
||
|
|
||
|
|
||
|
===== Use aggregation response
|
||
|
|
||
|
Import Aggregation definition classes:
|
||
|
|
||
|
[source,java]
|
||
|
--------------------------------------------------
|
||
|
import org.elasticsearch.search.aggregations.bucket.geogrid.GeoHashGrid;
|
||
|
--------------------------------------------------
|
||
|
|
||
|
[source,java]
|
||
|
--------------------------------------------------
|
||
|
// sr is here your SearchResponse object
|
||
|
GeoHashGrid agg = sr.getAggregations().get("agg");
|
||
|
|
||
|
// For each entry
|
||
|
for (GeoHashGrid.Bucket entry : agg.getBuckets()) {
|
||
|
String key = entry.getKey(); // key as String
|
||
|
GeoPoint keyAsGeoPoint = entry.getKeyAsGeoPoint(); // key as geo point
|
||
|
long docCount = entry.getDocCount(); // Doc count
|
||
|
|
||
|
logger.info("key [{}], point {}, doc_count [{}]", key, keyAsGeoPoint, docCount);
|
||
|
}
|
||
|
--------------------------------------------------
|
||
|
|
||
|
This will basically produce:
|
||
|
|
||
|
[source,text]
|
||
|
--------------------------------------------------
|
||
|
key [gbqu], point [47.197265625, -1.58203125], doc_count [1282]
|
||
|
key [gbvn], point [50.361328125, -4.04296875], doc_count [1248]
|
||
|
key [u1j0], point [50.712890625, 7.20703125], doc_count [1156]
|
||
|
key [u0j2], point [45.087890625, 7.55859375], doc_count [1138]
|
||
|
...
|
||
|
--------------------------------------------------
|
||
|
|