Facebook、亚马逊等巨头是如何建造自己的数据库的?| 全球聚焦

简介:

ruqs9pyg86rgm8cs.jpg!heading

 

在Keen IO,我们认为会运用事件数据的公司才具有竞争优势,世界领先的科技公司证明了这一点。但是我们仍然对Facebook、Amazon、Airbnb、Pinterest和Netflix数据团队所做的事情感到惊讶。他们为软件和企业从数据中获取信息而制定了新标准。

由于他们的产品用户量极大,所以这些团队必须不断地定义规模分析的方法。他们已经在数据架构中投入了数百万美元,并且在大多数公司中,数据团队的规模超过了整个工程部门的规模。

我们建立了Keen IO,是为了以让大多数软件工程团队无需从头架设所有内容,就可以利用最新的大型事件数据技术。但是,如果您对如何成为巨头公司感到好奇,那么请从最好的公司中收集一些架构。

Netflix

Netflix拥有9300万用户,没有交互缺陷。正如他们的工程团队在Netflix数据管道的演变中描述的那样,他们每天大约捕获5000亿个事件,每天大约有1.3 PB的数据传输。在高峰时段,他们每秒将记录800万次事件。他们雇用了100多个数据工程师或分析师。

以下是上述文章中数据架构的简化视图,其中显示:开源系统Apache Kafka,搜索服务器Elastic Search,亚马逊云存储服务AWS S3,进行大数据处理的Apache Spark,运行框架Apache Hadoop和大数据分析服务EMR作为主要组件。

Facebook、亚马逊等巨头是如何建造自己的数据库的?| 全球聚焦

Facebook

拥有超过10亿的活跃用户,Facebook有世界上最大的数据仓库之一,存储超过300PB。该数据被用于广泛的应用:从传统的批处理到图形分析,机器学习和实时交互式分析。

为了进行大规模的交互式查询,Facebook的工程师发明了Presto,一种针对点对点分析进行优化的定制分布式的SQL查询引擎。每天有1000多名Facebook员工使用Presto,通过Hive、HBase和Scribe的可插拔后端数据存储,每天执行查询次数超过30000次。

Facebook、亚马逊等巨头是如何建造自己的数据库的?| 全球聚焦

体系结构

Facebook、亚马逊等巨头是如何建造自己的数据库的?| 全球聚焦

后端数据存储

Airbnb

Airbnb支持超过1亿用户浏览200多万的房屋列表。他们智能地向这些用户提供新的旅行建议的能力,这对他们的成长有很大影响。

Airbnb的数据科学经理Elena Grewal在去年的会议“建立一个世界级的分析团队”上提到,他们已经将Airbnb的数据团队扩展到拥有30多名工程师的规模。这是每人每年500万的投资。

在博客《数据基础架构》一文中,AirbnbEng建筑师James Mayfield、Krishna Puttaswamy、Swaroop Jagadish和Kevin Longdescribe描述了构建数据结构的基本要素以及如何为关键任务数据提供更高的可靠性。他们严重依赖Hive和Apache Spark,并使用了Facebook的Presto。

Facebook、亚马逊等巨头是如何建造自己的数据库的?| 全球聚焦

AIRBNB的数据基础结构

Pinterest

Pinterest每月有超过1亿的用户浏览超过100亿的网页浏览量。截至2015年,他们将数据团队扩展到拥有250多名工程师的规模。他们的基础设施依赖于开源系统Apache Kafka,数据处理框架Storm,系统基础架构Hadoop,开源数据库HBase和GPU渲染器Redshift。

Facebook、亚马逊等巨头是如何建造自己的数据库的?| 全球聚焦

数据管道结构图

Pinterest团队不仅需要追踪大量客户相关的数据。像其他社交平台一样,他们还需要向广告商提供详细的分析。黄彤波在《Behind the Pins: Building Analytics at Pinterest》一文中写道:为了满足这一需求,他们改进了自己的分析堆栈。以下是Pinterest团队如何使用Apache Kafka,AWS S3和HBase的示意图:

Facebook、亚马逊等巨头是如何建造自己的数据库的?| 全球聚焦

Pinterest商业数据分析结构图

Twitter / Crashlytics

每天实时处理50亿次会议。Ed Solovey介绍了Crashlytics Answers团队构建的一些架构,用于处理数十亿的日常移动设备事件。

Facebook、亚马逊等巨头是如何建造自己的数据库的?| 全球聚焦

信息流接收

Facebook、亚马逊等巨头是如何建造自己的数据库的?| 全球聚焦

存储

Facebook、亚马逊等巨头是如何建造自己的数据库的?| 全球聚焦

批处理计算

Facebook、亚马逊等巨头是如何建造自己的数据库的?| 全球聚焦

加速计算

Facebook、亚马逊等巨头是如何建造自己的数据库的?| 全球聚焦

总览

Keen IO的数据架构

正如我之前提到的,我们构建了Keen数据接口(API),以便任何开发人员都可以使用世界一流的数据架构,而无需拥有一个庞大的团队构建一大堆基础架构。成千上万的工程团队使用Keen的API来捕获、分析、流式传输和嵌入事件数据,包括实时和批处理应用程序。

虽然使用Keen的开发人员在发送事件或运行查询时不需要知道幕后发生的情况,但下面是处理其请求的体系结构:

Facebook、亚马逊等巨头是如何建造自己的数据库的?| 全球聚焦

Keen IO 信息处理结构图

在输入方面,负载均衡器处理数十亿个传入的帖子请求。事件流来自于应用程序,网站,连接设备,服务器,计费系统等等。事件需要验证、排序和可选择地丰富额外的元数据,如IP-地理查询。这一切都发生在几秒钟内。

一旦安全地存储在Apache Cassandra中,事件数据就可以通过REST API进行查询。我们的架构(通过Apache Storm,DynamoDB,Redis和AWS lambda等技术)支持从原始传入数据实时数据探索,到应用程序和面向客户报告的缓存查询的各种查询需求。Keen每天查询数万个事件属性,并为成千上万的客户构建报告,自动化和数据挖掘界面。

感谢!

感谢团结一致的数据工程界,不断发明新的数据技术、开源,并分享他们的知识。如果没有这么多工程队伍的基础工作,没有与我们天天一起合作的人,我们的团队也不可能有今天。欢迎各方的意见和反馈。

特别感谢文章中提到的的作者和建筑师:Netflix的Steven Wu,Facebook Presto、AirbnbEng和Pinterest的工程师Martin Traverso,以及Crashlytics Answers的Ed Solovey。

感谢编辑Terry Horner,Dan Kador,Manu Mahajan和Ryan Spraetz的帮助。

翻译来自:虫洞翻翻   译者ID:王炜   编辑:郝鹏程

在Keen IO,我们认为会运用事件数据的公司才具有竞争优势,世界领先的科技公司证明了这一点。但是我们仍然对Facebook、Amazon、Airbnb、Pinterest和Netflix数据团队所做的事情感到惊讶。他们为软件和企业从数据中获取信息而制定了新标准。

由于他们的产品用户量极大,所以这些团队必须不断地定义规模分析的方法。他们已经在数据架构中投入了数百万美元,并且在大多数公司中,数据团队的规模超过了整个工程部门的规模。

我们建立了Keen IO,是为了以让大多数软件工程团队无需从头架设所有内容,就可以利用最新的大型事件数据技术。但是,如果您对如何成为巨头公司感到好奇,那么请从最好的公司中收集一些架构。

Netflix

Netflix拥有9300万用户,没有交互缺陷。正如他们的工程团队在Netflix数据管道的演变中描述的那样,他们每天大约捕获5000亿个事件,每天大约有1.3 PB的数据传输。在高峰时段,他们每秒将记录800万次事件。他们雇用了100多个数据工程师或分析师。

以下是上述文章中数据架构的简化视图,其中显示:开源系统Apache Kafka,搜索服务器Elastic Search,亚马逊云存储服务AWS S3,进行大数据处理的Apache Spark,运行框架Apache Hadoop和大数据分析服务EMR作为主要组件。

Facebook

拥有超过10亿的活跃用户,Facebook有世界上最大的数据仓库之一,存储超过300PB。该数据被用于广泛的应用:从传统的批处理到图形分析,机器学习和实时交互式分析。

为了进行大规模的交互式查询,Facebook的工程师发明了Presto,一种针对点对点分析进行优化的定制分布式的SQL查询引擎。每天有1000多名Facebook员工使用Presto,通过Hive、HBase和Scribe的可插拔后端数据存储,每天执行查询次数超过30000次。

体系结构

后端数据存储

Airbnb

Airbnb支持超过1亿用户浏览200多万的房屋列表。他们智能地向这些用户提供新的旅行建议的能力,这对他们的成长有很大影响。

Airbnb的数据科学经理Elena Grewal在去年的会议“建立一个世界级的分析团队”上提到,他们已经将Airbnb的数据团队扩展到拥有30多名工程师的规模。这是每人每年500万的投资。

在博客《数据基础架构》一文中,AirbnbEng建筑师James Mayfield、Krishna Puttaswamy、Swaroop Jagadish和Kevin Longdescribe描述了构建数据结构的基本要素以及如何为关键任务数据提供更高的可靠性。他们严重依赖Hive和Apache Spark,并使用了Facebook的Presto。

AIRBNB的数据基础结构

Pinterest

Pinterest每月有超过1亿的用户浏览超过100亿的网页浏览量。截至2015年,他们将数据团队扩展到拥有250多名工程师的规模。他们的基础设施依赖于开源系统Apache Kafka,数据处理框架Storm,系统基础架构Hadoop,开源数据库HBase和GPU渲染器Redshift。

数据管道结构图

Pinterest团队不仅需要追踪大量客户相关的数据。像其他社交平台一样,他们还需要向广告商提供详细的分析。黄彤波在《Behind the Pins: Building Analytics at Pinterest》一文中写道:为了满足这一需求,他们改进了自己的分析堆栈。以下是Pinterest团队如何使用Apache Kafka,AWS S3和HBase的示意图:

Pinterest商业数据分析结构图

Twitter / Crashlytics

每天实时处理50亿次会议。Ed Solovey介绍了Crashlytics Answers团队构建的一些架构,用于处理数十亿的日常移动设备事件。

信息流接收

存储

批处理计算

加速计算

总览

Keen IO的数据架构

正如我之前提到的,我们构建了Keen数据接口(API),以便任何开发人员都可以使用世界一流的数据架构,而无需拥有一个庞大的团队构建一大堆基础架构。成千上万的工程团队使用Keen的API来捕获、分析、流式传输和嵌入事件数据,包括实时和批处理应用程序。

虽然使用Keen的开发人员在发送事件或运行查询时不需要知道幕后发生的情况,但下面是处理其请求的体系结构:

Keen IO信息处理结构图

在输入方面,负载均衡器处理数十亿个传入的帖子请求。事件流来自于应用程序,网站,连接设备,服务器,计费系统等等。事件需要验证、排序和可选择地丰富额外的元数据,如IP-地理查询。这一切都发生在几秒钟内。

一旦安全地存储在Apache Cassandra中,事件数据就可以通过REST API进行查询。我们的架构(通过Apache Storm,DynamoDB,Redis和AWS lambda等技术)支持从原始传入数据实时数据探索,到应用程序和面向客户报告的缓存查询的各种查询需求。Keen每天查询数万个事件属性,并为成千上万的客户构建报告,自动化和数据挖掘界面。

感谢!

感谢团结一致的数据工程界,不断发明新的数据技术、开源,并分享他们的知识。如果没有这么多工程队伍的基础工作,没有与我们天天一起合作的人,我们的团队也不可能有今天。欢迎各方的意见和反馈。

特别感谢文章中提到的的作者和建筑师:Netflix的Steven Wu,Facebook Presto、AirbnbEng和Pinterest的工程师Martin Traverso,以及Crashlytics Answers的Ed Solovey。

感谢编辑Terry Horner,Dan Kador,Manu Mahajan和Ryan Spraetz的帮助。

翻译来自:虫洞翻翻译者ID:王炜 编辑:郝鹏程

目录
相关文章
|
2月前
|
存储 关系型数据库 数据库
在进行RDS(Amazon Relational Database Service,亚马逊关系数据库服务)迁移时,兼容性审查
在进行RDS(Amazon Relational Database Service,亚马逊关系数据库服务)迁移时,兼容性审查
20 1
|
机器学习/深度学习 Web App开发 存储
Facebook全球崩溃11小时,暴露了科技巨头们用AI为你打的标签
美国东部时间 7 月 3 日早上 8 点,Facebook 服务器遭遇了大面积停电,这一事件使得全球 Facebook、Instgram 和 WhatsApp 受到影响——除了很难登录,全球范围内很多用户在超过 11 个小时的时间里都无法上传图片和分享故事。
121 0
Facebook全球崩溃11小时,暴露了科技巨头们用AI为你打的标签
|
监控 安全 数据挖掘
苹果封杀谷歌、Facebook:科技巨头涉嫌收集用户隐私数据
在封杀了 Facebook 之后,昨天苹果又宣布关闭谷歌的内部 iOS 应用分发权限。目前测试版本的谷歌地图、环聊(Hangouts)、Gmail 等程序已经无法在苹果手机上运行了,此外那些只对谷歌员工开放的内部应用程序,如用来坐班车的 Gbus 和点餐 app 也已无法使用。
146 0
苹果封杀谷歌、Facebook:科技巨头涉嫌收集用户隐私数据
|
算法 C# iOS开发
巨头出击新闻应用 - Paper by Facebook
我们曾转过一篇关于Facebook正在开发新闻app 的报道,日前其官方正式在苹果App Store放出iOS应用——Paper。
135 0
巨头出击新闻应用 - Paper by Facebook
「镁客早报」iPhone或将在今年采用三摄;传Facebook致力于开发语音助力服务与亚马逊、苹果竞争
亚马逊向美国Alexa设备推免费音乐服务;视频会议软件开发商Zoom纳斯达克上市。
225 0
「镁客早报」Facebook再曝数据漏洞;分析师预测谷歌亚马逊明年将推出AirPods竞品
因为一个漏洞,Facebook上有680万用户的私人照片被暴露给不应该看到它们的应用程序。
382 0
【数据通天塔来了】谷歌、Facebook、微软、推特四巨头联手,打通全球数据壁垒!
今天,谷歌、Facebook、微软和Twitter四大互联网巨头联手宣布了一个“数据传输大计”,旨在号召不同平台间数据的无障碍传输。可移植性和互操作性是云技术创新和竞争的核心,如果真能得以实现,这无疑是一个伟大历程的开端!
1685 0
|
存储 NoSQL 关系型数据库
【译】亚马逊CTO Werner:传统通用数据库难以解决所有场景
译者按:本文作者是亚马逊CTO Werner,今日在其个人博客上发表的关于行业产品的最新见解。如果你对数据库了解不多,则本文能够帮助建立一个宏观的理解,同时能参考亚马逊的产品来指导在企业内部进行数据库技术选型。
1054 0