7. Looks great, but what’s the catch?
• OpenShift is free-as-in-beer & free-as-in-freedom
• Three 1.5 GB RAM / 3 GB storage gears
• Need more resources, just ask!
7
9. Spatial is fun!
The only spatial functionality MongoDB currently has is:
2) Near
3) Containment
All of it is laid out on one page:
http://www.mongodb.org/display/DOCS/Geospatial+Indexing
First link on a google search for “MongoDB spatial
indexing”
9
10. Caveats
1. Assumes coordinates are between -180 and 180
2. Can handle any 2d coordinates
3. Has methods to handle curvature of the earth
(spherical)
10
11. How to make it work
1) Put your coordinates into an arrary
{ loc : [ 50 , 30 ] } //SUGGESTED OPTION
{ loc : { x : 50 , y : 30 } }
{ loc : { foo : 50 , y : 30 } }
{ loc : { lon : 40.739037, lat: 73.992964 } }
6) Make a 2d index
db.places.ensureIndex( { loc : "2d" } )
11
12. Demo
1. I have an app and a MongoDB instance running
2. Load some spatial data in JSON format
3. Make the 2d index
4. Do a bunch of command you would need in building
an app (except Deleting docs, because that is easy
cheezy)
12
13. Conclusion
1. Spatial is easy and fun on MongoDB!
2. You can now build your own FourSquare or other
check-in application.
3. You can also build your own field data entry system.
4. You can build and deploy your application quickly
without having to think about infrastructure.
13