- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《BigTabe简介
首先,向大家介绍在2006年OSDI大会上发表BigTable论文,也就是《Bigtable: A Distributed Storage System for Structured Data》里面所提到的一些特性:特性BigTableHBase注释原子的读写和修改支持,基于Row的支持,基于Row的由于BigTable本身不是关系型数据库,所以它没有事务功能,但是有一个非常相近的机制,就是对一个Row的原子操作。按照字典顺序对Row排序支持支持和传统的关系型数据库的不同的是,其只支持按照字典顺序(lexicographic order)对Row排序。支持Block格式存储支持支持每个存储文件,都由一些小的block组成,这样能快速从大的存储文件中读取数据,默认Block的大小为64K。Block压缩支持, 基于 column family支持, 基于 column familyBigTable使用BMDiff和Zippy这两种压缩算法。 Column Family的个数最多100少于100?Column Family名字的格式可打印可答应这两个系统都使用Column Family的名字作为文件系统中目录名Column名字的格式任意任意可以是任意字节数组。Key和Value的格式任意任意和上面一样,可以是任意字节数组。访问控制支持不支持BigTable在column family这个层次实现了访问控制。 Cell版本支持支持主要通过Timestamp的形式来实现对Cell版本的控制。自定义Timestamp支持支持这两个系统都能让用户自己设定Value的Timestamp或者默认的“now”。数据TTL(Time-To-Live)支持支持数据Cell除了Timestamp之外,用户还能设定TTL,用来在一段时间后,自动删去旧的数据。批处理写支持支持两个系统都支持批处理写。基于Value的计数器支持支持这两个系统都可使用特定的Column作为原子的计数器。Row过滤器支持支持在扫描Row的时候,可以通过过滤器来处理Row。脚本工具支持不支持BigTable有Sawzall这个工具来帮助用户快速处理BigTable中的数据。MapReduce支持支持BigTable和HBase都提供完善的类库和工具来支持MapReduce。存储系统GFSHDFS, S3, S3N, EBSBigTable主要运行于Google的GFS上, 而且HBase能支持多种存储系统,只要有相关的驱动或者代理。文件格式SSTableHFile都是Immutable的,也就是写好之后,很少更改的。Block Index文件尾部文件尾部?内存映射YesNoBigTable能将存储文件直接映射到内存中。锁服务ChubbyZooKeeper虽然两者功能类似,但在实现机制上稍有不同,原因是ZooKeeper主要通过协调任务来实现锁服务的。单一Master是不是HBase最近添加了对多Master的支持,而且通过ZooKeeper来对那个”standby”的节点进行监控和管理。Tablet的个数10-100010-1000无论是BigTable,还是HBase,其每个Tablet节点都支持1000个左右的Tablet。Tablet的大小100-200MB256MB大小可以用户自己设定。Root Tablet的地址1st META -ROOT-BigTable系统在METADATA Table的第一个Tablet中存放第一个Tablet,也就是Root Tablet,而HBase使用单一的一个Tablet来存放Root Tablet。Client Tablet Cache支持支持Client端会cache住tablet的地址,也可以通过检测来更新本地的cache。Locality组支持不支持可将多个Column Family存储在一起。Meta Prefetch支持不支持Client端能一下子读取多个Meta Tablet的信息,这样能减少今后的查找。Cell Cache支持不支持缓存一些访问很频繁的key/value对。In-Memory Column Families支持支持能将小的Table装载至内存,以提高访问速度。Block Cache支持支持?Historian支持支持METADATA Table会记录和Tablet有关的事件。Bloom Filter支持支持用于让系统快速确定这个Region是否存有所需的值。Write Ahead Log 支持支持每个Tablet节点会其所承载的所有的Tablet准备一个Write Ahead Log来转载修改信息。Secondary Log支持不支持其是Write Ahead Log的副本,当前面那一个Log出现性能问题时
文档评论(0)