在数据库中存储大量图形数据结构

时间:2011-05-10 01:10:06

标签: mysql database computer-science graph-theory large-data-volumes

This question询问如何在关系数据库中存储单个图表。在这种情况下,解决方案很明确:一个表用于节点,一个表用于边缘。

我有一个随着时间推移而发展的图形数据结构,因此我想将此图的“快照”存储在数据库中。我想有数百个这样的快照。

一种解决方案是为每个快照创建一个全新的表对节点和边(如上所述)。有更好的解决方案吗?

编辑:有人问我想对这个数据库做些什么。我相信我不会进行任何查询,除非从C ++将所有图表转储到MySQL,然后将 all 加载回C ++数据结构。所以我希望将MySQL用于存储而不是用于有效的随机访问/搜索。

1 个答案:

答案 0 :(得分:5)

你需要一张桌子

 graphs = (graphid, dateofsnapshot or other things unique to the snapshot)

并且您需要节点和边表,但需要对图表表进行foriegn键引用。这样,您就可以在数据库中拥有任意数量的图形。