SQL 表中唯一约束挖掘与工件中心业务流程实现框架
1. SQL 表中唯一约束挖掘
在数据库领域,唯一约束(UC)的发现对于模式设计、查询优化和数据库语义采样等方面具有重要意义。下面将介绍相关的理论和算法。
1.1 Armstrong 表相关理论
在表示一组唯一约束(UC)和无空值子模式所固有的信息时,通常没有最简洁的表示方式。存在一些 UC 集合 Σ 和无空值子模式 nfs(Ts),使得 Σ 的大小为 O(n),而 Σ 和 nfs(Ts) 的最小规模 Armstrong 表的大小为 O(2n/2)。也存在一些表模式 T、无空值子模式 nfs(Ts) 和 T 上的 UC 集合 Σ,使得存在一个 Σ 和 nfs(Ts) 的 Armstrong 表,其行数为 O(n),并且在 nfs(Ts) 存在的情况下,Σ 所隐含的最小 UC 数量为 O(2n)。
Armstrong 表形式的表示与 UC 集合形式的表示相比,可能会节省大量空间,反之亦然。直观上,使用 Armstrong 表表示有助于发现语义上有意义的约束,而使用约束集表示则有助于发现语义上无意义的约束。
1.2 从 SQL 表中挖掘唯一约束的算法
为了从给定的 SQL 表中自动发现唯一性约束,介绍了两种算法。
- 通过行的成对比较进行挖掘
该算法逐步检查给定表的所有行对,并相应地调整最小唯一性约束集。当表 t 包含任何重复行时,算法 5 的输出 uc(t) = ∅。
Algorithm
超级会员免费看
订阅专栏 解锁全文
7100

被折叠的 条评论
为什么被折叠?



