In this post I will demonstrate using ElasticSearch to spatially query records and filter them by attributes. ElasticSearch is built on top of Lucence which in version 4.0 supports Spatial query features, for those interested here is an example and link to javadocs. You will need to install ElasticSearch, read about installing it here, also install marvel plugin for configuration and testing. For this demonstration I have used data from Geofabrik.