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

本文涉及的产品
智能数据建设与治理Dataphin,200数据处理单元
数据可视化DataV,5个大屏 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图形化工具创建数据库表。
相关文章
|
16天前
|
机器学习/深度学习 数据采集 人工智能
揭秘!47页文档拆解苹果智能,从架构、数据到训练和优化
【8月更文挑战第23天】苹果公司发布了一份47页的研究文档,深入解析了其在智能基础语言模型领域的探索与突破。文档揭示了苹果在此领域的雄厚实力,并分享了其独特的混合架构设计,该设计融合了Transformer与RNN的优势,显著提高了模型处理序列数据的效能与表现力。然而,这种架构也带来了诸如权重平衡与资源消耗等挑战。苹果利用海量、多样的高质量数据集训练模型,但确保数据质量及处理噪声仍需克服。此外,苹果采取了自监督与无监督学习相结合的高效训练策略,以增强模型的泛化与稳健性,但仍需解决预训练任务选择及超参数调优等问题。
125 66
|
5天前
|
存储 JSON 数据库
Elasticsearch 分布式架构解析
【9月更文第2天】Elasticsearch 是一个分布式的搜索和分析引擎,以其高可扩展性和实时性著称。它基于 Lucene 开发,但提供了更高级别的抽象,使得开发者能够轻松地构建复杂的搜索应用。本文将深入探讨 Elasticsearch 的分布式存储和检索机制,解释其背后的原理及其优势。
29 5
|
10天前
|
安全 网络安全 数据安全/隐私保护
云原生技术探索:容器化与微服务架构的实践之路网络安全与信息安全:保护数据的关键策略
【8月更文挑战第28天】本文将深入探讨云原生技术的核心概念,包括容器化和微服务架构。我们将通过实际案例和代码示例,展示如何在云平台上实现高效的应用部署和管理。文章不仅提供理论知识,还包含实操指南,帮助开发者理解并应用这些前沿技术。 【8月更文挑战第28天】在数字化时代,网络安全和信息安全是保护个人和企业数据的前线防御。本文将探讨网络安全漏洞的成因、加密技术的应用以及提升安全意识的重要性。文章旨在通过分析网络安全的薄弱环节,介绍如何利用加密技术和提高用户警觉性来构建更为坚固的数据保护屏障。
|
16天前
|
存储 监控 安全
大数据架构设计原则:构建高效、可扩展与安全的数据生态系统
【8月更文挑战第23天】大数据架构设计是一个复杂而系统的工程,需要综合考虑业务需求、技术选型、安全合规等多个方面。遵循上述设计原则,可以帮助企业构建出既高效又安全的大数据生态系统,为业务创新和决策支持提供强有力的支撑。随着技术的不断发展和业务需求的不断变化,持续优化和调整大数据架构也将成为一项持续的工作。
|
19天前
|
机器学习/深度学习 分布式计算 Cloud Native
云原生架构下的高性能计算解决方案:利用分布式计算资源加速机器学习训练
【8月更文第19天】随着大数据和人工智能技术的发展,机器学习模型的训练数据量和复杂度都在迅速增长。传统的单机训练方式已经无法满足日益增长的计算需求。云原生架构为高性能计算提供了新的可能性,通过利用分布式计算资源,可以在短时间内完成大规模数据集的训练任务。本文将探讨如何在云原生环境下搭建高性能计算平台,并展示如何使用 PyTorch 和 TensorFlow 这样的流行框架进行分布式训练。
41 2
|
7天前
|
Java 数据库连接 微服务
揭秘微服务架构下的数据魔方:Hibernate如何玩转分布式持久化,实现秒级响应的秘密武器?
【8月更文挑战第31天】微服务架构通过将系统拆分成独立服务,提升了可维护性和扩展性,但也带来了数据一致性和事务管理等挑战。Hibernate 作为强大的 ORM 工具,在微服务中发挥关键作用,通过二级缓存和分布式事务支持,简化了对象关系映射,并提供了有效的持久化策略。其二级缓存机制减少数据库访问,提升性能;支持 JTA 保证跨服务事务一致性;乐观锁机制解决并发数据冲突。合理配置 Hibernate 可助力构建高效稳定的分布式系统。
17 0
|
10天前
|
架构师 NoSQL 中间件
挑战架构师极限:分布式锁的四种实现方式,优劣对比让你一目了然!
【8月更文挑战第29天】在2024年软考架构师考试中,掌握分布式锁的实现方法极其重要。本文详细介绍了基于数据库、Redis及ZooKeeper三种常见分布式锁方案。数据库锁简单易懂但性能低;Redis锁性能优越且支持自动续期,但需引入中间件;ZooKeeper锁可靠性高,适用于分布式环境,但实现复杂。通过对比各方案优缺点,帮助考生更好地应对考试,选择最适合业务场景的分布式锁策略。
19 0
|
17天前
|
存储 缓存 Java
Android项目架构设计问题之优化业务接口数据的加载效率如何解决
Android项目架构设计问题之优化业务接口数据的加载效率如何解决
27 0
|
17天前
|
Java API 微服务
Java微服务架构应对互联网应用的大规模访问与快速迭代挑战
Java微服务架构应对互联网应用的大规模访问与快速迭代挑战,通过将应用分解为小型、自治的服务,增强系统灵活性与可扩展性。本文概览微服务定义及特点,深入剖析服务拆分、注册发现、API网关等核心原理,并介绍Spring Boot、Spring Cloud、Docker与Kubernetes等关键技术实践,助力高效构建稳定、高性能的企业级应用。
25 0
|
11天前
|
NoSQL Redis
基于Redis的高可用分布式锁——RedLock
这篇文章介绍了基于Redis的高可用分布式锁RedLock的概念、工作流程、获取和释放锁的方法,以及RedLock相比单机锁在高可用性上的优势,同时指出了其在某些特殊场景下的不足,并提到了ZooKeeper作为另一种实现分布式锁的方案。
32 2
基于Redis的高可用分布式锁——RedLock

热门文章

最新文章

下一篇
DDNS