首页 >知识讲堂 >网站建设知识>介绍Facebook的Hadoop和AvatarNode集群方案

介绍Facebook的Hadoop和AvatarNode集群方案

2020-12-31 14:26:11 阅读(198 评论(0)

Facebook作为世界知名的社交网站,拥有3亿多活跃用户,其中约300万用户每天至少更新一次状态;用户每月上传10亿多张照片和1000万视频;每周共有10亿条内容,包括日志、链接、新闻、微博等。因此,Facebook需要存储和处理的数据量非常大。每天增加4TB压缩数据,扫描135TB大小数据,在集群中执行7500多项Hive任务,每小时计算8万次。因此,高性能云平台对Facebook非常重要,Facebook主要用于日志处理、推荐系统和数据仓库。Facebook将数据存储在由Hadop/Hive构建的数据仓库中。该数据仓库内核4800个,存储容量5.5PB。每个节点可以存储12TB大小的数据。同时,它还有两层网络拓扑。Facebook将数据存储在由Hadop/Hive构建的数据仓库中。该数据仓库有4800个核心和5.5PB存储容量。每个节点可以存储12TB大小的数据。同时,它还有两层网络拓扑。Facebook中的Mapreduce集群是动态变化的。它可以根据负载和集群节点之间的配置信息动态移动。Facebook数据仓库架构,在这个架构中,网络服务器和内部服务生成日志数据,Facebook使用开源日志收集系统,它可以在NFS服务器上存储数百个日志数据集,但大多数日志数据将复制到同一中心的HDFS实例,HDFS存储的数据将放置在使用Hive构建的数据仓库中。Hive提供类SQL语言,结合Mapreduce,创建并发布各种摘要和报告,并在其基础上进行历史分析。基于浏览器的Hive接口允许用户进行Hive查询。Oracle和MySQL数据库用于发布数据容量相对较小的摘要,但查询频率较高,需要实时响应。一些旧数据需要及时归档并存储在更便宜的存储器上。以下是Facebook在Avatarnode和调度策略方面所做的一些工作。AvatarNode主要用于HDFS的恢复和启动。如果HDFS崩溃,原始技术恢复首先需要10美元~读取12GB的文件镜像并在15分钟内写回,并使用20分钟~处理来自2000个Datanode的数据块报告30分钟,最后使用400分钟~NameNode和部署软件需要60分钟才能恢复崩溃。表3-1显示了Backupnode和Avatarnode的区别,Avatarnode作为普通Namenode启动,处理所有来自Datanode的消息。AvatarDatanode类似于Datanode,支持多线程和多主节点的多队列,但无法区分原始和备份。人工恢复使用Avatarshell命令行工具,Avatarshell执行恢复操作,更新Zookeper的znode,恢复过程对用户来说是透明的。现有文件系统的上层实现了分布式Avatar文件系统。基于位置的调度策略在实际应用中存在一些问题:如果需要高内存的任务可能分配给低内存的TaskTracker;有时候CPU资源没有得到充分利用;也很难配置不同*件的TaskTracker。Facebook采用基于资源的调度策略,即公平享受调度方法,实时监控系统,收集CPU和内存的使用。调度器将分析实时内存消耗,然后公平分配任务之间的内存消耗。它读/读/读/读proc/目录分析过程树,收集过程树上所有CPU和内存的使用信息,然后在心跳中通过TaskCounters(heartbeat)发送信息。Hive用于Facebook的数据仓库,HDFS支持三种文件格式:文本文件(TextFile),其他应用程序读写方便;顺序文件(SequenceFile),只有Hadoop能读取并支持分块压缩;RCFile,根据块的存储方式,每个块按顺序存储,具有良好的压缩率和查询性能。未来Facebook将在Hive上进行改进,以支持索引、视图、子查询等新功能。现在Facebook使用Hadoop面临的挑战有:服务质量和隔离,大任务会影响集群性能;在安全性方面,如何处理软件漏洞导致NameNode事务日志崩溃;数据归档,如何选择归档数据,如何归档数据;性能提升,如何有效解决瓶颈。2004年,Mapreduce创建了Mapreduce,Mapreduce系统成功的原因之一是为编写需要大规模并行处理的代码提供了简单的编程模式。Mapreduce集群可以包括数千台并行操作的计算机。同时,Mapreduce允许程序员在如此庞大的集群中快速转换数据并执行数据。它受到Lisp函数编程特性和其他函数语言的启发。Mapreduce与云计算非常匹配。Mapreduce的关键特点是能够隐藏开发人员并行语义并行编程的具体工作模式。HDFS(HadoopDistributedFilesystem)它是专门为Mapreduce框架下的大规模分布式数据处理而设计的。HDFS可以将大数据集(TB级)存储为单个文件,而大多数文件系统没有这种能力。(编者:NTFS5MaxFilesonVolume:264bytes(16Exabytes)minus1KB,1EB=1,000,000TB)。这也是HDFS风靡全球的一个重要原因。目前,FacebookHadop集群中的HDFS物理磁盘空间承载着100多个PB数据(100多个集群分布在不同的数据中心)。优化HDFS已成为Facebook为用户提供高效可靠的服务的关键因素,因为HDFS存储Hadop应用程序需要处理的数据。HDFSNamenode是如何工作的?HDFS客户端通过被称为Namenode单服务器节点执行文件系统的原始数据操作。同时,Datanode将与其他Datanode进行通信,并复制数据块以实现冗余,使单个Datanode损坏不会导致集群数据丢失。但是NameNode失败的损失是无法容忍的。Namenode的主要职责是跟踪文件如何分割成文件块,文件块存储在哪些节点,分布式文件系统的整体运行状态是否正常。然而,如果NameNode节点停止运行,数据节点将无法通信,客户端将无法向HDFS读取和写入数据。事实上,这也将导致整个系统停止工作。TheHDFSNamenodeisasinglepointoffailure(SPOF)Facebook也知道“Facebook”Namenode-as-SPOF因此,Facebook希望建立一个系统来打破问题的严重性Namenode-as-SPOF"隐患。但在了解这个系统之前,让我们来看看Facebook在使用和部署HDFS时遇到了什么问题。Facebook数据仓库的使用在Facebook数据仓库中部署了最大的HDFS集群。数据仓库的使用是传统的Hadopmapreduce工作负载——由于集群非常大,一小部分Mapreduce批处理操作在大型集群中运行,客户端和许多Datanode节点和Namenode节点传输大量原始数据,这导致NameNode的负载非常重。来自CPU、内存、磁盘和网络带来的压力也使得NameNode在数据仓库集群中的高负载情况屡见不鲜。来自CPU、内存、磁盘和网络带来的压力也使得Namenode在数据仓库集群中的高负载情况屡见不鲜。Facebook在使用过程中发现,HDFS引起的故障占数据仓库总故障率的41%。HDFSNamenode是HDFS的重要组成部分,也是整个数据仓库的重要组成部分。虽然高可用的Namenode只能防止数据仓库10%的计划外停机,但消除Namenode对SPOF来说是一个重大胜利,因为这使得Facebook可以执行预订的*件和软件回复。事实上,Facebook预计,如果Namenode能够消除集群50%的计划停机。那么高可用性NameNode是什么样子的呢?它将如何工作?让我们来看看高可用性NameNode的图表。在这种结构中,客户端可以与PrimaryNamenode和StandbyNamenode进行通信。同样,许多Datanode也有能力将Blockreports发送给PrimaryNamenode和StandbyNamenode。本质上,Facebook开发的Avatarnode是一种具有高可用性Namenode的解决方案。Avatarnode:为了解决单Namenode节点的设计缺陷,Facebook在大约两年前开始在内部使用Avatarnode。同时,Avatarnode提供了高可用性的Namenode、热故障切换和回滚功能。目前,Facebook已经为开源社区贡献了Avatarnode。AvatarNode经过无数次的测试和bug修复,已经在Facebook最大的Hadoop数据仓库中稳定运行。很大程度上要感谢Facebook工程师Dmytromolkov。发生故障时,AvatarNode的两个高可用NameNode节点可以手动转移故障。AvatarNode将现有的NameNode代码打包并放置在Zookeper层。Avatarnode的基本概念如下:1.拥有PrimaryNamenode和StandbyNamenode2。目前,Master主机名保存在Zokeper中。3.改进后的Datanode将blockeports发送到PrimaryNamenode和StandbyNamenode4。改进后的HDFS客户端将在每件事开始前检查Zokeper,如果失败会转移到另一件事上。同时,如果在写入过程中出现AvatarNode故障转移,AvatarNode机制将允许完整的数据写入。Avatarnode客户端Avatarnodedatanode有人可能会对Facebook的解决方案名称感到好奇,因为FacebokHadop工程师Dhrubabortakur来到公司时,正好是Jamescameron电影《阿凡达》的热播时间。(我们应该很高兴,如果是1998年,也许应该叫TitanicNode)。(我们应该很高兴,如果是1998年,可能叫Titanicnode)。Avatarnode经受住了Facebook内部最恶劣的工作环境,未来Facebook将继续大大提高Avatarnode的可靠性和HDFS集群的管理性。整合与一般高可用性框架的整合,也将实现无人值守、自动化和安全故障转移的特点。Facebook已将自己使用的Hadop和AvatarNode解决方案托管到GitHub。有兴趣的朋友可以下载研究。当然,不仅Facebook试图解决Hadop的缺陷,Mapr和Cloudera的产品也有类似的能力。

以上就是关于介绍Facebook的Hadoop和AvatarNode集群方案的相关介绍,更多介绍Facebook的Hadoop和AvatarNode集群方案相关内容可以咨询我们或者浏览页面上的推荐内容。我们将让你对介绍Facebook的Hadoop和AvatarNode集群方案有更深的了解和认识。

内容来源:网络,以上内容来源于网络,不代表本站观点,如有侵权,请联系删除。

推荐阅读

【广告语能申请知识产权】灵活运用三项法律实施多面防护

广告语在市场营销中有着重要的宣传作用,好的广告语甚至能够凭借简洁明了、新颖易懂特点帮助产品快速占领市场,成为企业品牌的标识。目前,广告语能申请知识产权的范围是著作权和商标权,并且可以适当运用《著作权法》、《商标法…查看详情

注册公司后期需要注意什么(细节盘点)

  初次创业的朋友,是不是以为注册公司完成后就可以放开手脚大干一场了?其实并不是这样的。对于初次创业的朋友来说,公司注册后还有很多的东西需要注意的,下面*就给大家来详细介绍一下注册公司后期需要注意什么这一块的内容,…查看详情

核心数和线程数是什么意思

cpu核数跟线程是什么意思?线程数:一般情况下每个核心都有一个线程,几核心就有几线程,但是intel发明了超线程技术,可以让单核模拟多核心工作,intel的超线程可以让单核心具有两个线程,双核四线程、四核八线程、六合十二线程。超线程…查看详情

电脑浏览器哪个好用又靠谱?这6款装机必备

浏览器应用软件是电脑计算机系统组成的一部分,没有浏览器的搜索引擎,我们的日常学习与工作生活可能会一团糟。但是有些浏览器会自动病毒,电脑浏览器哪个好用又靠谱呢?我来给你推荐几款吧。1.UC浏览器它是一款拥有16年浏览器运营…查看详情

什么是运营优化,它的岗位职责与要求是什么?

在当今社会,随着经济的迅速发展与生产力的提高,怎样摆脱旧的运营模式,更大程度上提高自己的生产效率及工作收入?运营优化无疑成为了运营管理的“热点”。今天我们就来讲一下什么是运营优化,它的岗位职责与要求又是什么。什么…查看详情

出入库管理软件有哪些?这几款软件比较好用

想要更好的对产品进行仓库管理,在平时的时候就应该要做好记录,比如说销售了多少产品库存还有多少产品都应该要一目了然,如果想要让整个工作更加简单记录更加清晰,那么这个时候选择一款出入库管理软件就很不错,有了软件之后就…查看详情

1000兆的网速是多少

1000M的实际网速是多少?网速理论上是125MB/s,但在实际应用中,需要考虑到网络损耗以及线路衰减等因素,因此真正的下载速度达不到125MB/s;所以,在一般正常的情况下,1000兆宽带的实际网速大概在110至120MB/S之间。100...查看详情

有哪些简单易学的软件编程语言推荐

只要是学习过计算机软件的人都会知道,平时在软件开发过程中,软件编程语言是比较重要的。那么具体来说,如何选择软件编程语言呢?其实是根据自己所要研究的软件不同来学习对应的编程语言。1、PHP语言PHP其实不是属于前端语言,学习…查看详情

淘宝免密支付怎么回事?怎么关闭?

  优质答案(1)  淘宝免密支付开启具体操作方法如下:  1.选择我的淘宝  点击进入淘宝APP,选择我的淘宝。  2.点击设置  在我的淘宝页面点击右上角设置。  3.选择支付  跳转页面选择点击支付。  4.点击小额免密  …查看详情

bin是什么文件格式

bin格式文件?bin二进制文件,其用途依系统或应用而定。一种文件格式binary的缩写。一个后缀名为".bin"的文件,只是表明它是binary格式。比如虚拟光驱文件常用.bin作为后缀,但并不意味着所有.bin文件都...查看详情

bonjour是什么软件 电脑bonjour有用吗

  在大家平时使用电脑的过程中可能会看到有个bonjour软件,那么bonjour是什么软件呢?下面万商云集*给大家来介绍一下bonjour软件。    bonjour是什么软件  1、bonjour...查看详情

什么是网络营销?本文带你全面了解

    网络营销是一种以企业为主体、市场为导向、满足客户需求为目标的新型销售手段和盈利模式。它不同于传统的市场营销方式,也不同于一般的网络推广活动或者网站优化工作。一、网络营销的定义。  网络营销指的就是利用网络…查看详情

数据库管理系统的功能

什么是数据库管理系统?它具有哪些功能?数据库管理系统(databasemanagementsystem)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称dbms。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性...查看详情

小程序码在线生成教程

  微信小程序二维码怎么生成?  登录微信公众平台,输入自己小程序的账号密码(没有的话要先注册一个小程序账号),进入后台主页面,在左侧菜单栏中找到【设置】,你会看到“小程序码及线下物料下载”,这里选择你需要的尺寸和…查看详情

三类商标注册名易被驳回,六种商标取名方法很靠谱

目前我国商标申请量、注册量巨大,所以商标注册的审核愈发严格,取商标注册名也愈发困难,一不留神就易被驳回。现阶段来看,有三类商标注册名是最易被驳回的,但又有六种商标取名方法很靠谱。 图片来源于网络 一、四类易被…查看详情

首页

产品

万商学院

客户服务

会员中心

当前站点

h

选择站点

全国站成都

一 客户顾问-张三

已为0个客户提供专业互联网服务咨询
  • 手机号码
  • 验证码图形验证码换一张
  • 短信校验码

    电话咨询

    在线咨询