Aurum: A Data Discovery System 个人阅读心得

文章提出AURUM,一种用于构建、维护和查询企业知识图谱(EKG)的方法。通过sketching技术和LSH,一次性遍历数据库来建立EKG,并使用RESS方法进行增量维护,仅需少量数据即可判断更新需求。关系构建阶段利用Jaccard和cosine相似度识别列间关系,包括主键-外键关联。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前置知识:

minhash, LSH(locality-sensitive hashing,局部敏感hash)

可自行百度

一、问题提出

数据存储在不同的数据库系统中,导致查询效率很低,降低了研究人员的工作效率

因此,本文提出了一种捕获EKG(enterprise knowledge graph)中数据库的关系,从而使用户更好查询数据。

本文的主要贡献为:AURUM,一个能够建立、维护和查询EKG的方法。

其中,在建立EKG的过程中,提出了一种只用遍历一遍数据库的方法;在维护过程中,提出了RESS方法,只需要使用数据集中的一小部分即可判断数据库中需要更新的部分。

二、构建(build)

本文中将这一过程分为了两步

1. sketching technique

2. locality-sensitive hashing

1. signature-building阶段

由profiler模块进行:将数据转换为profiles,其中包含了足够用于计算相似度的语义信息

其中包含了一系列处理子模块,在伪代码中用compute_profile()表示

其中两个特殊的子模块为:source/sink 子模块

为了加快处理速度,在三个层次上引入了并行机制

任务粒度

2. relationship-building阶段

由graph builder模块进行:时间复杂度为O(n)

在这一部分中使用上一阶段处理得到的profiles文件

使用Jaccard 相似度和cosine相似度

在这一部分中计算出的相似度都是具体数值,方便后续根据阈值进行处理

此外,还需评估两列是否是主键-外键关系:利用每列中数据是否互不相同进行判断

本部分伪代码如下:

算法输入:数据库中所有列的集合C、用于存储列标签的store、相似度阈值

算法输出:H = (V,E),其中V为EKG中的节点,E是连接节点的语义关系集

算法步骤:

1. 对于数据库中的每一列c:

        1) 计算c中的相关属性,存入profile

        2) 将profile存入store

        3)像H中添加结点

2. 对于store中储存的每一个profile:

        1) 对p.name 和 p 构建索引

        2) 对p.signature 和 p 构建索引

        索引中同样包含阈值

3. 对于store中储存的每一个profile

        1) 利用LSH算法得到与p属性值相似的候选者,并建立边

        2) 利用LSH算法得到与p内容值相似的候选者,并建立边

        3) 在与p内容值相似的候选者中,进一步判断出是否有主键/外键关联

三、维护

由于所连接的各个数据库中都会存在增删改查等行为,故而需要对EKG进行维护

增量维护

当某一列数据的变化过大时,需要重新计算这一列的标签

作者在此处提出了RESS方法

在这个方法中,只需根据这一列数据c的子集s便可判断这列的标签是否需要更新

本部分伪代码如下:

算法输入:数据库中所有列的集合、存储各个列标签的store库、衡量某一列变化程度的阈值γ

算法输出:需要更新标签的列的集合

算法过程:

对于数据库中的每一列c:

       1. 从c中任选子集s

        将c中互不相同的数据个数记为x

        JS_max记为|s|/x

        2. 对子集s求minhash,记为s_mh

        从store中读取c的content_signature, 记为x_mh

        JS' = s_mh和x_mh的Jaccard相似度

        3. 根据1-JS'/JS_max的值判断是否需要更新列c

        

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值