硬核干货——《中小企业 AI 实战指南》免费下载! 了解详情
写点什么

优步借助 MyRocks 差异备份显著节省了存储成本

作者:Matt Saunders

  • 2024-12-05
    北京
  • 本文字数:1529 字

    阅读完需:约 5 分钟

优步借助 MyRocks 差异备份显著节省了存储成本

据其博客的文章介绍,优步(Uber)已经成功地为其分布式数据库实施了一个新的差异备份(Differential Backup)系统,该系统使存储成本降低了 70%。


优步(Uber)工程师开发这一解决方案,是为了应对优步(Uber)将其 Schemaless 和 Docstore 服务的存储迁移到基于 RocksDB 的 MySQL 存储引擎 MyRocks 后出现了存储成本上升和备份完成时间过长的问题。


在优步(Uber),Schemaless 和 Docstore 分布式数据库处理数十 PB 的运营数据,每秒处理数千万个请求。这些数据库对优步(Uber)的全球运营至关重要,用以支持各种业务功能并确保业务的连续性。


当优步(Uber)团队将存储平台迁移到 MyRocks 时出现了问题,尽管 MyRocks 针对写入操作和存储效率进行了优化,但缺乏对增量备份(Incremental Backup)的支持。这种限制意味着每个数据库分区每次都需要进行完全备份(Full Backup),这导致了大量的重复数据存储并增加了 blob 存储成本。


新的差异备份(Differential Backup)系统利用了 MyRocks SSTable 文件的不可变特性,这些文件在连续备份之间通常保持不变。系统不会在每次备份期间复制所有文件,而是维护一个共享的 SSTable 文件池,并且只将新创建的文件添加到该共享池中。清单文件通过记录包含的文件列表来定义每个备份,因此可以在需要时进行高效地恢复。


Adithya Reddy 在一篇 技术博客 中详细介绍了该解决方案,该系统的工作原理是首先执行初始的完全备份,将所有元数据和 SSTable 文件存储在 blob 存储区内的共享池中。后续差异备份仅将新的 SSTable 文件添加到共享池中,同时重用之前备份中的现有文件。



备份清单文件以 JSON 文档的形式实现的,用以跟踪基本信息,包括备份类型、成功状态、计时详细信息和文件校验和。该清单用作备份的索引,并为恢复过程提供必要的信息。


新系统由一个称为 Backup Scheduler 的无状态服务管理。Backup Scheduler 根据分区备份状态确定备份的时间和频率。实际的备份过程由临时备份容器处理,当需要使用 Percona XtraBackup 工具执行备份时,这些容器就会被激活。


虽然系统主要执行差异备份,但在某些情况下仍需要完全备份,例如:


  • 当备份在生产环境中首次运行时

  • 当上一个分区节点变得不适合使用时

  • 在 MyRocks 版本升级之前

  • 当现有备份池达到差异备份上限时


备份系统继续使用已建立的 Percona XtraBackup 工具进行备份和恢复过程,在添加新的差异备份功能的同时保持与现有系统的兼容性。这种方法使优步(Uber)能够在不需要对其更广泛的数据库基础设施进行大量更改的情况下实施改进。


尽管存在这些限制,但改进仍然很显著。优步(Uber)报告称,大多数实例的数据存储平均减少了 45%,一些较大的实例的每次差异备份的存储成本减少了 70% 或更多。备份过程的速度也得到了显著的提高,完全备份的完成速度比以前快两倍,差异备份的完成时间缩短了五倍。


MyRocks 最初是由 Facebook(现在的 Meta)开发的,目的是为 RocksDB 添加复制和 SQL 层。2016 年,Facebook 将其用户数据库迁移至 MyRocks。RocksDB——MyRocks 背后的底层存储引擎——也被其他组织采用,一些用户声称性能提高了三倍,Percona 发布的基准测试也显示,它的性能与 InnoDB 相比有了显著的改进。然而,对于某些用例,有报道称 RocksDB 在检索方面的表现不如 InnoDB。

作者介绍


Matt Saunders 是 Adaptavist 的首席技术官 DevOps 主管。他帮助团队使用 DevOps、平台工程和云原生工具和技术,快速高效地交付质量可靠的软件,同时将压力降到最低。他曾与复杂的企业、小型初创企业、中小企业以及介于两者之间的所有企业合作过。还联合组织了伦敦 DevOps 聚会小组,该小组拥有 10000 多名成员,每月举办一次非常受欢迎的行业活动。


查看原文链接:

https://www.infoq.com/news/2024/11/uber-myrocks-backups/

2024-12-05 08:039593

评论

发布
暂无评论
发现更多内容

成为榕树:解析华为的智能之路

脑极体

AI

Linux设备驱动系列(七)——真实的设备驱动程序

Linux内核拾遗

Linux Kenel 内核开发 设备驱动

三项国际人工智能顶会大奖!拿下!

天翼云开发者社区

人工智能 云计算 天翼云

日志敏感数据扫描和脱敏最佳实践

观测云

数据脱敏 日志处理

PCB中泪滴的作用

芯动大师

PCB 电路板 泪滴

DEKRA德凯2023年财年 创新引领韧性发展

财见

杭州悦数参与国家重点研发计划“高性能可信跨境贸易支付监管关键技术研究”项目

悦数图数据库

英特尔软件定义架构赋能未来智能座舱

最新动态

保姆级指南,从0到1打造你的个人开源项目

Zhendong

Java GitHub 开源

稳扎稳打 部署丝滑 开源即时通讯(IM)项目OpenIM源码部署流程(linux windows mac)

Geek_1ef48b

有趣的大模型之我见 | Claude AI

亚马逊云科技 (Amazon Web Services)

API 生成式人工智能 Amazon Bedrock

一键修图拯救五一废片!百度搜索推出AI图片助手

AI浩

人工智能

FlowUs息流接入字节大模型,打造知识管理与协作平台新模态

新消费日报

从原始边列表到邻接矩阵Python实现图数据处理的完整指南

华为云开发者联盟

Python 开发 华为云 华为云开发者联盟 企业号2024年4月PK榜

亚马逊国际AMAZON商品详情API返回值深度解析

技术冰糖葫芦

api 货币化 API 接口 pinduoduo API

酷克数据启动鲲鹏原生应用开发合作

酷克数据HashData

全景剖析阿里云容器网络数据链路(七):Terway DataPath V2(Terway≥1.8.0)

阿里巴巴云原生

阿里云 容器 云原生

小红书从记忆机制解读信息检索,提出新范式获得 EACL Oral

小红书技术REDtech

gr 检索 信息检索 GDR EACL

以全栈智算拥抱生态,为AIGC种一棵向上生长的巨榕

脑极体

AI

Sora新突破!AI生成电影迈向新阶段,配音版Sora登场!将如何改变影视行业?

蓉蓉

人工智能 openai sora

PPT目录页怎么做好看?2个自动生成目录的PPT软件推荐!

彭宏豪95

AI PPT 在线白板 AIGC AI生成PPT

优步借助 MyRocks 差异备份显著节省了存储成本_数据库_InfoQ精选文章