Bigtable:一个分布式的结构化数据存储系统导师:成卫青报告:孟德鑫双语例句分布式结构化数据表:Bigtable1.设计动机与目标2.数据模型3.系统架构4.主服务器5.子表服务器6.性能优化双语例句1.动机与目标1.需要存储的数据种类繁多:Google面向公众开放的服务很多,需要处理的数据类型也很多。包括URL、网页内容、用户的个性化设置在内的数据都是Google需要经常处理的。2.海量的服务请求:Google运行着目前世界上最繁忙的系统,它每时每刻处理的客户服务请求数量是普通的系统根本无法承受的。3.商用数据库无法满足Google的需求:一方面现有商用数据库设计着眼点在于通用性,根本无法满足Google的苛刻服务要求;另一方面对于底层系统的完全掌控会给后期的系统维护、升级带来极大的便利。双语例句设计动机与目标基本目标高可用性Bigtable设计的重要目标之一就是确保几乎所有的情况下系统都可用广泛的适用性Bigtable是为了满足系列Google产品而非特定产品存储要求简单性底层系统简单性既可减少系统出错概率,也为上层应用开发带来便利很强的可扩展性根据需要随时可以加入或撤销服务器双语例句2.数据模型Bigtable是一个分布式多维映射表,表中的数据通过一个行关键字(RowKey)、一个列关键字(ColumnKey)以及一个时间戳(TimeStamp)进行索引Bigtable对存储在其中的数据不做任何解析,一律看做字符串Bigtable的存储逻辑可以表示为:“内容:”“锚点:cnnsi.com”“锚点:my..look.ca”“com.cnn.”“html…”“html…”“html…”“CNN.com”“CNN”t3t5t6t8t9Bigtable数据模型双语例句2.数据模型:行Bigtable的行关键字可以是任意的字符串,但是大小不能超过64KB。Bigtable和传统的关系型数据库有很大不同,它不支持一般意义上的事务,但能保证对于行的读写操作具有原子性(Atomic)表中数据都是根据行关键字进行排序的,排序使用的是词典序。一个典型实例,其中com.cnn.就是一个行关键字。不直接存储网页地址而将其倒排是Bigtable的一个巧妙设计。这样做至少会带来以下两个好处同一地址域的网页会被存储在表中的连续位置,有利于用户查找和分析倒排便于数据压缩,可以大幅提高压缩率“内容:”“锚点:cnnsi.com”“锚点:my..look.ca”“com.cnn.”“html…”“html…”“html…”“CNN.com”“CNN”t3t5t6t8t9双语例句数据模型注:由于规模的问题,单个的大表不利于数据处理,因此Bigtable将一个表分成了多个子表,每个子表包含多个行。子表是Bigtable中数据划分和负载均衡的基本单位。双语例句数据模型:列Bigtable并不是简单地存储所有的列关键字,而是将其组织成所谓的列族(ColumnFamily),每个族中的数据都属于同一个类型,并且同族的数据会被压缩在一起保存。引入了列族的概念之后,列关键字就采用下述的语法规则来定义:族名:限定词(family:qualifier)族名必须有意义,限定词则可以任意选定图中,内容(Contents)、锚点(Anchor)都是不同的族。而cnnsi.com和my.look.ca则是锚点族中不同的限定词族同时也是Bigtable中访问控制(AccessControl)基本单元,也就是说访问权限的设置是在族这一级别上进行的。“内容:”“锚点:cnnsi.com”“锚点:my..look.ca”“com.cnn.”“html…”“html…”“html…”“CNN.com”“CNN”t3t5t6t8t9双语例句数据模型:时间戳1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.双语例句分布式结构化数据表:Bigtable1.2.3.4.5.6.