Repolode
google

google/leveldb

Uma biblioteca rápida de armazenamento chave-valor embutido do Google, que mantém chaves e valores em strings ordenadas.

Estrelas
39,503
Forks
8,230
Issues abertas
425
Último commit
há 13 dias

O que é?

LevelDB é um armazenamento chave-valor embutido, escrito em C++ no Google. Ele mapeia chaves em strings de bytes arbitrárias para valores também em strings de bytes e mantém os dados ordenados por chave, permitindo que as aplicações percorram intervalos para frente ou para trás. É uma biblioteca vinculada ao processo, não um servidor, e apenas um processo por vez (que pode ser multithread) pode abrir um determinado banco de dados.

A API se concentra em Put, Get e Delete, com lotes de gravação atômicos e snapshots temporários para leituras consistentes. Por padrão, os dados são compactados com Snappy, e Zstd também é compatível. As interações com o sistema operacional, como o acesso a arquivos, passam por uma interface virtual que os chamadores podem substituir.

LevelDB não é um banco de dados SQL e não tem índices, modelo relacional nem camada cliente-servidor integrada. O projeto está em modo de manutenção limitada e aceita principalmente correções críticas de bugs e mudanças de compatibilidade. A compilação é feita com CMake em sistemas POSIX e no Windows.

Recursos principais

  • 01Chaves e valores são arrays de bytes arbitrários, armazenados em ordem por chave.
  • 02Oferece suporte a funções de comparação personalizadas para alterar a ordem de classificação.
  • 03Oferece lotes de gravação atômicos e snapshots temporários.
  • 04Permite percorrer os dados para frente e para trás.
  • 05Compacta os dados com Snappy por padrão e também oferece suporte a Zstd.
  • 06Permite que os chamadores substituam a camada de interação com o sistema operacional por meio de uma interface virtual.

Casos de uso

  • Incorporar um cache ou índice local e rápido de chave-valor em uma aplicação C++.
  • Armazenar dados ordenados que precisam de consultas por intervalo de chaves.
  • Criar um mecanismo de armazenamento ou servidor personalizado sobre um armazenamento embutido.

Início rápido

  1. 1

    Clone o repositório com os submódulos

    git clone --recurse-submodules https://github.com/google/leveldb.git
  2. 2

    Crie um diretório de build e configure-o com o CMake

    mkdir -p build && cd build cmake -DCMAKE_BUILD_TYPE=Release ..
  3. 3

    Compile a biblioteca

    cmake --build .

Antes de usar

  • Somente um processo (possivelmente multithread) pode acessar um determinado banco de dados por vez.
  • Não é um banco de dados SQL e não oferece suporte integrado a cliente-servidor, índices ou modelo relacional.
  • A manutenção do repositório é muito limitada; somente correções de bugs críticos e de falhas são revisadas.

Tópicos

Perguntas frequentes

O que é leveldb?
Uma biblioteca rápida de armazenamento chave-valor embutido do Google, que mantém chaves e valores em strings ordenadas. LevelDB é um armazenamento chave-valor embutido, escrito em C++ no Google. Ele mapeia chaves em strings de bytes arbitrárias para valores também em strings de bytes e mantém os dados ordenados por chave, permitindo que as aplicações percorram intervalos para frente ou para trás. É uma biblioteca vinculada ao processo, não um servidor, e apenas um processo por vez (que pode ser multithread) pode abrir um determinado banco de dados.
leveldb é gratuito? Qual é a licença?
leveldb é open source sob a licença BSD-3-Clause. Confira os termos da licença antes de usá-lo em produtos comerciais.
leveldb ainda é mantido?
Manutenção ativa. O último commit de leveldb foi em 8 de out. de 2026.
Para que posso usar leveldb?
Incorporar um cache ou índice local e rápido de chave-valor em uma aplicação C++. Armazenar dados ordenados que precisam de consultas por intervalo de chaves. Criar um mecanismo de armazenamento ou servidor personalizado sobre um armazenamento embutido.
Como instalar leveldb?
Clone o repositório com os submódulos: git clone --recurse-submodules https://github.com/google/leveldb.git Crie um diretório de build e configure-o com o CMake: mkdir -p build && cd build cmake -DCMAKE_BUILD_TYPE=Release .. Compile a biblioteca: cmake --build .
Onde consigo leveldb?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/google/leveldb

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados