相似感知关系交集数据库运算符:原理、算法与性能
在许多应用领域,如生物信息学、模式识别和数据集成中,识别大型数据集中的相似性是一项至关重要的操作。为了使底层数据库系统具备相似感知能力,需要对核心关系运算符进行扩展。本文将介绍一种扩展的关系数据库运算符——相似感知集合交集运算符,它能够在相似值上进行操作,而不仅仅局限于精确匹配。
1. 背景与动机
在标准 SQL 中,关系集合操作基于精确匹配。然而,在实际应用中,我们常常需要找到相似但不一定完全相同的数据。例如,当我们想要找出两个传感器产生的相似读数时,标准 SQL 的集合交集运算符就显得力不从心。因此,引入相似感知集合交集运算符具有重要的实际意义。
2. 相似感知集合交集的语义
设 $Q$ 和 $P$ 是两个具有兼容模式的关系,分别有 $k$ 个属性和 $n$、$m$ 个元组。为了表达两个元组之间的相似性,可以使用多种距离函数,如编辑距离、$p$-范数或 Jaccard 距离。
我们采用以下相似谓词:给定 $r$ 个阈值 $\epsilon_1, \epsilon_2, \cdots, \epsilon_r$,分别分配给属性 $a_1, a_2, \cdots, a_r$($r \leq k$),当且仅当 $pred(A_i, B_j) = dis_1(A_i.a_1, B_j.b_1) \leq \epsilon_1$ AND $dis_2(A_i.a_2, B_j.b_2) \leq \epsilon_2$ $\cdots$ AND $dis_r(A_i.a_r, B_j.br) \leq \epsilon_r$ 时,两个元组 $A_i$ 和 $B_j$ 匹配。如果 $r < k$,则 $
超级会员免费看
订阅专栏 解锁全文

12

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



