文档介绍:Google puting Faculty Training Workshop
Module VII: Other Google Technologies
© Spinnaker Labs, Inc.
Overview
BigTable
Chubby
© Spinnaker Labs, Inc.
BigTable
© Spinnaker Labs, Inc.
A Conventional Database…
Data structure:
arbitrary ## of rows
Fixed number and type of columns
Supports search based on values in all cells
Supports synthesis of output reports based on multiple tables (relational operators)
© Spinnaker Labs, Inc.
Google’s Needs
Data reliability
High speed retrieval
Storage of huge numbers of records (several TB of data)
(Multiple) past versions of records should be available
© Spinnaker Labs, Inc.
Assumptions
Many times more reads than writes
ponent mon
Disks are cheap
If they control database design as well as application design, the interface need not be standard
© Spinnaker Labs, Inc.
Reasonable Questions
Are structured queries necessary?
Can data anized such that related data is physically close by nature?
What is the minimum coordination required to retrieve data?
Can ponents be leveraged to provide reliability and abstraction?
© Spinnaker Labs, Inc.
From Needs to Constraints
Simplified data retrieval mechanism
(row, col, timestamp) value lookup, only
No relational operators
Atomic updates only possible at row level
© Spinnaker Labs, Inc.
But Some Additional Flexibility…
Arbitrary number of columns per row
Arbitrary data type for each column
New constraint: data validation must be performed by application layer!
© Spinnaker Labs, Inc.
Logical Data Representation
Rows & columns identified by arbitrary strings
Multiple versions of a (row, col) cell can be accessed through timestamps
Application controls version tracking policy
Columns grouped into column families
© Spinnaker Labs, Inc.