DB
论文
Megastore: Providing Scalable, Highly Available Storage for Interactive Services Spanner: Google's Globally-Distributed Database Large-scale Incremental Processing Using Distributed Transactions and Notifications F1 - The Fault-Tolerant Distributed RDBMS Supporting Google's Ad Business
临时资料
Google Percolator http:\/\/blog.octo.com\/en\/my-reading-of-percolator-architecture-a-google-search-engine-component\/ http:\/\/www.slideshare.net\/mikejf12\/an-introduction-to-google-percolator
公开课
http:\/\/www.cs186berkeley.net\/
LevelDB
LevelDB is a fast key-value storage library written at Google that provides an ordered mapping from string keys to string values.
Features
- Keys and values are arbitrary byte arrays.
- Data is stored sorted by key.
- Callers can provide a custom comparison function to override the sort order.
- The basic operations are Put(key,value), Get(key), Delete(key).
- Multiple changes can be made in one atomic batch.
- Users can create a transient snapshot to get a consistent view of data.
- Forward and backward iteration is supported over the data.
- Data is automatically compressed using the Snappy compression library.
- External activity (file system operations etc.) is relayed through a virtual interface so users can customize the operating system interactions.
Limitations
- This is not a SQL database. It does not have a relational data model, it does not support SQL queries, and it has no support for indexes.
- Only a single process (possibly multi-threaded) can access a particular database at a time.
- There is no client-server support builtin to the library. An application that needs such support will have to wrap their own server around the library.
整体架构
写和删除
读
Compaction
相关技术
- SkipList
http:\/\/www.cnblogs.com\/xuqiang\/archive\/2011\/05\/22\/2053516.html
- LSM-Tree