腾讯的云计算平台-台风系统简介

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

腾讯的云计算平台-台风系统简介腾讯公司-基础架构部朱会灿陈峰大纲•云计算Overview•台风平台Overview•具体项目介绍•应用情况生活中的云计算•手机通讯录备份到云端–再不担心手机丢失了•云存储,云硬盘:–数据随时随地access。•互联网搜索取代图书馆–海量数据存在云端,一个简单的检索,几千台机器为你服务云计算平台意义•让开发者专注于核心业务–管理存储和计算,自动数据备份,自动切换机器•更有效利用资源–资源共享,提高资源利用率。–资源池:建立大的cluster(1000+机器)•处理大规模数据更高效•节约成本,弹性扩展,方便capacityplanning•更有效地管理–统一监控,维护,安全保护•权限认证和quota:保证贡献资源者优先使用资源。挑战•安全:–数据(文件)操作,通讯准入,进程隔离•Staticpartitionv.s.dynamicallocation•VirtualMachine,Sandbox,Linuxcontainer–Authentication,Accesscontrol•公平:–进程调度,带宽使用–Quota:存储,计算资源–Hardlimit:CPU,memory–优先级大纲•云计算Overview•台风平台Overview•具体项目介绍云计算平台作为OS•把云计算平台看做一个OS,则我们需要:–文件系统(存储系统)–进程和资源管理系统(运行程序,管理CPU,内存,等等)–权限管理系统(账户,权限,认证,等)–方便开发的系统软件(数据库等)–程序开发APIs(networking,threads,etc)常规网络应用的项目层次关系StorageComputingNaming,Lock,……Naming,Lock,……AuthenticationDBMSDBMSDataProcessingDataProcessingAppsAppsNetworkPlatformNetworkPlatformAppsAppsAppsApps台风系统的层次关系Storage(XFS)Computing(Torca)Naming,Lock(ZooKeeper)Naming,Lock(ZooKeeper)Authentication(TAAS)DBMS(XCube)DBMS(XCube)DataProcessing(MapReduce)DataProcessing(MapReduce)AppsAppsNetworkPlatform(Poppy)NetworkPlatform(Poppy)Apps(Search,Ads,…)Apps(Search,Ads,…)LogsProcessingLogsProcessing清晰分层-模块界面-类似于Hadoop,但有独立的clustermanagementsystem台风平台特性私有-Target公司内部业务:搜索,日志处理-UseLinuxContainer兼容性-主要采用C++开发,跟现有的代码无缝整合-通过SWIG/JNA等方式支持了多语言-支持Hadoop应用台风平台目标高效-处理大规模数据:Terabytesofdata.共享-Cluster供多个业务和服务使用公平-贡献资源者-优先拿到资源-资源不够时能抢到资源安全-文件读写-Job提交和控制-数据库Access大纲•云计算Overview•台风平台Overview•具体项目介绍:–Poppy–XFS–Torca–XCube–MapReduce通讯平台Poppy••PoppyPoppy––基于基于ProtocolBufferProtocolBuffer的的RPCRPC框架框架Poppy=Protobuf+RPC+HTTP+morePoppy的主要特性•高性能•支持多服务器负载均衡•支持传输内容压缩,内置压缩策略。•支持streaming,可流式分块传输大量数据。•支持多语言(Java,Python,PHP,以及任何支持JSON的语言)•支持TNS地址(基于Torca上的Job/Task寻址,当任务迁移时自动改到新的地址)Poppy特性:动态profilingpprof$binary_file特性:Web提交PoppyPoppyPoppyPoppy项目目前使用情况项目目前使用情况项目目前使用情况项目目前使用情况项目项目项目项目描述描述描述描述Typhoon台风平台所有项目Cocktail长尾广告新网页搜索新的网页搜索采用Poppy做通讯其他社区搜索,网络平台大纲•具体项目介绍:–Poppy–XFS–Torca–XCube–MapReduce业界分布式文件系统MasterMasterNodeserverNodeserverNodeserverNodeserverNodeserverNodeserverGFSHDFSMasterisbottleneck:-Hugememoryrequirement-Hugerequests-导致文件个数有限,集群规模有限XFS架构设计XFS-MasterXFS-MetaServerXFS-MetaServerXFS-MetaServerXFS-NodeServerXFS-NodeServerXFS-NodeServerXFS-NodeServerXFS-NodeServerXFS-NodeServerXFS-SDK安全性(Safety&Security)系统性能数据•读:从多个nodeserver并发读•写:以pipeline方式同时写到多个nodeserver•支持多达5555亿亿亿亿个文件•单client读大数据:90M/s•单client写大数据:66M/s文件操作相关函数•Open:同步,异步,备份数•Close•AsyncRead•Read•ReadLine•AsyncWrite•Write•Copy•Seek•Tell•Flush•LocateData:获取文件的各数据块所在的机器ipMoveRenameAddDirListGetMachingFilesGetSizeChmod大纲•具体项目介绍:–Poppy–XFS–Torca–XCube–MapReduceWithTorcaService/Job/TaskJobDescriptionFilecmd=/home/user/bin/querycounterRequirements=server_type==“TS5“Task_count=10CPU=2Memory=2GArgs=…如何把10101010个数加起来:-手工-task0等待其它task完成,通过网络(文件)收集结果-起一个新的job,只有一个task,读出前面写出的结果,加起来(service)ArchitectureofTorcaCentralmanagerCentralmanagerCentralmanagerCentralmanagerCentralManagerSubmitterSubmitterSubmitterSubmitterNamingServiceZooKeeperSharedFileSystenXFS/NFSExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerExecuteServerSubmitterSubmitterSubmitterSubmitterTorca实现Torca应用•大纲•具体项目介绍:–Poppy–XFS–Torca–XCube–MapReduceXCube是什么•XCube是分布式NoSQL数据库SQLSQLSQLSQLNoSQLNoSQLNoSQLNoSQL结构2维表3维+操作SQL语句CustomizedAPI存储按行存储按列存储数据模型ACIDXCube支持单行内atomicopsScalabilityLowHighXCube数据模型XCubeXCubeXCubeXCube系统架构系统架构系统架构系统架构————子模块设计子模块设计子模块设计子模块设计XFSmastermastertabletserver1tabletservernClientSDKXCubeshellWebtoolsapp1appnapp1appncommit_logsstable……子模块名子模块名子模块名子模块名功能功能功能功能Master负责管理和维护系统当中的所有TabletServer,以及表操作和权限验证过程。Tabletserver负责组织和管理结构化数据,提供读、写、扫描、删除等服务。ClientSDK提供给用户整个系统的读、写、扫描、删除等服务的API。XCubeshell提供,表操作和少量数据操作的Shell工具。Webtools提供整系统的监控和运维工具TorcaRecordsZookeeperZookeeperXCubeXCubeXCubeXCube项目目前使用情况项目目前使用情况项目目前使用情况项目目前使用情况集群名集群名集群名集群名已接入应用已接入应用已接入应用已接入应用使用情况使用情况使用情况使用情况websearch网页索引项目测试数据上表现稳定:URLtable:~1000亿行,100万亿cells;100TB数据大纲•具体项目介绍:–Poppy–XFS–Torca–XCube–MapReduceMapReduce简介MultiMap•用户在一个MapReduce任务中可以指定多个MapClass,用于对不同格式的文件进行处理。Mapper1Mapper2Mapper3Reducer运行时监控2011年05月06月09月12月2012年3月WordCountWordCountWordCountWordCount100G100G100G100GWordCountWordCountWordCountWordCount10T10T10T10TAnchorInversedAnchorInversedAnchorInversedAnchorInversed90T90T90T90TURLIntoURLIntoURLIntoURLIntoXCubeXCubeXCubeXCube200T200T200T200TMapReduce数据规模MapReduce4月份完成第一个版本开发,5月份成功完成100G数据规模的运算,2012年初,单次作业运算最大数据规模突破500T。WOBWOBWOBWOB500T500T500T500TMapReduce成就—TeraSortMapReducev0.8版本TeraSortBenchMark在445台服务器下面最快94s完成,我们进入秒杀秒杀秒杀秒杀TTTT级级级级别数据的时代。Hadoop目前1440台服务器创造62s的世界记录,我们继续挑战!大纲•云计算Overview•台风平台Overview•具体项目介绍•应用情况Typhoon系统促进创新•自动管理机器和存储:–开发者只需全力关注功能和产品•快速试验成为现实:–AntiSpam,ClickModel,锚文本处理:•处理大规模数据。•迭代一次:2星期�几个小时–快速大规模试验成为现实–可并行跑几个试验Cluster部署情况•在多地都有cluster部署•数据挖掘和处理业务:•clickmodel,anti-spam:1星期�几个小时•Anchortext反转:2星期�12小时•线上服务:•基于新架

1 / 47
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功