|
|
- leveldb: A key-value store
- Authors: Sanjay Ghemawat (sanjay@google.com) and Jeff Dean (jeff@google.com)
-
- The code under this directory implements a system for maintaining a
- persistent key/value store.
-
- See doc/index.html for more explanation.
- See doc/db_layout.txt for a brief overview of the implementation.
-
- The public interface is in include/*.h. Callers should not include or
- rely on the details of any other header files in this package. Those
- internal APIs may be changed without warning.
-
- Guide to header files:
-
- include/db.h
- Main interface to the DB: Start here
-
- include/options.h
- Control over the behavior of an entire database, and also
- control over the behavior of individual reads and writes.
-
- include/comparator.h
- Abstraction for user-specified comparison function. If you want
- just bytewise comparison of keys, you can use the default comparator,
- but clients can write their own comparator implementations if they
- want custom ordering (e.g. to handle different character
- encodings, etc.)
-
- include/iterator.h
- Interface for iterating over data. You can get an iterator
- from a DB object.
-
- include/write_batch.h
- Interface for atomically applying multiple updates to a database.
-
- include/slice.h
- A simple module for maintaining a pointer and a length into some
- other byte array.
-
- include/status.h
- Status is returned from many of the public interfaces and is used
- to report success and various kinds of errors.
-
- include/env.h
- Abstraction of the OS environment. A posix implementation of
- this interface is in util/env_posix.cc
-
- include/table.h
- include/table_builder.h
- Lower-level modules that most clients probably won't use directly
|