【发布时间】:2012-06-04 11:27:46
【问题描述】:
所以我在思考涉及将对象序列化到关系数据库的某些问题。
假设您有 N 个不同的对象,它们都实现了某个接口(就此而言是一个有向图接口。它们提供诸如 getIncomingNodes() 、 getOutgoingNodes() 之类的方法)。
如果每个这样的对象在关系数据库中都有对应的表, 将这种有向图序列化到关系数据库的最佳实践是什么?
假设 N 很小,(在我的例子中,N=3)我将所有可能的链接分解为一个单独的表。 例如,从对象 x 指向 y 的链接表将类似于:
tbl_links_X_Y {
int X_id
int Y_id
}
问题是,您得到 N^2 个这样的表 - 效率不高,而且将来可能难以扩展到 N+1 个对象。
有什么模式可以解决这个问题吗? (即使不涉及关系数据库,我也很乐意听到......)
谢谢!o
【问题讨论】:
-
您的问题被标记为mysql 和postgresql。你用的是哪个?
-
我还没有真正致力于任何框架。我想我会使用能最有效地解决我的问题的那个:-)
标签: mysql database postgresql relational-database