谷歌bigtable原文+中文注解

上传人:简****9 文档编号:109452730 上传时间:2019-10-26 格式:PDF 页数:14 大小:242.88KB
返回 下载 相关 举报
谷歌bigtable原文+中文注解_第1页
第1页 / 共14页
谷歌bigtable原文+中文注解_第2页
第2页 / 共14页
谷歌bigtable原文+中文注解_第3页
第3页 / 共14页
谷歌bigtable原文+中文注解_第4页
第4页 / 共14页
谷歌bigtable原文+中文注解_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《谷歌bigtable原文+中文注解》由会员分享,可在线阅读,更多相关《谷歌bigtable原文+中文注解(14页珍藏版)》请在金锄头文库上搜索。

1、Bigtable: A Distributed Storage System for Structured Data Fay Chang, Jeffrey Dean, Sanjay Ghemawat, Wilson C. Hsieh, Deborah A. Wallach Mike Burrows, Tushar Chandra, Andrew Fikes, Robert E. Gruber fay,jeff,sanjay,wilsonh,kerr,m3b,tushar,fi kes,gruber Google, Inc. Abstract Bigtable is a distributed

2、storage system for managing structured data that is designed to scale to a very large size: petabytes of data across thousands of commodity servers. Many projects at Google store data in Bigtable, including web indexing, Google Earth, and Google Fi- nance. These applications place very different dem

3、ands on Bigtable, both in terms of data size (from URLs to web pages to satellite imagery) and latency requirements (frombackendbulkprocessingtoreal-timedataserving). Despite these varied demands, Bigtable has successfully provided a fl exible, high-performance solution for all of theseGoogleproduct

4、s. Inthis paperwedescribethesim- ple data model provided by Bigtable, which gives clients dynamic control over data layout and format, and we de- scribe the design and implementation of Bigtable. 1Introduction Over the last two and a half years we have designed, implemented, and deployed a distribut

5、ed storage system for managing structured data at Google called Bigtable. Bigtable is designed to reliably scale to petabytes of data and thousands of machines. Bigtable has achieved several goals: wide applicability, scalability, high per- formance, and high availability.Bigtable is used by more th

6、an sixty Google products and projects, includ- ing Google Analytics, Google Finance, Orkut, Person- alized Search, Writely, and Google Earth. These prod- ucts use Bigtable for a variety of demanding workloads, which range from throughput-oriented batch-processing jobs to latency-sensitive serving of

7、 data to end users. The Bigtable clusters used by these products span a wide range of confi gurations, from a handful to thousands of servers, andstore upto severalhundredterabytesof data. Inmanyways, Bigtableresemblesadatabase: it shares many implementation strategies with databases. Paral- lel dat

8、abases 14 and main-memorydatabases 13 have achieved scalability and high performance, but Bigtable providesadifferentinterfacethansuchsystems. Bigtable does not support a full relational data model; instead, it provides clients with a simple data model that supports dynamic control over data layout

9、and format, and al- lows clients to reason about the locality properties of the data represented in the underlying storage. Data is in- dexed using row and column names that can be arbitrary strings. Bigtable also treats data as uninterpreted strings, although clients often serialize various forms o

10、f struc- tured and semi-structured data into these strings. Clients can control the locality of their data through careful choices in their schemas. Finally, Bigtable schema pa- rameters let clients dynamically control whether to serve data out of memory or from disk. Section 2 describes the data mo

11、del in more detail, and Section 3 provides an overview of the client API. Sec- tion 4 briefl y describes the underlyingGoogleinfrastruc- ture on which Bigtable depends. Section 5 describes the fundamentals of the Bigtable implementation, and Sec- tion 6 describes some of the refi nements that we mad

12、e to improve Bigtables performance. Section 7 provides measurements of Bigtables performance. We describe several examples of how Bigtable is used at Google in Section 8, and discuss some lessons we learned in designing and supporting Bigtable in Section 9.Fi- nally, Section 10 describes related wor

13、k, and Section 11 presents our conclusions. 2Data Model A Bigtable is a sparse, distributed, persistent multi- dimensional sorted map. The map is indexed by a row key, column key, and a timestamp; each value in the map is an uninterpreted array of bytes. (row:string, column:string, time:int64) strin

14、g To appear in OSDI 20061 “CNN.com“ “CNN“ “.“ “.“ “.“ t9 t6 t3 t5 8 t “anchor: “ “ n.www“ “anchor:my.look.ca“contents:“ Figure 1:A slice of an example table that stores Web pages. The row name is a reversed URL. The contents column family con- tains the page contents, and the anchor column family co

15、ntains the text of any anchors that reference the page. CNNs home page is referenced by both the Sports Illustrated and the MY-look home pages, so the row contains columns named anchor: and anchor:my.look.ca. Each anchor cell has one version; the contents column has three versions, at timestamps t3,

16、 t5, and t6. We settled onthis datamodelafterexamininga variety of potential uses of a Bigtable-like system. As one con- crete example that drove some of our design decisions, suppose we want to keep a copy of a large collection of web pages and related information that could be used by many different projects; let us call this particular table the Webtable. In Webtable, we would use URLs as row keys, variousaspects ofwebpagesas columnnames, and store the contents of the web pages

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号