如何在数据库体系结构中实现更高级别的分区?

时间:2018-07-07 12:08:29

标签: database database-design

说我有表A,表B和表C。 对于一种情况D,我可以在这些表之间构建数据。

如果我有场景D(D1,D2)的多个实例,而所有这些实例都是互斥的,那该怎么办?

我需要一个D1-> A,D2-> A,D1-> B,D2-> B,D1-> C,D2-> C之类的结构。如何在数据库体系结构中实现这一目标。

我不想过滤所有与D1匹配的A条目以获得D1-> A,这似乎不是最佳选择。我需要能够直接访问D1-> A,而不会产生任何开销。

1 个答案:

答案 0 :(得分:0)

基于SQL的引擎通常会过滤所有与A匹配的D1项以获取D1->A。如果要提高效率,请使用适当的索引-然后遍历树形结构,以几次跳跃找到合适的A集,就可以了。

但是,如果您想完全避免开销,可以使用NoSQL引擎。然后,您将D1->A存储为一个文档。唯一的问题是,您必须自己维护此类集合。