Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [geomesa-users] Geomesa accumulo: query help, speed, api

Hello,

Your query seems like it should be reasonable. How many polygons have you ingested (rough order of magnitude)?

The first thing to try would be to enabled query explain logging, by tweaking your logging config. This will tell you exactly what query is being exectuted and how. There is an explanation for how to do it here (for geoserver, but the principal is the same regardless):

http://www.geomesa.org/documentation/user/geoserver.html#logging-explain-query-planning

Could you turn that on and reply back with the output?

Thanks,

Emilio

On 09/20/2017 03:49 PM, Andrew Schenck wrote:
Hello all,

I am attempting to use the geomesa-accumulo datastore to do 'point-in-polygon' containment checks on large amounts of incoming data (millions of individual Geo points). I have ingested the polygons data(via the native api with custom simplefeatureview and getExtraAttributes for my interested features) and it lives in geomesa accumulo tables. I've been querying via the native api (so far the only way I know  how query the data) and it is very slow. I build a query for each incoming geopoint (containment check...)

GeoMesaQuery.GeoMesaQueryBuilder.builder()
.within(-180.0,-90.0,180.0,90.0)
.filter(ff.contains(ff.property("geom"), ff.literal(point))).build()

Note: the .within is needed or I get a null pointer in my query.

And execute the query...
Index.query(above)

It takes nearly a second per query (and with millions of queries this is not acceptable as you can understand).

My guess is the native api is just slow by it's very nature? What would be the advisable way to quickly query (make many, many queries) the data stored in the geomesa accumulo data store? 

Note: I've read everything I could get my hands (Google) on and nothing so far has been very clear. I read some things that say you can (somehow) use geotools to query, but nothing really explained how to do so (and if I don't need an outside library I would rather not use it).

Thanks for the help and advice,

Andy





_______________________________________________
geomesa-users mailing list
geomesa-users@xxxxxxxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.locationtech.org/mailman/listinfo/geomesa-users


Back to the top