GeoJSON Class — GeoJSON

GeoJSON

class aerospike.GeoJSON

Starting with version 3.7.0, the Aerospike server supports storing GeoJSON data. A Geo2DSphere index can be built on a bin which contains GeoJSON data, enabling queries for the points contained within given shapes using geo_within_geojson_region() and geo_within_radius(), and for the regions which contain a point using geo_contains_geojson_point() and geo_contains_point().

On the client side, wrapping geospatial data in an instance of the aerospike.GeoJSON class enables serialization of the data into the correct type during write operation, such as put(). On reading a record from the server, bins with geospatial data it will be deserialized into a GeoJSON instance.

from __future__ import print_function
import aerospike
from aerospike import GeoJSON

config = { 'hosts': [ ('127.0.0.1', 3000)]}
client = aerospike.client(config).connect()
client.index_geo2dsphere_create('test', 'pads', 'loc', 'pads_loc_geo')
# Create GeoJSON point using WGS84 coordinates.
latitude = 28.608389
longitude = -80.604333
loc = GeoJSON({'type': "Point",
               'coordinates': [longitude, latitude]})
print(loc)
# Alternatively create the GeoJSON point from a string
loc = aerospike.geojson('{"type": "Point", "coordinates": [-80.604333, 28.608389]}')

# Create a user record.
bins = {'pad_id': 1,
        'loc': loc}

# Store the record.
client.put(('test', 'pads', 'launchpad1'), bins)

# Read the record.
(k, m, b) = client.get(('test', 'pads', 'launchpad1'))
print(b)
client.close()
class GeoJSON([geo_data])

Optionally initializes an object with a GeoJSON str or a dict of geospatial data.

aerospike.wrap(geo_data)

Sets the geospatial data of the GeoJSON wrapper class.

Parameters:geo_data (dict) – a dict representing the geospatial data.
aerospike.unwrap() → dict of geospatial data

Gets the geospatial data contained in the GeoJSON class.

Returns:a dict representing the geospatial data.
aerospike.loads(raw_geo)

Sets the geospatial data of the GeoJSON wrapper class from a GeoJSON string.

Parameters:raw_geo (str) – a GeoJSON string representation.
aerospike.dumps() → a GeoJSON string

Gets the geospatial data contained in the GeoJSON class as a GeoJSON string.

Returns:a GeoJSON str representing the geospatial data.

New in version 1.0.53.