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

本文涉及的产品
智能数据建设与治理Dataphin,200数据处理单元
简介:

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

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


为什么需要知识图谱?

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

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

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

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

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

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


image


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

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

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

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

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

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

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

image


数据管理技术架构

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

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

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

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

image

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

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

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

原文链接

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
相关文章
|
2月前
|
监控 Java API
Spring Boot 3.2 结合 Spring Cloud 微服务架构实操指南 现代分布式应用系统构建实战教程
Spring Boot 3.2 + Spring Cloud 2023.0 微服务架构实践摘要 本文基于Spring Boot 3.2.5和Spring Cloud 2023.0.1最新稳定版本,演示现代微服务架构的构建过程。主要内容包括: 技术栈选择:采用Spring Cloud Netflix Eureka 4.1.0作为服务注册中心,Resilience4j 2.1.0替代Hystrix实现熔断机制,配合OpenFeign和Gateway等组件。 核心实操步骤: 搭建Eureka注册中心服务 构建商品
375 3
|
2月前
|
数据采集 缓存 前端开发
如何开发门店业绩上报管理系统中的商品数据板块?(附架构图+流程图+代码参考)
本文深入讲解门店业绩上报系统中商品数据板块的设计与实现,涵盖商品类别、信息、档案等内容,详细阐述技术架构、业务流程、数据库设计及开发技巧,并提供完整代码示例,助力企业构建稳定、可扩展的商品数据系统。
|
13天前
|
数据采集 机器学习/深度学习 搜索推荐
MIT新论文:数据即上限,扩散模型的关键能力来自图像统计规律,而非复杂架构
MIT与丰田研究院研究发现,扩散模型的“局部性”并非源于网络架构的精巧设计,而是自然图像统计规律的产物。通过线性模型仅学习像素相关性,即可复现U-Net般的局部敏感模式,揭示数据本身蕴含生成“魔法”。
77 3
MIT新论文:数据即上限,扩散模型的关键能力来自图像统计规律,而非复杂架构
|
22天前
|
JSON 供应链 监控
1688商品详情API技术深度解析:从接口架构到数据融合实战
1688商品详情API(item_get接口)可通过商品ID获取标题、价格、库存、SKU等核心数据,适用于价格监控、供应链管理等场景。支持JSON格式返回,需企业认证。Python示例展示如何调用接口获取商品信息。
|
16天前
|
消息中间件 缓存 监控
中间件架构设计与实践:构建高性能分布式系统的核心基石
摘要 本文系统探讨了中间件技术及其在分布式系统中的核心价值。作者首先定义了中间件作为连接系统组件的"神经网络",强调其在数据传输、系统稳定性和扩展性中的关键作用。随后详细分类了中间件体系,包括通信中间件(如RabbitMQ/Kafka)、数据中间件(如Redis/MyCAT)等类型。文章重点剖析了消息中间件的实现机制,通过Spring Boot代码示例展示了消息生产者的完整实现,涵盖消息ID生成、持久化、批量发送及重试机制等关键技术点。最后,作者指出中间件架构设计对系统性能的决定性影响,
|
2月前
|
数据采集 监控 数据可视化
数据量暴涨时,抓取架构该如何应对?——豆瓣电影案例调研
本案例讲述了在豆瓣电影数据采集过程中,面对数据量激增和限制机制带来的挑战,如何通过引入爬虫代理、分布式架构与异步IO等技术手段,实现采集系统的优化与扩展,最终支撑起百万级请求的稳定抓取。
数据量暴涨时,抓取架构该如何应对?——豆瓣电影案例调研
|
2月前
|
缓存 前端开发 BI
如何开发门店业绩上报管理系统中的门店数据板块?(附架构图+流程图+代码参考)
门店业绩上报管理是将门店营业、动销、人效等数据按标准化流程上报至企业中台或BI系统,用于考核、分析和决策。其核心在于构建“数据底座”,涵盖门店信息管理、数据采集、校验、汇总与对接。实现时需解决数据脏、上报慢、分析无据等问题。本文详解了实现路径,包括系统架构、数据模型、业务流程、开发要点、三大代码块(数据库、后端、前端)及FAQ,助你构建高效门店数据管理体系。
|
2月前
|
SQL 数据采集 数据处理
终于有人把数据架构讲清楚了!
本文深入浅出地解析了数据架构的核心逻辑,涵盖其定义、作用、设计方法及常见误区,助力读者构建贴合业务的数据架构。
|
2月前
|
存储 负载均衡 NoSQL
【赵渝强老师】Redis Cluster分布式集群
Redis Cluster是Redis的分布式存储解决方案,通过哈希槽(slot)实现数据分片,支持水平扩展,具备高可用性和负载均衡能力,适用于大规模数据场景。
198 2
|
2月前
|
存储 缓存 NoSQL
【📕分布式锁通关指南 12】源码剖析redisson如何利用Redis数据结构实现Semaphore和CountDownLatch
本文解析 Redisson 如何通过 Redis 实现分布式信号量(RSemaphore)与倒数闩(RCountDownLatch),利用 Lua 脚本与原子操作保障分布式环境下的同步控制,帮助开发者更好地理解其原理与应用。
104 0

热门文章

最新文章