2011-04-06 35 views
0

我正在研究一個項目,我們希望以高效的方式在DB中存儲互連節點的圖形。 對於每個節點節點,我們都有一個距離參數「d」。我們也想把它存儲在數據庫中。因此,基本上我們存儲的信息是節點,節點是相互關聯的,它們之間的距離是多少。稍後我們的應用程序需要查詢如下信息:兩個給定節點之間的距離是多少?距離特定節點的距離爲d的節點是什麼。這是城市路線的小項目。數據建模以存儲互連節點的圖形

我想知道什麼是用於此類項目的最佳數據庫和數據模型。

回答

2

這是非常簡單的ERD,可以幫助您實現您想要完成的任務。

  • 每個節點在「節點」表
  • 對於每一個連接的記錄添加一條記錄到「node_connection」表與它們之間的距離一起參與節點。

simple ERD for node and node connection

+0

謝謝@Mevdiven。事情是,我們期望在應用程序的2個月內有大量的節點接近10000個。 1個節點可能有或沒有9999個連接到其他節點。所以這就是我不確定上面提到的簡單直接的設計是否可行的原因。 – ag112 2011-04-07 11:28:16

+0

所以我想要的基本輸入是用於存儲具有大量數據的圖形(一組互連節點),我們是否依賴關係數據庫或非SQL數據庫或其他任何東西? – ag112 2011-04-07 11:29:18

+0

@ ag112,即使萬一最終有數百萬個節點,這種設計也能很好地擴展。您需要爲您提到的計算添加更多屬性。我建議爲你的目的使用關係數據庫管理系統。我使用PostgreSQL作爲我自己的概念項目的半科學證明。它運行良好,可擴展到50GB的複雜數據。 – mevdiven 2011-04-07 12:41:18

相關問題