2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

大数据公司 LiveRamp 上云记(一):为什么选择 GCP?

  • 2020-02-19
  • 本文字数:1987 字

    阅读完需:约 7 分钟

大数据公司LiveRamp上云记(一):为什么选择GCP?

LiveRamp 是一家大数据公司。


很多公司拥有大数据。每天早餐之前,健壮的日志框架就已经生成了 PB 级别的日志,并以防万一将这些数据长期保存在了亚马逊的 S3 上。


还有一些公司会使用他们自己的大数据。他们拥有自己的产品,他们会通过 Hadoop 和 Spark 来做一些机器学习,从而生成针对客户的产品推荐。


但是像 LiveRamp 这样的大数据公司就很少了。我们从客户那里赚取的每一分钱都来自于我们的 Hadoop 处理流水线。LiveRamp 的产品线很广,但这些产品都经由了相同的生产流程,即提取、转换、加载、加入 Hadoop 处理管道。如果说今天我们关闭了 Hadoop 基础设施,那公司也就可以直接关门停业了。


到去年为止,LiveRamp 所有的大数据计算都是在本地数据中心完成的。我们的数据中心部署了一个超过 2500 节点的 Cloudera Hadoop 集群。而从今年开始,我们逐步把它们迁移到了 GCP(谷歌云计算平台)。


Sasha Kipervarg,Patrick Raymond 和我在 Google Next 大会上展示了这次迁移之旅,包括我们从中学到的经验教训,以及接下来的计划等。在本系列博客文章中,我将从技术角度更深入地探讨这次迁移,重点有:


  • 在 2018 年及其以前,我们是如何在本地运营 LiveRamp 大数据基础设施的?

  • 我们为什么要决定迁移?

  • 我们希望 LiveRamp 基础设施在 GCP 上是什么样子?

  • 我们是如何实现的?

  • 我们下一步该如何发展?


尽管这是一项巨大的工程,但我们仍然对其感到兴奋,因为它将改变 LiveRamp 的开发体验,让我们可以用前所未有的速度将可扩展的、可靠的产品推向市场。

LiveRamp 一览


LiveRamp 有很多产品,但它们都是本着匹配客户 CRM(客户关系管理)以及匹配数据集的原则在不同生态系统之间转移数据。我们通过批文件传输管道和实时的像素服务器这两种方式将这些转换后的数据传输到数字广告生态系统中去。


Hadoop 生态系统尤其适合执行大规模数据连接,这也是我们所使用的。我们的绝大多数硬件都用在了 Cloudera Hadoop 集群。本地集群的最大规模可达到为:


  • 2500 个工作节点

  • 90000 个 CPU

  • 300TB 的内存

  • 100PB 的存储


我们的基础设施非常繁忙,每天有超过 10 万个 YARN 应用在运行,读写量超过 13 个 PB/天,以及超过 80%的系统利用率:



任何拥有 150 名工程师并且在不断增长的公司都会面对大量的服务以及与之对应的支持基础设施。截至 2018 年,我们使用了 500 多个由 Chef 统一配置管理的 VMWare 虚拟机(一个相对小一些的基于 CoreOS Tectonic 版本的 Kubernetes 集群。我们的实时键值服务平台则由内部的一个开源项目实现。


我们需要每天从合作伙伴处获取文件和日志,然后将处理后的文件送还,平均数据量约为 8TB 每天,像素服务器的平均访问量也达到了 20 万 QPS。


尽管我们在 AWS 运行了一些与国际团队和像素服务器相关的服务,但如此大的工作任务仍然用尽了本地数据中心的硬件资源。

上云

虽然我们对自己的基础设施有诸多不满,但是本着“正常工作”优先的原则,我们一直没有对它进行改变。但到了 2017 年中旬,我们开始意识到本地数据中心的规模已经无法满足我们的国际化需求。于是我们具备了所有迁移到云的一般动机:


  • 规模扩展:我们需要能够更快地扩展我们的基础设施,而不再受限于数据中心物理设备的搭建,例如 2 个月的硬件购买时间以及更多的空间放置需求等。

  • 灾难恢复:我们并不满意自己的灾难恢复系统。我们希望在数小时内就可以从灾难性的停机状态中恢复过来,而不是花费几个星期从冷备份开始恢复。

  • 招聘:工程师们希望能够接触到更重要和实用的技能,而在 2019 年,这就是着云计算。

  • 开发速度:假如我们有 30%的开发人员可以从基础设施维护中解放出来,这意味着他们可以重新转向产品开发,从而将产品推向市场的速度提高 30%。


因此,到 2017 年底,我们开始认真地评估云服务供应商,并开始把 LiveRamp 想象成一家云原生技术公司。

为什么选择 GCP?


我们喜欢 GCP,但我们知道它并不是默认选项。我们之所以选择 GCP 主要有两个驱动因素:


  • 技术


技术评估并不适合放在本篇文章中,但我要强调的一点是 GKE(谷歌Kubernetes引擎)是一个非常关键的因素。本次迁移有一个很明确的方向,那就是要把所有的应用程序和服务迁移到 Kubernetes 平台。可以粗略地讲,GKE 就是 Kubernetes 领域事实上的领头羊。


虽然我们可以选择任意一家云供应商并最终完成迁移,但一个很大的区别就是云供应商背后的技术支持人员。GCP 把我们同那些想回答我们问题并提供解决方案的工程师很好地联系了起来。


我们对 GCP 的技术支持合约也非常满意。我们总是能够与专业工程师及时取得联系并迅速得到解决措施。这也给了我们信心,通过与 GCP 合作,我们相信可以解决任何问题,这一点都现在也没有改变。


在下一篇文章中,我将讨论一些大数据基础设施迁移到 GCP 的细节,哪些方面可以直接转换到 GCP,而哪些方面又需要重新设计。敬请期待!


原文链接:


https://liveramp.com/engineering/migrating-a-big-data-environment-to-the-cloud-part-1/


2020-02-19 09:523799

评论

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

面向对象编程,你真正懂吗?

CRMEB

架构实战营:模块七作业

刘璐

洞见科技深度参编的央行金科联盟「多方安全计算」及「联邦学习」金融应用研究报告正式发布

洞见科技

金融科技 隐私计算 金融创新

声网的混沌工程实践

声网

测试 混沌工程 质量保障 Dev for Dev

不想被开巨额罚单?银行需筑起数据安全“护城河”

BeeWorks

众安保险 x StarRocks | 全新实时分析能力开启数字化经营新局面

StarRocks

数据库 StarRocks

模块7作业

Mr小公熊

[Day8]-[动态规划] 最长公共子序列

方勇(gopher)

LeetCode 动态规划 数据结构与算法、

读《A Philosophy of Software Design》——(9)

术子米德

架构师成长笔记

皮皮APP联动社会各界,关注孤独症儿童,照亮人生成长的道路

联营汇聚

王者荣耀商城异地多活架构设计

李大虾

#架构实战营 「架构实战营」

数据库原理知识及SQL语言知识拓展

王小王-123

MySQL 数据库 MySQL 数据库 4月月更

架构训练营 模块七

Geek_16d2b8

架构训练营 模块七

云原生小课堂|高性能、高可用、可扩展的MySQL集群如何组建?

York

云原生 MySQL 高可用 MySQL 数据库

老项目改造返回值规范化

Rubble

4月日更

王者荣耀商城异地多活架构设计

五月雨

架构实战营 「架构实战营」

浅谈加密算法 aes

奋飞安全

android 安全

模块七作业

blazar

「架构实战营」

王者荣耀商城异地多活架构设计

AragornYang

架构训练营 架构实战营

每个互联网人才都应该知道的SQL注入!

喀拉峻

网络安全 安全 渗透测试 SQL注入

模块七

Leo

架构实战营

音视频开发必懂知识—低延迟相关知识整理

Linux服务器开发

WebRTC ffmpeg 音视频开发 低延迟 流媒体服务器开发

SpringBoot接入轻量级分布式日志框架(GrayLog)

Java工程师

Java spring 分布式 springboot 组件

为什么客户体验为王

小炮

客户服务

关于数据仓库架构及各组件方案选型

五分钟学大数据

数据仓库 4月月更

Tapdata PDK 生态共建计划启动!Doris、OceanBase、PolarDB、SequoiaDB 等十余家厂商首批加入

tapdata

数据库 实时数据

现代间谍技术的演变:从“王牌特工”到“行走的50w”

脑极体

读《A Philosophy of Software Design》——(8)

术子米德

架构师成长笔记

Redis+Caffeine两级缓存,让访问速度纵享丝滑

Java工程师

Java 数据库 redis 架构 高性能

那些年我们一起优化的SQL

Java工程师

Java sql 程序员 索引 MySQL 数据库

区块链溯源!“有机”食品也要“有迹可循”

旺链科技

区块链 产业区块链 食品追溯

大数据公司LiveRamp上云记(一):为什么选择GCP?_服务革新_Benjamin Podgursky_InfoQ精选文章