직장에서 Node JS + Mongo DB (몽구스)에 기반한 위치 애플리케이션을 유지 관리하고 있습니다. 우리가 필요로했던 지오 로케이션 기능은 이미 매우 간단하고 MongoDB에서 이미 사용 가능합니다 ($ near, $ geoWithin 및 $ geoIntersect). 우리의 주요 문제는 방금 요구 사항과 함께, 우리가 저장 한 일부 위치 사이의 최적의 경로를 확인하는 "최단 경로"기능을 사용해야합니다.mongoDB, 노드 JS 및 최단 경로 기능, 모든 옵션을 사용할 수 있습니까?
인터넷에서 보거나 검색하는 것은 mongo가 최단 경로 기능을 갖고 있지 않은 것으로 보이며 일부 기사는이 작업 (neo4j 또는 postgis)을 수행하기 위해 두 번째 데이터베이스를 처리 할 것을 제안합니다.
질문은 몽고와 노드만으로 최단 경로 기능을 구현할 수있는 저렴한 방법이 있습니까? 또는 두 번째 데이터베이스를 처리하는 경우 가장 좋은 조합이 될 수 있습니까?
UPDATE는 최근에 나는 최단 경로를 추적하는 데 유용 할 수있는 방법에 대해 이야기를 충족 몽고 DB 유럽 16, 몽고 DB 3.4에서 $ graphLookup 기능을 발견했다. 현재이 기능이 내가 원하는 것을 얻기위한 적절한 기능입니까?
감사 cjungel, 실제로이 가능한 솔루션 중 하나이며, 가장 큰 문제는 많은 경우에 노드의 양이 단지 수천 명의 사용자가 잠재적으로이 기능을 사용하는 것을 기반으로 메모리에로드 할 수 광범위하게 클 수 있다는 것입니다 . – dakairus
@dakairus 그 경우에는 귀하의 아키텍처에 새로운 데이터 저장소를 소개하는 것이 유일한 방법이라고 생각합니다. 실시간 요구 사항과 데이터 볼륨에 따라 그래프를 neo4j 또는 다른 grapth store로 주기적으로 가져올 수 있습니다. 실시간 최단 경로 계산을 위해 neo4j를 사용할 수 있습니다. 계산에 고려해야 할 최신 데이터가 항상 필요하다면 저장을 위해 neo4j를 사용하고 모든 그래프 관련 작업을 쿼리하도록 애플리케이션을 수정해야한다고 생각합니다. – cjungel