浅析阿里数据技术架构(下)大规模分布式知识图谱

本文涉及的产品
智能数据建设与治理Dataphin,200数据处理单元
数据可视化 DataV(企业版),20 个大屏 1 个月
可视分析地图(DataV-Atlas),3 个项目,100M 存储空间
简介:

阿里数据要做的是:把数据真正打通,深度挖掘数据的价值,为业务创新应用提供数据决策基础和依据。

下面具体介绍我们在大规模分布式知识图谱上的技术实践。


为什么需要知识图谱?

大规模知识图谱抽象也是一种图计算。基于大规模分布式知识图谱做了哪些工作?我们为什么要做这样一件事情?

阿里巴巴的生态非常丰富,而丰富的业态背后给我们数据工作者带来的困难就是,我们常常需要接入各种数据,并将他们有效地管理和整合起来,传统的方法,我们可能需要花几个月,投入几十个人做这样一件事情,对数据进行打标。

但是,假设我们已经知道数据和数据之间的一些关系,而且也知道数据表中哪些表被调用的次数最多。

那么,如果我只是对调用次数最多的表进行非常精确地打标,然后用基于知识图谱的方法,对剩下的90%表进行推理式的Label打标,就能极大节约了人力成本。

所以这就是我们为什么要用知识图谱去做数据接入这样的事情。那么,对于数据管理也是同样的道理。

假如只有1G的数据,你可以很快地回答出数据分布的情况和质量。而我们的现状时,我们的数据达到ZB级别的规模。因此对数据管理来说,挑战不容小觑。


image


同样地来看看数据应用方面的情况。我们基于数据应用,实际上也有一款产品叫做“数据地图”。

数据地图是干什么呢?其实就是当你进行一个查询,在这个产品里会自动帮你反馈出一个最相关的表。

延伸开来的是我们想要做得下一步工作:当你下一次进行查询后,能直接返回出相应的SQL,再产生出相应的表和相应的结果——这是我们想做的智能取数。

下面介绍一下知识图谱在数据管理和数据应用方面的落地进展。

我们开发了一些基于几十万张、上百万张ODPS表的知识图谱。

说一下我们的结果。在数据资产管理中,有一项重要的工作就是判断数据的归属。我们有上百万张的线上表,其中可能有几万张到几十万张的表能够比较清楚判断是属于哪个团队,可以在数据版图上打标。但是,还有上百万张没有打标的表,因为这个表属于异构的。如果在之前,通过一些人工的规则,它的归属判断准确率大概是55%,而通过我介绍的整个知识图谱的框架,准确率可以提升到88%。所以,对数据资产管理其实是有一个非常显著性的准确性上的提高。

接下来讲一下知识图谱在数据应用当中的一个技术框架,其实也是比较类似的。

image


数据管理技术架构

首先,数据层。因为是一个知识图谱的构建,所以上面要加个辞典层和语义层。

再上面就是基于推理层。在推理上,用的方法有大家比较熟悉的像随机游走和延伸等。那基于标注的,我们其实尝试了很多种方法,比方说张量分解等。

目前为止比较成功的是PRA(pathranking algo),这个在知识图谱上面还是比较成功的一件事情。什么是PRA,其实是把这些路径抽象出来,然后就是学习一下再推荐这个路径,但是它对于我刚才说的很多文本信息并没有有效的利用起来,比如对于这些表的描述,在最原始的PRA当中路径本身的位置是有考虑进去的,当然我对于这些描述,可能会知道也许这个路径更有效。所以,后来我们看了一下这个Trans系列,其实类似word2vecvs tfidf。确实在我们整个的刚才说的案例当中也是有比较大的提高。

刚才说的这些可能都是比较抽象的,我们可以看一个具体的例子,在数据地图当中,知识图谱到底是怎么工作的。

image

你打出一个查询,首先就是基本的分词与分析,其实大家可以看到,我们这个场景也是相当于搜索反馈一个结果,但是其实它和传统的搜索是不一样的:传统的搜索像Google、百度,其实它关心的指标是你准确的那个值是不是在TOP5,或者TOP10。

但是,我们这个场合下一定要反馈唯一的、准确的表。所以,接下来我们会有一些模板匹配,所以这里非常重要的一部分是人机交互这一块,把人机交互的结果,就是人要告诉你说,这个结果是否是他想到的,然后知识图谱整个刚才的框架有效的结合在一起,然后产生出你真正想找到那张表,然后整个的这个过程,其实这些是一些抽象出来的模板,这些模板可能是不够的。因为随着人的查询越来越多,模板也需要慢慢的扩展。

现在我们还是基于一些规则判断一些模板,未来我们也会尝试,让这个机器自动产生一些模板。

原文链接

相关实践学习
MySQL基础-学生管理系统数据库设计
本场景介绍如何使用DMS工具连接RDS,并使用DMS图形化工具创建数据库表。
相关文章
|
4天前
|
存储 分布式计算 负载均衡
数据分布式存储:在海量数据面前,我们如何站稳脚跟?
数据分布式存储:在海量数据面前,我们如何站稳脚跟?
32 1
|
2月前
|
存储 缓存 NoSQL
分布式系统架构8:分布式缓存
本文介绍了分布式缓存的理论知识及Redis集群的应用,探讨了AP与CP的区别,Redis作为AP系统具备高性能和高可用性但不保证强一致性。文章还讲解了透明多级缓存(TMC)的概念及其优缺点,并详细分析了memcached和Redis的分布式实现方案。此外,针对缓存穿透、击穿、雪崩和污染等常见问题提供了应对策略,强调了Cache Aside模式在解决数据一致性方面的作用。最后指出,面试中关于缓存的问题多围绕Redis展开,建议深入学习相关知识点。
205 8
|
5天前
|
存储 人工智能 固态存储
DeepSeek开源周第五弹之一!3FS:支撑V3/R1模型数据访问的高性能分布式文件系统
3FS是DeepSeek开源的高性能分布式文件系统,专为AI训练和推理任务设计,提供高达6.6 TiB/s的读取吞吐量,支持强一致性保障和通用文件接口,优化AI工作负载。
210 2
DeepSeek开源周第五弹之一!3FS:支撑V3/R1模型数据访问的高性能分布式文件系统
|
1月前
|
机器学习/深度学习 缓存 自然语言处理
DeepSeek背后的技术基石:DeepSeekMoE基于专家混合系统的大规模语言模型架构
DeepSeekMoE是一种创新的大规模语言模型架构,融合了专家混合系统(MoE)、多头潜在注意力机制(MLA)和RMSNorm归一化。通过专家共享、动态路由和潜在变量缓存技术,DeepSeekMoE在保持性能的同时,将计算开销降低了40%,显著提升了训练和推理效率。该模型在语言建模、机器翻译和长文本处理等任务中表现出色,具备广泛的应用前景,特别是在计算资源受限的场景下。
490 29
DeepSeek背后的技术基石:DeepSeekMoE基于专家混合系统的大规模语言模型架构
|
23天前
|
存储 数据采集 人工智能
AllData数据中台架构全览:数据时代的智慧中枢
杭州奥零数据科技有限公司成立于2023年,专注于数据中台业务,维护开源项目AllData并提供商业版解决方案。AllData提供数据集成、存储、开发、治理及BI展示等一站式服务,支持AI大模型应用,助力企业高效利用数据价值。
|
8天前
|
存储 监控 算法
公司监控上网软件架构:基于 C++ 链表算法的数据关联机制探讨
在数字化办公时代,公司监控上网软件成为企业管理网络资源和保障信息安全的关键工具。本文深入剖析C++中的链表数据结构及其在该软件中的应用。链表通过节点存储网络访问记录,具备高效插入、删除操作及节省内存的优势,助力企业实时追踪员工上网行为,提升运营效率并降低安全风险。示例代码展示了如何用C++实现链表记录上网行为,并模拟发送至服务器。链表为公司监控上网软件提供了灵活高效的数据管理方式,但实际开发还需考虑安全性、隐私保护等多方面因素。
15 0
公司监控上网软件架构:基于 C++ 链表算法的数据关联机制探讨
|
10天前
|
SQL 数据建模 BI
【YashanDB 知识库】用 yasldr 配置 Bulkload 模式作单线程迁移 300G 的业务数据到分布式数据库,迁移任务频繁出错
问题描述 详细版本:YashanDB Server Enterprise Edition Release 23.2.4.100 x86_64 6db1237 影响范围: 离线数据迁移场景,影响业务数据入库。 外场将部分 NewCIS 的报表业务放到分布式数据库,验证 SQL 性能水平。 操作系统环境配置: 125G 内存 32C CPU 2T 的 HDD 磁盘 问题出现的步骤/操作: 1、部署崖山分布式数据库 1mm 1cn 3dn 单线启动 yasldr 数据迁移任务,设置 32 线程的 bulk load 模式 2、观察 yasldr.log 是否出现如下错
|
2月前
|
存储 Prometheus Cloud Native
分布式系统架构6:链路追踪
本文深入探讨了分布式系统中的链路追踪理论,涵盖追踪与跨度的概念、追踪系统的模块划分及数据收集的三种方式。链路追踪旨在解决复杂分布式系统中请求流转路径不清晰的问题,帮助快速定位故障和性能瓶颈。文中介绍了基于日志、服务探针和边车代理的数据收集方法,并简述了OpenTracing、OpenCensus和OpenTelemetry等链路追踪协议的发展历程及其特点。通过理解这些概念,可以更好地掌握开源链路追踪框架的使用。
112 41
|
2月前
|
存储 缓存 安全
分布式系统架构7:本地缓存
这是小卷关于分布式系统架构学习的第10篇文章,主要介绍本地缓存的基础理论。文章分析了引入缓存的利弊,解释了缓存对CPU和I/O压力的缓解作用,并讨论了缓存的吞吐量、命中率、淘汰策略等属性。同时,对比了几种常见的本地缓存工具(如ConcurrentHashMap、Ehcache、Guava Cache和Caffeine),详细介绍了它们的访问控制、淘汰策略及扩展功能。
87 6
|
2月前
|
存储 分布式计算 Hadoop
基于Java的Hadoop文件处理系统:高效分布式数据解析与存储
本文介绍了如何借鉴Hadoop的设计思想,使用Java实现其核心功能MapReduce,解决海量数据处理问题。通过类比图书馆管理系统,详细解释了Hadoop的两大组件:HDFS(分布式文件系统)和MapReduce(分布式计算模型)。具体实现了单词统计任务,并扩展支持CSV和JSON格式的数据解析。为了提升性能,引入了Combiner减少中间数据传输,以及自定义Partitioner解决数据倾斜问题。最后总结了Hadoop在大数据处理中的重要性,鼓励Java开发者学习Hadoop以拓展技术边界。
66 7