Google网站的服务器基本架构,值得研究学习。
2020-12-31 14:35:07 阅读(190) 评论(0)
Google,无疑是互联网时代最闪亮的明星。截至今天,Google美国主站已连续三年在Alexa排名第一。在Alexatop100中,各国Google分站占据了20多个名额,不得不感叹Gogle的实力。无论何时何地,无论你搜索多么不受欢迎的词汇,只要你的计算机连接到互联网,只要你轻轻点击“谷歌搜索”,所有相关内容谷歌都将在1秒内完成,这甚至比你查询“我的文档”更快。这就是为什么谷歌创业12年,市值超过2000亿美元。有些人可能会认为谷歌有几台超级计算机,比如“蓝色基因”来处理各种数据和搜索,事实是什么?下面我们将详细分析神奇谷歌的神奇结构。硬件:截至2010年,谷歌大约有100万台服务器和500多个计算机集群来处理不同地区的不同任务。不幸的是,在多个文献库中找不到服务器的详细配置和最新集群的具体情况。我个人理解,这可能是一个商业秘密。也许是因为秘密,强大的谷歌计算机集群没有提交谷歌500计算机的申请。多年来,我们在谷歌500中看不到谷歌的影子。(进入前500需要提交并披露其计算机系统的详细配置)但根据文献,可以肯定的是,45万台服务器不是昂贵的服务器,而是非常普通的电脑级服务器,两年前服务器硬盘一般是IDE接口,使用电脑级主板而不是昂贵的服务器专用主板。谷歌的集群都是自己建造的,没有先进昂贵的集群连接技术,比如Myricom的Myrinet或者Giganet的CLAN。谷歌数据中心和服务器之间的不同耦合程度是根据需要连接的。那么gogle的存储呢?谷歌存储着大量的信息,近1000亿个网页,数百亿张图片。Google的存储容量早在2004年就达到了5PB。许多读者一开始可能认为谷歌使用EMCSymetrix系列磁盘阵列来保存大量信息,但谷歌的实际做法再次让我们惊讶——谷歌没有使用任何磁盘阵列,即使是低端磁盘阵列也是无用的。Google的方法是配备两个普通IDE硬盘存储集群中的每个PC级服务器。然而,谷歌并非所有设备都落后。至少这些硬盘的速度很高,每个服务器的内存相对较大。谁是最大的电脑DIY消费者?恐怕谷歌又登上了DIY宝座。谷歌的绝大多数服务器甚至不购买大品牌,而是购买各种廉价零件并自行组装。有趣的是,谷歌对现有PC电源的功耗非常不满意,甚至自己设计了谷歌专用服务器电源。很快,我们就有了问题。这样一个由PC级服务器构建的系统,怎样才能承受巨大的工作负荷?如何保证高可用性?事实上,这些低端服务器经常发生故障——硬盘断路、系统停机等事故,实际上每天发生在45万台服务器中。Google的方法是设置镜像站。以谷歌主站为例,2003年在美国硅谷和弗吉尼亚设立了多个镜像站。其实这些镜像站并不是传统的镜像站。真正的镜像站是双机热备,当一台服务器停机时,另一台服务器接管相关任务。事实上,Google镜像站的真正职责是DNS负载均衡,所以一些Google镜像站本身也有自己的镜像站。这里举个例子来说明谷歌镜像站的作用:一次访问,DNS正常分析到A,但当A负载过大时,DNS服务会将域名分析到B,这不仅实现了冗余,而且减少了投资。由于不是双机热备,镜像站的内容在一定时间内可能会有所不同,但对于精度要求较低的普通检索来说,这不是问题。平台:GFS/MapReduce/BigTable/LinuxGFS/MapReduce/BigTable/这三个平台是Google最引以为傲的平台,都是Linux以上的架构。首先,让我们看看GFS(GoogleFileSystem)Google文件系统。在检索一般数据中心时,我们知道需要使用数据库系统。然而,谷歌的情况非常特殊——谷歌拥有世界上数百亿个网络文档。如果使用传统数据库系统进行检索,则可以想象检索速度。因此,当Crawlers收集到许多新的Web时,Google将许多Web收集到一个文件中进行存储管理,Google将Web文件压缩成Chunk块,以进一步减少占用空间(64MBChunk)。最后,Google只检索压缩部分。而GFS(GoogleFileSystem)GFS包括GFSMaster服务器和Chunk服务器,正是在这种检索技术上构建的文件系统。如下图所示,系统流程从GFS客户端开始:GFS客户端以Chunk偏移量制作目录索引并发送请求-GFSMaster通过Chunk映射表映射反馈客户端-客户端具有Chunk和Chunk位置,并缓存文件名和Chunk目录索引,向chunk服务器发送请求-chunk服务器回复请求传输chunk数据。如果读者有点困惑,这是正常的,因为只有少数搜索引擎公司使用这种技术。如果读者有点困惑,这是正常的,因为只有少数搜索引擎公司使用这种技术。简单地说,谷歌使用GFS大大简化了搜索的难度。除GFS外,Mapreduce还为Gogle做出了巨大贡献。谷歌拥有不少于45万台服务器,似乎每台服务器的功能都非常清晰,但有一个重要的协作问题需要解决:如何并发计算,如何分布数据,如何处理失败,如何平衡负载?我们可以预见,无数的代码将用于协同问题,而且很可能效率低下。这时,Mapreduce就派上用场了。Mapreduce是Google开发的Cogle 大规模数据集并行运算的编程工具。Mapreduce的主要功能是提供一个简单而强大的接口,可以自动并发和分布计算。通过这种方式,可以通过普通PC集群实现高性能。Mapreduce主要从两个方面改进系统:一是计算机故障问题。如果一台计算机失败或I/O出现问题——这在谷歌中由廉价服务器组成的集群中非常常见。Mapreduce的解决方案是用多台计算机同时计算任务。一旦计算机有结果,其他计算机将停止任务并进入下一个任务。此外,Mapreduce之间传输的数据被压缩,节省了大量带宽资源。至于BigTable,它是一个适合处理半结构化数据的系统,用于处理大数据量。谷歌心经:谷歌总是试图用最少的钱,做最多的事。不要低估那些便宜、不可靠的PC服务器。一台服务器可能不可靠,但45万台的有机集成已成为世界上最完善、最稳定的系统之一。Google在采购服务器方面从未一次大量购买,都是有需求再次购买。另一个能体现Google精打细算的方面是Google尽可能压缩所有能压缩的文件。Google的设计理念非常前卫,包括软件和硬件。Google尝试了许多仍在实验室中的萌芽技术。正如上面提到的,许多都取得了巨大的成功。Google的早期目标是在0.5秒内制作搜索结果,但实际上目前的平均时间已经缩短到0.25秒。此外,谷歌从未停止过研究,现在仍在测试OpenSoalris,观察OpenSoalris是否能取代Linux。谷歌的行为很踏实。不参加Top500评选,文献中也很少有相关资料。可见谷歌并不吹嘘,也没有过度宣传,只是勤勤恳恳地更新程序,优化集群。如今,谷歌包含了绝大多数人类语言的网页,并在大多数国家建立了谷歌分站,包含的网页也在增加,全球影响是不言而喻的。学习谷歌的结构,向谷歌的成就致敬。Google是伸缩之王。谷歌的目标一直是建立高性能、高伸缩性的基本组织来支持其产品。大量平台Linux语言:Python,Java,C 2006年,大约有4.5万台廉价服务器,到2010年增加到1万台。Google在2005年索引了80亿Web页面,现在没有人知道具体数量,近1000亿并在增长。Gogle目前有500多个GFS集群。一个集群可以有1000台甚至5000台机器。数千台机器从运行5万万字节存储的GFS集群中获取数据。集群的总读写吞吐量可以达到每秒40兆字节。目前Google有6000个Mapreduce程序,每个月都写成100个新程序Bigtable伸缩存储数十亿URL。数百千兆卫星图片和数亿用户参数选择堆栈谷歌形象化其基本组织为三层结构:1、产品:搜索、广告、email,分布式系统基本组织:地图、视频、聊天、博客2:GFS,Mapreduce和BigTable3,计算平台:一组不同数据中心的机器4,确保公司内人员部署起来的费用很小,在避免丢失日志数据的硬件上花费更多的钱,而其他类型的数据则花费更少可靠的存储机制GFS(GoogleFileSystem)可靠的伸缩性存储是任何程序的核心需求。GFS是Gogle的核心存储平台2,GoogleFileSystem–Google在大型分布式结构化日志文件系统中投入了大量数据3。为什么要建立GFS而不是使用现有的东西?因为你可以自己控制一切,而且这个平台和其他平台不一样,谷歌需要:-跨数据中心的高可靠性——成千上万的网络节点的可伸缩性——大读写带宽的需求——支持大数据,这可能会减少数千兆字节-高效跨节点操作分发的瓶颈。4.系统中有Master和chunk服务器——Master服务器,在不同的数据文件中保持元数据。数据以64MB为单位存储在文件系统中。数据以64MB存储在文件系统中。客户端与Master服务器沟通,在文件上进行元数据操作,找到包含用户需要数据的Chunk服务器-Chunk服务器,在硬盘上存储实际数据。为了避免服务器崩溃,每个Chunk服务器跨越三个不同的Chunk服务器备份。一旦Master服务器指示,客户端程序将直接从Chunk服务器读取文件6。一个在线新程序可以使用现有的GFS集群或制作自己的GFS集群7。关键是要有足够的基本组织让人们选择自己的程序。GFS可以调整以满足个别程序的需要。使用Mapreduce处理数据1,现在你有了一个很好的存储系统,你应该如何处理这么多的数据?例如,您在1000台机器上存储了许多TB数据。例如,您在1000台机器上存储了大量TB数据。数据库不能扩展到这个水平,这就是Mapreduce出现的原因2。Mapreduce是一种编程模型和相关实现,可以处理和生成大量的数据集。用户指定map方法处理键/值对生成中间键/值对,并将所有相关中间键的中间值合并为reduce。这种模型可以用来表达现实世界中的许多任务。以这种风格编写的程序将在大量机器的集群中自动并行运行。系统照顾输入数据划分、程序在机器集之间的调度、机器故障处理和必要的内部机器通信等细节。这使得程序员很容易使用一个大型分布式系统资源3,而没有太多平行和分布式系统的经验。为什么使用Mapreduce?-处理机器失败的好方法——可以与不同类型的程序一起工作,比如搜索和广告。几乎任何程序都有map和reduce类型的操作。您可以提前计算有用的数据、查询字数统计、TB数据排序等4。Mapreduce系统有三种不同类型的服务器——Master服务器,将用户任务分配给Map和Reduce服务器。它还跟踪任务状态-Map服务器接收用户输入,并在此基础上处理Map操作。结果写入中间文件-Reduce服务器接收Map服务器生成的中间文件,并在此基础上处理reduce操作5。例如,您希望在所有web页面中的字数。将存储在GFS中的所有页面抛入Mapreduce。这将在成千上万台机器上同时进行,所有的调整、工作调度、失败处理和数据传输都将自动完成——类似于步骤:GFS->Map->Shuffle->Reduction->StoreResultsbackintoGFS-在Mapreduce中,一个map操作将一些数据映射到另一个
推荐阅读
- 哪个网站有免费下载的模板
哪些网站可以不花钱就能下载工作用的各种模板?1.officeplus这个网站是微软官方的模板网站,有大量工作汇报、总结计划类型PPT模板2.wps稻壳有大量免费的精品模板,表格类、文档类、ppt类都有涉及到,分了行业的,基本可以满足工作需要…查看详情
- 如何建立自己的网站?有哪些好用的建站工具?
互联网的应用与延展在当今的社会生活实践中无处不见,它与每个人的生活已经密不可分。对于想要建站的人来说,应该如何建立自己的网站呢?了解好建站步骤并学会使用相应的工具,其实建立自己的网站也并不难。 要知道“如何建立自己的网站”,就要先知道搭建个…查看详情
- 视频制作软件哪个好?为大家推荐这几款
很多朋友想要在短视频平台中,发表富有个性化的视频内容,但是却不知道该如何操作,其实在这个信息爆炸的时代,早已有各种各样功能强大的软件,为大家提供视频制作的帮助,那么视频制作软件哪个好呢?为大家推荐以下这几款,不妨试一试吧。 …查看详情
- 港剧排行榜前十名都有哪些?这些港剧就很不错
追剧是很多人都比较喜欢的,其实每一个不同类型的电视剧带给用户的体验也是不同的,很多人都比较喜欢港剧港剧带来的感觉不同,而且剧情也都是非常不错的,但是不同的港剧也有着不同的感觉,所以说很多人在选择港剧的时候都想要选择一些比较好的经…查看详情
- 网站建设平台有哪些?
网站建设平台是指一个提供网站建设服务的在线工具,它可以帮助用户快速、简便地创建自己的网站。这种类型的平台通常是基于云计算技术的,用户可以在云端访问到各种网站开发工具,从而轻松地创建自己的网站。 网站建设平台通常具有以下特点: 1. …查看详情
- 两千左右的手机有哪些 两千左右的手机排行榜
买手机我们也是根据自己的要求去购买的,每个人对于手机的定价不相同所接受的价格也不一样,所以一般会根据自己能接受的价格范围去选择对应的手机类型,那么如果想要用两千买手机的话就要了解一下,两千左右的手机排行榜都有哪些,从排行榜中挑选…查看详情
- 专利权无效宣告审查什么内容?
在平时很多的小伙伴都不知道专利权无效宣告审查什么内容的基本情况,而且对专利权无效宣告审查什么内容都不是很熟悉,下面万商云集小编就为大家整理了专利权无效宣告审查什么内容这方面的相关内容,希望下面的内容能帮助到各位。 一、专利权无效宣…查看详情
- 2022免费交友软件有哪些 免费交友软件排行榜
现在年轻人社交的软件是非常的多的,而且现在也有很多的聊天交友软件,下面小编就给大家来详细介绍一下2022免费交友软件有哪些 免费交友软件排行榜这一块的相关内容,希望能帮助到大家。免费交友软件排行榜 1.陌陌 作为陌生社交的龙头老大…查看详情
- 支付宝体验金有什么用 支付宝体验金的作用
可以让新用户体验一下余额宝,能切身体验到余额宝每天能带来多少收益,吸引用户往余额宝里存钱,以获得更多的收益。用户开通了余额宝后,体验金不能消费与提现,到期后支付宝会自动收回,但是在体验期间体验金所产生的收益是归用户的。下面万商云集小编给…查看详情
- 国内知名企业纷纷申请中文域名,已是大势所趋
在英文域名资源日益枯竭的情况下,中文域名在国内开始崛起。从网络安全角度来看,单一的英文注域名很容易被钓鱼网站山寨。回归国内域名圈,我们能惊奇地发现,不少企业已经开始着手注册自由品牌的中文域名,比如“网址”、“集团”、“公司”、“手机”等,中…查看详情
- 零申报的公司要做哪些事情
公司零申报怎么做? 公司财务报表零申报的方法: 1、零申报只要在利润表(损益表)的主营业务收入填为0就可以了,其他数与零申报无关。无收入,就是0申报,但是负债表,和损益表都要填的,如果有费用发生,就都进长期待摊费用-开办费.以后发生…查看详情
- 五款简单好用的舆情监测系统免费
随着社会的发展,科技的进步,舆情监测系统也在不断的发展中,但是好用而且免费的舆情监测系统却是少之又少,针对此需求,小万为大家总结了五款简单好用的舆情监测系统免费版本。 1、哨兵舆情监测系统 哨兵舆情监测系统免费版是一款包含了监测功能、网…查看详情
- 财务软件哪个好 好用的财务软件推荐
现在深受疫情的影响很多的小伙伴都开始使用财务软件来给自己记账,看一下平时的日常开支,下面万商云集小编给大家来详细介绍一下财务软件哪个好 好用的财务软件推荐这一块的内容,不知道下面的软件大家使用过没有。 一、钱迹 钱迹和其他的记账AP…查看详情
- 免费建站系统哪个好 好用免费的建站系统推荐
对于中小企业或者个人,不想做网络宣传营销,首先考虑的是建立一个网站,但是奈何考虑成本,不妨自主建站,利用网络的现成工具,下面万商云集小编给大家来介绍一下免费建站系统哪个好 好用免费的建站系统推荐这方面的内容,希望能帮助到大家解决建站的相…查看详情
- 键盘打不出字怎么回事?可能是这些原因
长期使用电脑的朋友很可能会遇到一些问题,其中电脑键盘失灵是最常见的,键盘是易损电脑产品,长期使用电脑,键盘很容易出现问题,键盘失灵后有的字打不出来,下面小编就给大家来盘点一下键盘打不出字怎么回事这一块的内容,希望能帮助到大家。 键盘打…查看详情
猜你喜欢
最新文章

扫码二维码
立即领取《千元实战营销秘籍》
还可免费试用营销管理系统
*如有疑问,请随时拨打免费咨询热线:400-0033-166
服务时间:8:30-18:00
软件企业
认定号:川RQ-2018-0216
高新技术企业
认定号:GR201951001121

关注微信公众号
和10万中小企业共同成长

扫码下载APP
享全方位服务一触即达
Copyright © 2004-2022 万商云集(成都)科技股份有限公司 版权所有
蜀ICP备12001963号-2
川公网安备 51010402000322号

快速找产品
找一找哪款产品适合您?
咨询热线:400-0033-166
-


-
电话沟通
在线咨询
获取方案
下载APP
官方微信
扫码下载APP
全方位服务一触即达
关注万商云集
和10万中小企共成长
TOP

企业首选的数字选用平台






