10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

Facebook 谈 Hadoop,Hive,HBase 和 A/B 测试

  • 2010-07-15
  • 本文字数:2052 字

    阅读完需:约 7 分钟

Hadoop 峰会 2010 上,一系列 Hadoop 及其相关技术的大规模用户带来了演讲报告。值得注意的是,Facebook 的主题演讲展示了他们使用 Hive 来作分析的详细信息。Mike Schroepfer,Facebook 的工程副总裁,作了描述使用 Hadoop 所处理的 Facebook 的数据规模的报告。

Schroepfer 给出了 Facebook 如何使用 Hadoop 来计算大规模分析例子。当 Facebook 计划推出他们的“Like”按钮时,他们担心会不会发生“自相蚕食”的结果——会不会因此反而减少了文字评论,而不是提升了参与度?为了验证这一点,他们运行了 A/B 测试来比较用户行为,给一组用户使用新功能 (Like 按钮),而另一个对照组则没有。这需要在一个互接连的社区内进行测试,“内生的组织”——在组织之外的连接很少。他们使用了两组南美国家来进行比较,哥伦比业,委内瑞拉 vs 阿根廷,智利。测试的结果是使用 Like 按钮的时候评论增加了 4.46%,而对照组的数据则是 0.63%。这一类测试所产生的巨大的数据集正是 Facebook 使用 Hadoop 来处理数据的例子。Schroepfer 接着给出了另一个例子来说明为什么数据驱动的 A/B 测试这么重要:Facebook 还用同样的方法测试过电子邮件提醒的两种不同的设计。 尽管大多数的人都期望更为图形化更丰富的电子邮件会产出更好的响应率,但与简单的基于文本的电子邮件对比测试时,后者却有着三倍于前者的响应率——这表明了使用数据测试观点而不是依赖直觉所带来的巨大威力。

Schroepfer 指出,Facebook 有 4 亿用户,超过一半的用户每天登录,而 Neilsen 调查指出花在 Facebook 上的时间,比接近它的 6 个站点所花的时间的总和还多。Facebook 用户每个月分享 250 亿的内容信息,以及 5000 亿的单月页面浏览量。要处理这样的数据卷,Facebook 使用了大型的 Hadoop 集群,存储 36PB 未压缩的数据,有超过 2250 台机器和 23000 个核心,每个机器 32GB 内存,每天处理 80-90TB 数据 (推测是新数据)。该集群每个月有 300-400 的用户,他们每天提交 25000 个任务。

Facebook 从两个主要的数据源输入数据到 Hadoop 集群。他们使用开源的 Scribe 上传工具从 Web 集群载入数据,每 10 到 15 分钟就从成千上万的机器传输数据。他们每天还从系统记录载入数据,一个超过 2000 节点的 MySQL 联合集群。这些数据包括概要文件,好友信息,以及广告和广告推广信息。他们将数据载入一个生产环境白金集群,只运行仔细监控的关键性任务,并且这些任务在集群里运行前都是受控管理的。Facebook 同时还运行 Hive 副本将数据推送到金牌和银牌集群,运行关键级别低一些的任务。他们还将数据从白金集群推送到一个 Oracle RAC 实例。他们的集群是由一系列节点和一个单一核心的交换机组成的。将数据分割到不同的集群保证了关键性任务的高可靠性,同时还支持将 Hadoop 用于更为探索性和分析性的用途。这与 Yahoo 所描述的他们如何将 Hadoop 同时用于生产集群和科研集群非常的相似 (请查看雅虎!来自Hadoop 峰会的最新更新获取更多内容)。

为了支持向Hadoop 集群载入日志的高可靠性,他们使用Scribe 与一个中间聚合器,以及基于树型的分布将数据导出到本地托管的HDFS 和Hadoop 集群里。在这个层次,运行第二个HDFS 实例(使用单独的名字节点),作为热备份——如果主HDFS 宕机,系统将向备份的HDFS 写入。当拉出数据载入到生产环境中时,只需要从这两个文件系统拉出数据,压缩,然后传送到生产集群中。

Schroepfer 指出,95% 的 Facebook 任务由 Hive 写成,他们可以快速的写就,通常十分钟就可以。实际上 Facebook 创建了一个基于 Web 的工具,HiPal,来让业务分析师使用 Hive,只需要简单的撰写查询语句,支持查询载入仓库的近 20000 个表 (HiPal 并未公开)。他们一步一步从每天的批处理过渡到实时的查询——他预见将会出现最快查询在一分钟内就可以返回的系统,这必将为一系列新兴的应用开启大门。

接下来,来自 Facebook 的 John Sichi 及何永强展示了 Hive 与 HBase 和 RCFile 的集成。HBase 是类似 BigTable 的键值存储模型,将数据存储于 Hadoop 的 DFS 文件系统。Facebook 正在尝试将 HBase 用于数据仓库里的持续更新的维数据。Facebook 测试了将 Hive 集成到 20 个节点的 HBase 集群——从 Hive 向 HBase 载入 6TB gzip 压缩的数据块用了 30 个小时,在这种配置下可以达到 30GB/ 每小时的增加载入速率。在 HBase 运行表扫描比执行原生的 Hive 查询要慢五倍以上。他们尝试对这一集成进行优化,以利用最新的 HBase 性能优化所带来的好处。RCFile 是 Hive 中一种新的存储格式,将数据按列式 (columnar) 存储。他们采用这种格式,平均减少了 20% 的存储需求,同时可以达到更好的性能 (按需延迟对列数据的解压)。

Facebook 对 Hadoop 技术将持续投入,并对他们所使用开源项目作出了贡献,比如 Hive(由他们所发起的) 以及 HBase。他们的计算集群正在处理超大规模的数据并有着支持高可用性的架构,低延迟的应用,和与 Hadoop 相集成的数据库。更多来自 Facebook 的案例请查阅 infoq.com/facebook

查看英文原文: Facebook on Hadoop, Hive, HBase, and A/B Testing

2010-07-15 07:5218838
用户头像

发布了 133 篇内容, 共 42.8 次阅读, 收获喜欢 1 次。

关注

评论

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

一款体验故障定位的神器

乒乓狂魔

故障定位 AIOPS 可观测

打造用户认证系统,构筑信息安全防线

HarmonyOS SDK

harmoyos

YashanDB yex_server沙箱进程管理

YashanDB

数据库 yashandb

YashanDB备份

YashanDB

数据库 yashandb

PureBasic 6.20 (macOS, Linux, Windows) - 现代的 BASIC 编程语言及 IDE

sysin

PureBasic

Kali Linux 2025.1a 发布 - 领先的渗透测试发行版

sysin

kali Linux

Windows 10 version 22H2 中文版、英文版下载 (2025 年 3 月更新)

sysin

windows

Windows 11 24H2 中文版、英文版 (x64、ARM64) 下载 (2025 年 3 月更新)

sysin

windows

YashanDB备份恢复

YashanDB

数据库 yashandb

YashanDB计划管理

YashanDB

数据库 yashandb

Windows Server 2022 中文版、英文版下载 (2025 年 3 月更新)

sysin

windows

Netty源码—Reactor线程模型二

不在线第一只蜗牛

Java 数据库 Linux

原生APP的性能优化

北京木奇移动技术有限公司

软件外包公司 原生APP开发 APP开发公司

StarRocks 与主流 BI 工具兼容性盘点(Superset/帆软/QuickBI/Tableau)

镜舟科技

MySQL OLAP BI 分析型数据库 StarRocks

YashanDB会话管理

YashanDB

数据库 yashandb

代码采纳率从 22% 到 33%,通义灵码辅助数据库智能编码实践

阿里巴巴云原生

阿里云 云原生 通义灵码

SvelteKit 最新中文文档教程(8)—— 部署 Node 服务端

冴羽

vue.js 前端 React Svelte SvelteKit

原生APP开发的优势和特点

北京木奇移动技术有限公司

原生APP 软件外包公司 APP外包公司

代码采纳率从 22% 到 33%,通义灵码辅助数据库智能编码实践

阿里云云效

阿里云 云原生 通义灵码

使用外部事件检测接入 CDH 大数据管理平台告警

观测云

告警策略

vivo 湖仓架构的性能提升之旅

StarRocks

SQL优化 presto 兼容性测试 StarRocks 物化视图

原生APP和混合APP开发的对比

北京木奇移动技术有限公司

APP开发 软件外包公司 APP外包公司

YashanDB SQL命令备份恢复

YashanDB

数据库 yashandb

时序数据库 IoTDB 常见问题 Q&A 第六期

Apache IoTDB

昇腾支持150+企业上线DeepSeek模型及服务,昇腾人工智能伙伴峰会顺利召开

极客天地

GIMP 3.0.0 (Linux, macOS, Windows) 正式版发布 - 免费开源图像编辑器

sysin

GIMP

Windows 11 23H2 中文版、英文版 (x64、ARM64) 下载 (2025 年 3 月更新)

sysin

windows

Windows Server 2025 中文版、英文版下载 (2025 年 3 月更新)

sysin

windows

YashanDB恢复

YashanDB

数据库 yashandb

企业分公司异地组网难题怎么解决?

Ogcloud

企业组网 异地组网

Facebook谈 Hadoop,Hive,HBase和 A/B测试_软件工程_Ron Bodkin_InfoQ精选文章