NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

“理想解决方案”:Daltix 的自动化数据湖归档节省了 10 万美元

  • 2022-12-05
    北京
  • 本文字数:2367 字

    阅读完需:约 8 分钟

“理想解决方案”:Daltix的自动化数据湖归档节省了10万美元

本文最初发布于 Backblaze 官方博客。



在快消领域,Daltix 是提供完整、透明、高质量零售数据的先行者。GFK 和联合利华等全球行业领导者依靠他们的定价、产品、促销和位置数据来制定入市策略并做出关键决策,对 Daltix 来说,维护一个可靠的数据生态系统势在必行。


自 2016 年成立以来,随着公司的发展,Daltix 处理的数据量呈指数级增长。他们目前管理着大约 250TB 的数据,分散在数十亿个文件中,很快就造成了巨大的时间和资源消耗。Daltix 的基础设施几乎完全是围绕 AWS 构建,因为需要管理数十亿个极小的文件,所以在可扩展性和成本效益方面,AWS 的存储选项已经开始无法满足他们的需求。


我们与 Daltix 首席软件工程师 Charlie Orford 进行了交流,了解他们如何迁移到 Backblaze B2 云存储以及他们从那个过程中得出了什么结论。以下是其中的一些要点:


  • 他们使用一个自定义引擎将数十亿个文件从 AWS S3 迁移到 Backblaze B2;

  • 月度成本减少了 2500 美元,数据的可移植性和可靠性都得到了提升;

  • Daltix 创建的基础设施每天可以自动备份 840 万个数据对象。


请继续阅读,看看他们是如何做到的。


一个基于 AWS 构建的复杂数据管道


Daltix 在公司创立初期创建的基于 S3 的基础设施,大部分还完好无损。过去,数据管道将从网络上抓取的资源直接写入 Amazon S3,经由基于 Lambda 的提取器进行标准化后,再发送回 S3。然后,由 AWS Batch 选取要使用其他数据源进行补充和丰富的资源。


所有这些步骤都是在 Daltix 的分析师团队准备好数据之前进行的。为了优化流程并提高效率,Orford 开始将该流程的部分环节纳入到 Kubernetes 中,但数据存储仍然存在问题;Daltix 每天生成大约 300GB 的压缩数据,而且这个数值还在迅速增长。“随着数据收集规模的扩大,我们必须更加关注成本控制、数据可移植性和可靠性,”Orford 说,“这些都是显而易见的,但规模大了,就更加重要了。”


成本方面的考量促使我们寻找更友好的归档存储


到 2020 年,Daltix 开始意识到,在 AWS 中构建这么多基础设施存在局限性。例如,围绕 S3 元数据进行的大量定制使得移动对象的能力完全受制于目标系统与 S3 的兼容性。Orford 还担心,在 S3 中永久存储如此巨大的数据湖的成本。如他所言,“很明显,没有必要把所有东西都永远存在 S3 中。如果不采取任何措施,那么我们的 S3 成本将继续上升,并最终远远超出我们使用其他 AWS 服务的成本。”



服务器成本对比


因为 Daltix 要处理数十亿个小文件,所以不可能使用 Glacier,因为它的定价模式是基于检索费用的。即使是使用 Glacier 即时检索,Daltix 所处理的文件数量也会使他们每年额外支付 20 万美元的费用。因此,Daltix 的数据收集团队(公司 85% 以上的数据都来自这个团队)推动实施了一种可替代的解决方案,解决了一些相互矛盾的问题:


  • 数据湖的庞大规模;

  • 需要将原始资源存储为离散文件(这意味着无法进行批处理);

  • 团队能够投入的时间和精力有限;

  • 简化解决方案,以保证其可靠性。


Daltix 决定使用 Amazon S3 进行热存储,并将暖存储转移到新的归档解决方案中,这可以降低成本,同时保持重要数据可访问——即使目的是将文件存储在别处。Orford 说:“重要的是要找到某个非常容易集成而且开发风险低的东西,并且有助于降低我们的成本。对我们来说,Backblaze 确实可以满足所有要求。”


只是初步迁移每月就立省 2000 美元


在开始全面迁移之前,Orford 和他的团队做了概念验证(POC),以确保解决方案解决了他们重点关注的问题:


  • 确保海量数据成功迁移;

  • 避免数据损坏并使用审计日志检查错误;

  • 保留每个对象的自定义元数据。


“早期,我们与 Backblaze 合作,定制了一个可以满足我们所有需求的迁移工具,”Orford 说,“这给了我们继续前进的信心。”Backblaze 为我们定制了一个迁移引擎,可以保证迁移过程能够可靠地传输整个数据湖,并且保证对象级元数据完好无损。在成功迁移了一开始的 POC 存储桶之后,Daltix 就拥有了开始建模和预测未来成本所需的一切。Orford 说道:“在开始接触 Backblaze 之后,我们便不再寻找其他选项“。

2021 年 8 月,Daltix 将一个包含 22 亿个对象的 120TB 的存储桶从 S3 的标准存储转移到 Backblaze B2 云存储。仅最初的迁移就立即节省了 2000 美元 / 月或 24000 美元 / 年的成本。


宁静的数据湖

三倍的数据,直接兼容 S3,累计节省 10 万美元


现在,Daltix 每天从 Amazon S3 向 Backblaze B2 迁移 320 万个数据对象(大约 160GB 的数据)。他们在 S3 中保存了 18 个月的热数据,一旦一个对象存在达 18 个月零一天,就会被归档到 B2 中。在少数情况下,Daltix 也会接收到请求 18 个月窗口期之外的数据的请求,由于 Backblaze 的 API 兼容 S3 且数据永远可用,所以他们可以直接将数据从 Backblaze B2 拉到 Amazon S3。


每日审计日志会汇总已传输的数据量,整个迁移过程每天自动执行。Orford 说:“它在后台运行,我们不需要管理任何东西,什么都可以看到,而且很划算。对我们来说,Backblaze B2 是一个理想的解决方案。”


随着每日数据收集量的增加,会有越来越多的数据从热存储窗口中迁出,Orford 预计成本会进一步降低。据 Orford 估计,日迁移量将在大约一年半后接近目前水平的三倍:这意味着 Daltix 每天将向 Backblaze B2 备份 900 万个对象(约 450GB 数据)。长远来看,从 Amazon S3 切换到 Backblaze B2 为 Daltix 节省的成本都令人难以置信。Orford 说:“因为使用了 Backblaze B2,预计到 2023 年,我们在存储支出上将累计节省 7.5 万至 10 万美元,每年至少节省 3 万美元。”


自己算算看


想知道每年多出 3 万美元能做什么吗?可以利用我们的云存储定价计算器,了解下迁移到 Backblaze B2 可以节省多少钱。


声明:本文为 InfoQ 翻译,未经许可禁止转载。


原文链接:https://www.backblaze.com/blog/an-ideal-solution-daltixs-automated-data-lake-archive-saves-100k/

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2022-12-05 10:003060
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 493.8 次阅读, 收获喜欢 1967 次。

关注

评论

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

抽象照进现实

型火🔥

抽象 视觉化

OpenKruise 2021 规划曝光:More than workloads

阿里巴巴云原生

阿里云 开源 容器 云原生 调度器

案例展示自定义C函数的实现过程

华为云开发者联盟

数据库 数据 C语言 字符串

Linux的进程pid编号极限

程序员架构进阶

Linux 进程

深度解析!滴滴内部开源Spring IoC和AOP源码小册

Java架构追梦

Java spring 架构 aop ioc

电商平台如何激发内容生态

马踏飞机747

内容 内容分发网络 电商

获奖名单|七日更挑战成功!

InfoQ写作社区官方

奖品 七日更 热门活动

架构师训练营 - 大作业二

Pudding

如果腾讯、阿里是弱生态,那么谁是强生态?

ToB行业头条

架构训练营 - 第 13 周课后作业 - 学习总结

Pudding

分布式身份:重新定义你的“身份”管理

华为云开发者联盟

区块链 数据 隐私保护 分布式身份标识

anyRTC 2020年12月SDK更新

anyRTC开发者

uni-app android 音视频 WebRTC sdk

Linux进程知识干货|收藏

赖猫

c++ Linux 后台开发 运维

Java并发编程:AQS的公平性

码农架构

Java Java 分布式 java 并发

测开之函数进阶· 第7篇《装饰器装饰类,通用装饰器,有啥区别呢?》

清菡软件测试

测试

Appium的安装及简单的使用介绍

行者AI

人工智能

这些常用ETL任务调度框架组件,你都知道几个?

TASKCTL

大数据 kettle 海豚调度 调度引擎 调度式分布

如何防止短信验证码接口被恶意调用攻击?

香芋味的猫丶

短信 短信防刷 接口安全 验证码

软件测试--中间件介绍

测试人生路

软件测试 中间件

架构师训练营 - 大作业一

Pudding

2020 — iOS 面试败北感悟

iOSer

ios 面试 iOS Document 底层知识

从根上理解高性能、高并发(三):深入操作系统,彻底理解I/O多路复用

JackJiang

网络编程 高并发 高性能 即时通讯

敏捷团队的质量保障赋能

BY林子

质量保障 质量赋能 敏捷测试

Vue 3 组件开发:搭建基于SpreadJS的表格编辑系统(环境搭建)

葡萄城技术团队

Vue SpreadJS vite

架构师训练营 - 第 13周课后作业(1 期)

Pudding

深圳区块链交易所开发、数字货币交易平台开发

W13902449729

深圳区块链交易所开发 数字货币交易平台开发

云原生2.0时代,华为云DevOps立体运维实践

华为云开发者联盟

DevOps 运维 云原生 华为云

IT2.0:中台构建还应从企业业务实际出发

华为云开发者联盟

区块链 分布式 安全 数据 身份安全

架构训练营 - 第12周课后作业 - 学习总结

Pudding

万字长文聊缓存(下)- 应用级缓存

Silently9527

缓存 缓存击穿 Caffeine 缓存架构

四年三次获奖,PostgreSQL再度荣获“年度数据库”桂冠!

PostgreSQLChina

数据库 postgresql 开源

“理想解决方案”:Daltix的自动化数据湖归档节省了10万美元_大数据_Amrit Singh_InfoQ精选文章