资源预览内容
第1页 / 共17页
第2页 / 共17页
第3页 / 共17页
第4页 / 共17页
第5页 / 共17页
第6页 / 共17页
第7页 / 共17页
第8页 / 共17页
第9页 / 共17页
第10页 / 共17页
亲,该文档总共17页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
GOOGLE分布式技术研究Google成功的重要因素采用基于云计算分布式技术为核心IT架 构其品牌价值已经超过麦当劳、可口可乐, 成为世界第一品牌,而且比起其他世界名 牌每年几亿美元的广告投入,它没有打一 分钱的广告。Google凭什么世界第一? 优兴咨询的最新调查显示,最受年轻人青睐的雇主为 谷歌。这份面向10306名大学生的调查,让受调查者 从150个雇主中挑选五个最理想的雇主,约有25%的 大学生选了谷歌,位列第一。十几年前,谷歌(Google)只是一个只有十几 个员工的小企业,短短十几年时间,它成为了 全球市值最高的互联网公司。调研机构comScore公 布的数据显示,今年2月份,美国市场谷 歌、雅虎和微软网站 的访问量分别排名前 三位市值最高的互 联网公司世界第一品牌最受欢迎的雇 主访问量最高的 互联网公司2感受云计算的 力量Google的技术架构核心技术为GFS, BigTable, Mapreducegoogle分布式技术的重要借鉴意义解决 业务支撑系统当前瓶颈的重要参照BigTableBigTable分布式数据库出色的扩展性能使系 统不受规模限制,无限扩展。GFSGfs分布式文件系统可以使用廉价的磁盘,存储 海量的数据,并提供快速的查询与高安全性,并 能自动扩展海量数据规模的限制Mapreduce 使用Mapreduce并行编程模型去改造应用软 件,可以提高系统可靠性,消除单点故障分布式架构采用类似Google基于x86服务器的分布式 架构的解决方案,可有效降低投资成本居高不下的系统建设成本源于现有的解决方 案小型机+oracle数据库。系统规模越来越大,业务响应越来越慢, 越来越受限于关系型数据库的性能几何级数增加的海量数据,如何存储,如 何快速查询,如何管理。应用软件的稳定性,扩展性都受到挑战, 单点故障频发。CRM技术规范4GFS的技术特点高性能,高吞吐,高可靠性,高安全,高扩展性p部件错误不再被当作异常,而是将其作为常见的情况加以处理。p大部分文件的更新是通过添加 新数据完成的,而不是改变已存在的数据。p所有文件都有副本存在另外机器中,通常可以设置2个副本。文件系统不用担心数据丢失。p客 户和chunkserver都不缓存文件数据,不缓存可以简化客户程序与整个系统。p文件块规模较大,可以减少master与chunkserver的通信,也可以减少master上的数据规模。pMaster服务器负责数据破坏时的恢复,以及删除文件后的数据清理(不是立即删除,因此误删除可以恢复)。GFS分布式文件系统性能随 着客户端的数量几乎线性 增加 某实验室对GFS的小规模基准测试。测试环 境:我们在一个包含1台Master服务 器,2台Master服务器复制节点,16台Chunk 服务器和16个客户机组成的GFS集群上测量 性能。 GFS与传统的文件系统的比较特征传统 文件系统分布式文件系统资源透明性一般好并发访问较好好高可用性一般 好数据冗余差好软/硬件异构差好一致性好一般安全性一般较好高效性一般好GFS对于业务支撑系统的借鉴意义 低成本,高收益的解决方案得以实施文件服务器小型机+磁盘阵列+物理DBX86服务器+分布式文件系统X86+分布式文 件系统上网轨迹的存储与查询ETL数据抽取与分析账单的存储与查询短信内容信息的存储与查询业务记录的存储与查询详单存储与查询BigTable的技术特点海 量数据存储, 适用性广 泛、可扩展、高性能和高可 用多维M AP行,列族,时间 戳。非强一致性,提高系统可用 性分布式的部署,可自 管理的灵活扩展。Tablet服务采用缓存技术。 提高系统性能。BigTable与关系型数据库的比较 在很多方面优于关系型数据库特征传统 关系数据库分布式数据库软件结构灵活性 好好硬件要求高低操作系统很多单一(linux)数据结构开发不支持join数据处理支持SQL暂不支持SQL扩放方法代价较高操作简单 ,代价低可靠性较差较好应用的普适度较差较好BigTable对于业务支撑系统 的借鉴意义业务 系统业务 系统业务 系统业务 系统业务 系统详单数 据子库核心数据仓库W EB文 档非结构 化数据 子库数 据 仓 库 平 台数据语义层封装服务信息搜索 服务数 据 探 索 平 台知识的生成与提炼( 标签生成与数据挖掘 )报表工具OLAP工具挖掘工具库外ETL处理可以采用类似BigTable分 布式数据库的MPP架构的 数据库系统作为核心数据 仓库解决方案。BigTablep大规模的海量 数据存储。 p多维度的数据 分析与汇总 p要求支持数据 容量快速增加 p特定数据的抽 取速度要求较高BASSBigtable对于BOMC系统借鉴意义分布式数据库可 尝试替换关系数据库ORACLE,实现低成本,高收 益。BOMCBOMC数据高安全要求非OLTP系统,数 据之间关系弱采集数据量较大, 以写入为主BOMC的业务特点BOMC的功能框架可以用分布式 数据库替换MAPREDUCE的技术特点 将任务切分成多个等大可以单独计算的小任 务。Initial data split into 64MB blocksComputed, results locally storedM sends data location to R workersFinal output writtenMaster informed of result locationsMapReduce对于业务支撑系统的借鉴意义 各种后台应用程序的云化应该尽量横向扩展, 每个节点上执行任务基本相同采集节 点预处理 节点业务分 析节点批价 节点分拣 节点查重 节点File or socketFile or socketFile or socketFile or socketFile or socket处理海量数据时计算节点之间传输 数据,会造成高昂的开销,从而严 重影响性能。在云计算环境中纵向拆分计费任务形成计费节 点值得商 榷。计费map节点1计费map节点n输入 文件输出 文件计费reduce节点1计费reduce节点n.BUFFER采集任 务预处 理 任务查重任 务业务 分 析任务批价任 务.Google其他技术探讨 沙箱技术沙箱(SandBox)是用于实现 平台上应用之间隔离的技 术。包括非法操作的隔离技 术,数据的隔离技术,性能 的隔离技术。业务支撑系统存在大量的后台 应用程序,每个应用程序所占 用的资源是不受限制的,一旦 出现应用程序出现问题 需要将 问题限制在很小的范围内,避 免整个系统崩溃。Google遵守的分布式计算的重要原则 CAP理论CAPCAP一致性可用性容错性CAP理论:这三个要素最多只能同时实现 两点 ,不可能三者兼顾。因此在进行分布式架构设 计时,必须做出取舍。对对于分布式数据系统统,容错错性是基 本要求,否则就失去了价值。因此 设计分布式数据系统,就是在一致 性和可用性之间取一个平衡。HadoopGoogle分布式技 术的开源实现主要产品对应 关系 GoogleHadoop分布式文件系统GFSHDFS分布式数据库BigTableHBase分布式编程算法MapReduceMapReduce分布式锁服务ChubbyZooKeeperHadoop生态圈组件内容简述Common一组分布式文件系统和通用I/O的组件与接口(序列化、Java RPC和持久化数据结构)。Avro一种支持高效、跨语言的RPC以及永久存储数据的序列化系统。MapReduce分布式数据处理模型和执行环境,运行于大型商用机集群。HDFS分布式文件系统,运行于大型商用机集群。Pig一种数据流语言和运行环境,用以检索非常大的数据集。Pig 运行在MapReduce和HDFS的 集群上。Hive一个分布式、按列存储的数据仓库。Hive管理HDFS中存储的数据,并提供基于 SQL的查 询语言(由运行时引擎翻译成MapReduce作业)用以查询数据。HBase一个分布式、按列存储数据库。HBase使用HDFS作为底层存储,同时支持MapReduce的批 量式计算和点查询(随机读取)。ZooKeeper 一个分布式、可用性高的协调服务。ZooKeeper提供分布式锁之类的基本服务用于构建分 布式应用。Sqoop在数据库和HDFS之间高效传输数据的工具。
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号