我正在研究一種移動應用程序,它定期跟蹤用戶的位置,以允許他繪製地圖上旅程的路徑。我們希望添加一項可選功能,告訴他應用程序的其他用戶在他看到的時間範圍內做出了類似的旅程,無論是今天的通勤還是上個月的旅行。我們將其稱爲「路徑匹配」。將地理空間路徑與MongoDB進行比較
當前數據以iOS和Android的應用程序專用存儲目錄中的二進制格式記錄到文件中,該格式可以輕鬆快速地掃描到讀取位置。每個文件都包含一天的位置,一般會運行到大約80KB。
爲了能夠實現路徑匹配功能,我們顯然需要開始將這些位置日誌上傳到我們的服務器(當然有用戶權限),我們正在其上運行PHP。有人建議的MongoDB其地理空間的威力 - 但我有幾個問題,也許人們可以幫助我:
這似乎是我們可以改變我們的位置,記錄使用BSON來代替。第一個字段是設備或用戶ID,後面是特定日期的位置列表。然後可以將文件上傳到我們的服務器並推送到MongoDB商店。然而,在線文檔似乎只涉及導入由mongodump創建的BSON文件。格式是否足夠穩定,以至於任何應用程序都可以編寫可由MongoDB直接讀取的BSON文件?
MongoDB是否可以在包含多個位置的文檔上或在跨多個文檔形成路徑的位置上運行地理空間查詢?或者這是否會引發你在PHP方面需要超出數據庫之外的邏輯?
你解決了這個問題嗎?我有一個類似的問題,我需要通過給出一組點來找到匹配路徑。但是通過使用帶有LineString的$ geoIntersects,我一無所獲。 – popo