leveldb
LevelDB is a fast key-value storage library written at Google that provides an ordered mapping from string keys to string values.
File Explorer
- build.yml
- db_bench.cc
- db_bench_log.cc
- db_bench_sqlite3.cc
- db_bench_tree_db.cc
- leveldbConfig.cmake.in
- autocompact_test.cc
- builder.cc
- builder.h
- c.cc
- c_test.c
- corruption_test.cc
- db_impl.cc
- db_impl.h
- db_iter.cc
- db_iter.h
- db_test.cc
- dbformat.cc
- dbformat.h
- dbformat_test.cc
- dumpfile.cc
- fault_injection_test.cc
- filename.cc
- filename.h
- filename_test.cc
- leveldbutil.cc
- log_format.h
- log_reader.cc
- log_reader.h
- log_test.cc
- log_writer.cc
- log_writer.h
- memtable.cc
- memtable.h
- recovery_test.cc
- repair.cc
- skiplist.h
- skiplist_test.cc
- snapshot.h
- table_cache.cc
- table_cache.h
- version_edit.cc
- version_edit.h
- version_edit_test.cc
- version_set.cc
- version_set.h
- version_set_test.cc
- write_batch.cc
- write_batch_internal.h
- write_batch_test.cc
- benchmark.html
- impl.md
- index.md
- log_format.md
- table_format.md
- memenv.cc
- memenv.h
- memenv_test.cc
- c.h
- cache.h
- comparator.h
- db.h
- dumpfile.h
- env.h
- export.h
- filter_policy.h
- iterator.h
- options.h
- slice.h
- status.h
- table.h
- table_builder.h
- write_batch.h
- issue178_test.cc
- issue200_test.cc
- issue320_test.cc
- port.h
- port_config.h.in
- port_example.h
- port_stdcxx.h
- README.md
- thread_annotations.h
- block.cc
- block.h
- block_builder.cc
- block_builder.h
- filter_block.cc
- filter_block.h
- filter_block_test.cc
- format.cc
- format.h
- iterator.cc
- iterator_wrapper.h
- merger.cc
- merger.h
- table.cc
- table_builder.cc
- table_test.cc
- two_level_iterator.cc
- two_level_iterator.h
- benchmark
- googletest
- arena.cc
- arena.h
- arena_test.cc
- bloom.cc
- bloom_test.cc
- cache.cc
- cache_test.cc
- coding.cc
- coding.h
- coding_test.cc
- comparator.cc
- crc32c.cc
- crc32c.h
- crc32c_test.cc
- env.cc
- env_posix.cc
- env_posix_test.cc
- env_posix_test_helper.h
- env_test.cc
- env_windows.cc
- env_windows_test.cc
- env_windows_test_helper.h
- filter_policy.cc
- hash.cc
- hash.h
- hash_test.cc
- histogram.cc
- histogram.h
- logging.cc
- logging.h
- logging_test.cc
- mutexlock.h
- no_destructor.h
- no_destructor_test.cc
- options.cc
- posix_logger.h
- random.h
- status.cc
- status_test.cc
- testutil.cc
- testutil.h
- windows_logger.h
- .clang-format
- .gitignore
- .gitmodules
- AUTHORS
- CMakeLists.txt
- CONTRIBUTING.md
- LICENSE
- NEWS
- README.md
- TODO
# Installation Guide
cmake- Git
- CMake
- C++ Compiler (GCC, Clang, or Visual Studio)
- Snappy compression library
- Zstd compression library
Setup Steps
git clone --recurse-submodules https://github.com/google/leveldb.git
Clone the repository with submodules.
mkdir -p build && cd build
Create and navigate to the build directory.
cmake -DCMAKE_BUILD_TYPE=Release ..
Configure the CMake project in Release mode.
cmake --build .
Build the project.
Key Commands
cmake -DCMAKE_BUILD_TYPE=Release ..
Configure CMake configuration for a release build.
cmake --build .
Compile binaries based on the configured build files.
# Use via CDN
jsDelivrjsDelivr serves any public GitHub repository as a CDN with zero setup. Pick a version and a file to get a ready-to-paste link and snippet.
Command Glossary
Commands referenced in this DOCs, explained below.
clang-format
View Details ▼
clang-format
Auto-format C/C++/Java/JavaScript/Objective-C/Protobuf/C# code.
clang-format {{path/to/file}}
Format a file and print the result to `stdout`:
clang-format -i {{path/to/file}}
Format a file in-place:
clang-format --style {{LLVM|GNU|Google|Chromium|Microsoft|Mozilla|WebKit}} {{path/to/file}}
Format a file using a predefined coding style:
cmake
View Details ▼
cmake
Cross-platform build automation system, that generates recipes for native build systems.
cmake {{path/to/project_directory}}
Generate a build recipe in the current directory with `CMakeLists.txt` from a project directory:
cmake --build {{path/to/build_directory}}
Use a generated recipe in a given directory to build artifacts:
cmake --install {{path/to/build_directory}} --strip
Install the build artifacts into `/usr/local/` and strip debugging symbols:
devenv
View Details ▼
devenv
Fast, declarative, reproducible, and composable developer environments using Nix.
devenv init
Initialize the environment:
devenv shell --impure
Enter the Development Environment with relaxed hermeticity (state of being airtight):
devenv info --verbose
Get detailed information about the current environment:
git clone
View Details ▼
git clone
Clone an existing repository.
git clone {{remote_repository_location}} {{path/to/directory}}
Clone an existing repository into a new directory (the default directory is the repository name):
git clone --recursive {{remote_repository_location}}
Clone an existing repository and its submodules:
git clone {{[-n|--no-checkout]}} {{remote_repository_location}}
Clone only the `.git` directory of an existing repository:
