LBS with MongoDB

778 views

Published on

LBS( Location Based Service) with MongoDB

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
778
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
8
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

LBS with MongoDB

  1. 1. LBS WITH MONGODB LOCATION BASED SERVICE WITH MONGODB ( 몽고디비로 위치기반 서비스 만들기 )2011년 6월 14일 화요일
  2. 2. 강사소개 이용혁 ITEMBAY / 신사업팀 PROGRAMMER / 팀장 SPRINGSPROUT / UNLOGICAL OKJSP / SKYNLE TWITTER / SKYNLE2011년 6월 14일 화요일
  3. 3. DAUM PLACE, FOURSQUARE, GOOGLE PLACES2011년 6월 14일 화요일
  4. 4. SAMPLE PAGE HTTP://192.168.123.1:8080/MONGO/MAP 300,000 150,000/1분 1 SELECT & 1 UPDATE MACBOOK PRO, DUAL CORE 2.54G, 4G, 128SSD JBOSS 5.1 WITH IN ECLIPSE / JDK 1.6 MONGODB 1.82011년 6월 14일 화요일
  5. 5. OTHERS ? SPRING3 SPRING DATA MONGO ... GOOGLE MAP V3 TILES2 JQUERY ALL FREE2011년 6월 14일 화요일
  6. 6. WHY MONGODB ? FREE GEOSPATIAL INDEX DISTANCE EASY WITH JAVA AND ...2011년 6월 14일 화요일
  7. 7. MONGODB HTTP://MONGODB.ORG2011년 6월 14일 화요일
  8. 8. MONGODB GEOSPATIAL INDEX >db.places.insert({ loc : [ 50 , 30 ] }) >db.places.insert({ loc : { x : 50 , y : 30 } }) >db.places.insert({ loc : { foo : 50 , y : 30 } }) >db.places.insert({ loc : { long : 40.7390,lat: 73.9929 } }) >db.places.ensureIndex( { loc : "2d" } ) >db.places.find( { loc : [50,50] } ) >db.places.find( { loc : { $near : [50,50] } } ) >db.places.find( { loc : { $near : [50,50] } } ).limit(20) >db.places.find( { loc : { $near : [50,50] , $maxDistance : 5 } } ).limit(20)2011년 6월 14일 화요일
  9. 9. MONGODB GEOSPATIAL INDEX Compound Indexes >db.places.ensureIndex( { location : "2d" , category : 1 } ); >db.places.find( { location : { $near : [50,50] }, category : coffee }); geoNear Command > db.runCommand( { geoNear : "places" , near : [50,50], num : 10 } , query : { category : coffee }); Valid options are: "near", "num", "maxDistance", "distanceMultiplier" and "query"2011년 6월 14일 화요일
  10. 10. MONGODB GEOSPATIAL INDEX public List<DBObject> retriveByLoc(int flag, Double geolong, Double geolat) { DBObject cmd = new BasicDBObject(), query = new BasicDBObject();; query = new BasicDBObject(); query.put("flag", flag); Object[] location = new Object[]{ geolong, geolat }; cmd = new BasicDBObject(); cmd.put("geoNear", "position"); cmd.put("near", location); cmd.put("num", 30); cmd.put("distanceMultiplier", 1.609344*1000*1000); //거리의 단위 m cmd.put("spherical", true); //거리계산 ? cmd.put("query", query); CommandResult cr = mongoTemplate.getDb().command(cmd); return (List<DBObject>)cr.get("results"); }2011년 6월 14일 화요일
  11. 11. WHAT ? MONGODB를 이용하여 편리하고, 가볍게 위치기반서비스(LBS)를 제작할 수 있다.2011년 6월 14일 화요일
  12. 12. Q/A2011년 6월 14일 화요일

×