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