1 / 6
文档名称:

谷歌经典论文BigTable翻译.docx

格式:docx   大小:40KB   页数:6页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

谷歌经典论文BigTable翻译.docx

上传人:mxh2875 2019/5/13 文件大小:40 KB

下载得到文件列表

谷歌经典论文BigTable翻译.docx

文档介绍

文档介绍:前记几年前在读Google的BigTable论文的时候,当时并没有理解论文里面表达的思想,因而囫囵吞枣,并没有注意到SSTable的概念。再后来开始关注HBase的设计和源码后,开始对BigTable传递的思想慢慢的清晰起来,但是因为事情太多,没有安排出时间重读BigTable的论文。在项目里,我因为自己在学HBase,开始主推HBase,而另一个同事则因为对Cassandra比较感冒,因而他主要关注Cassandra的设计,不过我们两个人偶尔都会讨论一下技术、设计的各种观点和心得,然后他偶然的说了一句:Cassandra和HBase都采用SSTable格式存储,然后我本能的问了一句:什么是SSTable?他并没有回答,可能也不是那么几句能说清楚的,或者他自己也没有尝试的去问过自己这个问题。然而这个问题本身却一直困扰着我,因而趁着现在有一些时间深入学****HBase和Cassandra相关设计的时候先把这个问题弄清楚了。SSTable的定义要解释这个术语的真正含义,最好的方法就是从它的出处找答案,所以重新翻开BigTable的论文。在这篇论文中,最初对SSTable是这么描述的(第三页末和第四页初):SSTableTheGoogle SSTable  SSTable providesa persistent,orderedimmutablemapfromkeystovalues,wherebothkeysandvaluesarearbitrarybytestrings. Operationsareprovidedtolookupthevalueassociatedwithaspecified key,andtoiterateoverallkey/,eachSSTablecontainsasequenceofblocks(typicallyeachblockis64KBinsize,butthisisconfigurable).Ablockindex(storedattheendoftheSSTable)isusedtolocateblocks;:wefirstfindtheappropriateblockbyperformingabinarysearchinthein-memoryindex,,pletelymappedintomemory,:SSTable是Bigtable内部用于数据的文件格式,它的格式为文件本身就是一个排序的、不可变的、持久的Key/Value对Map,其中Key和value都可以是任意的byte字符串。使用Key来查找Value,或通过给定Key范围遍历所