写点什么

扩展 Uber 批处理数据平台,利用数据网格原则开启云端之旅

作者:Claudio Masolo

  • 2024-10-25
    北京
  • 本文字数:1555 字

    阅读完需:约 5 分钟

大小:784.73K时长:04:27
扩展Uber批处理数据平台,利用数据网格原则开启云端之旅

几个月前,Uber开始将其批处理数据分析和机器学习平台迁移到了谷歌云平台(GCP)上。最近,Uber 在其工程博客上发布了一篇文章,提供了更多将批处理数据平台迁移上云的信息,其中包含至关重要的数据网格原则

 

Uber 的批处理数据平台是其数据基础设施的重要组成部分,有 1 万多名内部用户,其中包括数据科学家、工程师、城市运营人员和业务分析师。该系统管理着约 1.5 艾字节的数据(存储在Apache Hadoop分布式文件系统HDFS中),跨两个本地区域,每天处理超过 50 万次Presto查询和 37 万Apache Spark应用。为了提高可扩展性并简化运营,Uber 将其批处理数据平台迁移到了谷歌云 GCP。在本次迁移中,他们将谷歌云存储(GCS)作为 Uber 的数据湖,同时将其他基础设施迁移到基于云的基础设施即服务(IaaS)上。

 

在迁移上云的过程中,他们遇到了一些挑战,这主要是因为云提供商对于存储和身份与访问管理(IAM)有一些限制。Uber 主要考虑的问题之一是如何将 HDFS 文件有效地映射到 GCS 存储桶,同时又避免过度使用或未充分利用可用的资源。此外,Uber 必须在多级存储结构中适当应用访问控制,以确保系统安全,同时又避免不必要地提升用户权限。这次迁移也提供了一个机会,让他们可以通过合并安全组和分散数据所有权来增强系统。在新模式下,属于特定组织的数据将存储在特定组织的存储桶中,数据所有权和访问控制变得更清晰。

 

在整个迁移过程中,安全和治理一直都是核心问题。他们的目标是根据数据的预期用途和生命周期来映射数据,并对其进行分类,以保证可以应用恰当的访问控制。组织内部广泛使用的关键数据集存储在开放访问的专用数据桶中,而不太重要的数据则单独存储,并施加访问限制和生命周期管理策略。此外,迁移还实现了基础设施的自动设置,可以加快测试、准生产和生产环境的准备。这种自动化有助于加快新数据分析用例的应用,并利用多个区域为灾难恢复场景做好了准备。

 

为了推动这一巨大转变,Uber 开发了一项名为 DataMesh 的服务,旨在抽象和管理云基础设施。DataMesh 遵循数据网格原则来组织数据资源,重点关注数据所有权去中心化和领域控制。该服务可以利用云资源自动校正(reconciliation)数据。它从 Uber 的内部存储库中提取信息,并保证数据被恰当地标记、保护和监控。DataMesh 平台还能管理 HDFS 路径到对应云路径的映射,尽可能地使用户实现无缝迁移,并防止中断现有工作流程。



DataMesh 组件和层次结构的逻辑视图

 

在迁移过程中,Uber 面临的一个重大挑战是:需要适应数据所有权的变化和 GCS 设置的限制。由于团队重组或用户资产重新分配,所以数据所有权可能会发生变化。为了解决这个问题,Uber 实现了一个自动化流程,用于监控并在必要时重新分配所有权,确保数据的安全存储和管理。此外,为了避免达到 GCS 存储限制,Uber 还优化了数据分布,将大量使用的表分离到各自的数据桶中,从而提高性能并简化监控。

 

以下是现实世界中其他实现数据网格的例子:

  • Gilead Sciences:这是一家生物制药公司。他们开发了数据网格架构,目的是创建一个以数据为支撑的组织与运营新模式,使他们公司能够参与到云转型中。数据网格方法使得该公司能够将数据作为产品进行管理,并采用云优先的架构。

  • Saxo Bank:这是一家金融服务公司。他们在一个项目中实现了数据网格,旨在分散数据所有权和管理权,使领域团队能够管理他们自己的数据产品并为业务提供实时洞察。

 

展望未来,Uber 的目标是通过构建一个提供自治数据域的平台,进一步扩大数据网格原则的使用范围。这将简化基础设施管理并强化数据治理,最终将可以创建一个更加灵活、安全和经济高效的数据生态系统。Uber 批处理数据平台迁移上云是一项非常重大的工程,但通过精心策划并开发 DataMesh 等创新工具,Uber 正在云中获得更高的可扩展性、安全性和运营效率。

 

原文链接:

https://www.infoq.com/news/2024/10/uber-batch-data-mesh/

2024-10-25 23:597787

评论

发布
暂无评论

为了快一点,所以我慢一点

树上有只程序猿

使用Flutter开发微信小程序:构建简单的天气预报小程序

Onegun

flutter 小程序容器

中国信通院联合腾讯安全发布《数据安全治理与实践白皮书》

Geek_2d6073

强化学习实践:Policy Gradient-Cart pole游戏展示

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 7 月 PK 榜

天津企业采购堡垒机选择哪个厂家好?咨询电话多少?

行云管家

网络安全 信息安全 等级保护 天津

软件测试/测试开发丨面向对象编程学习笔记分享

测试人

Python 面向对象 软件测试

Linux Bash Shell 中变量的 5 个易错点

快乐非自愿限量之名

Linux 变量 教程 教程分享

智能化新服务即将惊艳亮相HDC2023 ——华为云Astro爆发低代码能量

华为云PaaS服务小智

云计算 低代码 华为云 华为开发者大会2023

JMeter 并发压力测试指南:从设置到结果分析

Liam

Jmeter 性能测试 接口测试 API 测试工具

数仓性能调优:大宽表关联MERGE性能优化

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 7 月 PK 榜

《面向分布式云的直播及点播云技术创新方案》获中国信通院“分布式云技术创新先锋案例”

阿里云视频云

云计算 视频云 信通院

多端低代码开发平台魔笔:教你1小时搭建代办事项管理平台

移动研发平台EMAS

低代码开发 多端开发 降本增效 阿里云魔笔

人工智能促进知识的公平获取

澳鹏Appen

人工智能 翻译 nlp 数据标注 小语种

实战一个自己用的node-cli

互联网工科生

Vue Node cli

得物社区推荐精排模型演进

得物技术

推荐系统 排序 算法、

传统软件开发和低代码开发的区别

高端章鱼哥

软件开发 低代码开发 JNPF 传统开发

最强优化指令大全 | 【Linux技术专题】「系统性能调优实战」终极关注应用系统性能调优及原理剖析(下册)

洛神灬殇

Java Linux 性能优化 JVM GC

详解共识算法的Raft算法模拟数

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 7 月 PK 榜

etcd原理详解

快乐非自愿限量之名

架构 etcd

华为云河图KooMap 共筑数字孪生底座 共建产业标杆

华为云开发者联盟

华为云 华为云开发者联盟 企业号 7 月 PK 榜

选择香港云主机,让您的网站在全球范围内高速运行

一只扑棱蛾子

香港云主机

IDC&用友联合发布《建设数字中国升级数智底座-企业数智化底座白皮书》

用友BIP

白皮书 数智底座

荣登榜首!云起无垠领榜“CCIA潜力之星”

云起无垠

化亿级海量于秒级瞬间:大表关联计算提速

鲸品堂

sql 数据分析 数据分析工具 企业号 7 月 PK 榜

Python案例分析|21点扑克牌游戏 | 社区征文

TiAmo

Python 数据分析 年中技术盘点 21点扑克游戏

请把这6个效率神器给我焊在电脑上

伤感汤姆布利柏

行云管家堡垒机和传统堡垒机的区别简单讲解

行云管家

网络安全 IT 堡垒机 IT运维

聊聊照片类数据中的显水印和隐水印

冯骐

隐私保护 数据安全 数据服务 水印

构建松耦合和高内聚的软件系统:重要性和实践原则

2756

高内聚 架构设计原则 #微服务

刻意练习:从新手到专家

老张

提升能力 刻意练习

扩展Uber批处理数据平台,利用数据网格原则开启云端之旅_云计算_InfoQ精选文章