2012-03-22 157 views
2

我有一個問題,存儲和查詢圖到SQL數據庫。我已經閱讀了關於將樹存儲到關係數據庫中的一些教程,但是我的圖有點不同。將圖保存到MySQL數據庫

您可以在我的照片http://i.stack.imgur.com/J57v6.png中看到示例圖。它具有根節點,通過邊可以「走」到某些特定的節點。重要的是,該圖不包括圓圈(循環)。如果您選擇某個節點,例如3,您將步行到節點4,5,6。所以總有最終的訪問節點數量。

保存這不會是一個大問題,但問題是我需要查詢此圖。例如,我的查詢輸入可以是節點3,比我期望的結果包含節點4,5,6即使在3和4之間的邊緣不存在,但是路徑從3到4超過5.這是完全問題。

我預計這個圖將有大約10 000個節點。最重要的是我上面寫的查詢速度。插入/刪除/更新節點和邊緣可能會慢很多。

你有什麼想法如何存儲和查詢此圖?

預先感謝您

樣品圖: http://i.stack.imgur.com/J57v6.png

回答