Repolode
dgraph-io

dgraph-io/badger

Banco de dados chave-valor persistente e incorporável, escrito em Go puro, com transações ACID e design otimizado para SSDs.

Estrelas
15,786
Forks
1,334
Issues abertas
76
Último commit
ontem

O que é?

BadgerDB é um banco chave-valor persistente e incorporável, escrito inteiramente em Go. Ele roda dentro do processo da sua aplicação, em vez de funcionar como um servidor separado, e é o mecanismo de armazenamento por baixo do banco de dados de grafos Dgraph.

O Badger é baseado em uma árvore LSM com um log de valores separado, seguindo o design WiscKey, que mantém os valores fora do índice de chaves para reduzir a amplificação de escrita em SSDs. Ele oferece transações ACID concorrentes com isolamento de snapshot serializável, iteradores com varreduras por prefixo e intervalo de chaves, versões por chave e TTL. Como não depende de Cgo, pode ser compilado com a toolchain padrão do Go.

O projeto também inclui uma CLI para operações como backup e restauração offline e está disponível como módulo Go em github.com/dgraph-io/badger/v4.

Recursos principais

  • 01Banco chave-valor incorporável, escrito em Go puro e sem dependência de Cgo.
  • 02Transações ACID concorrentes com isolamento de snapshot serializável.
  • 03Separação entre chaves e valores, com um log de valores para reduzir a amplificação de escrita em SSDs.
  • 04Iteradores com varreduras por prefixo e intervalo de chaves, além de acesso a várias versões de cada chave.
  • 05Suporte a TTL para expiração automática de chaves.
  • 06Ferramenta de linha de comando para backup e restauração offline.

Casos de uso

  • Incorporar um armazenamento local persistente e rápido em um serviço Go ou ferramenta CLI.
  • Servir como camada de armazenamento para um sistema distribuído ou banco de dados de grafos.
  • Criar um log Raft ou armazenamento de metadados em aplicações Go.
  • Armazenar grandes conjuntos de dados em SSDs quando a velocidade de leitura e escrita é importante.

Início rápido

  1. 1

    Instale a biblioteca no seu projeto Go

    go get github.com/dgraph-io/badger/v4
  2. 2

    Instale a ferramenta de linha de comando Badger a partir de um repositório clonado

    cd badger go install .

Antes de usar

  • Requer Go 1.23 ou superior.

Tópicos

Perguntas frequentes

O que é badger?
Banco de dados chave-valor persistente e incorporável, escrito em Go puro, com transações ACID e design otimizado para SSDs. BadgerDB é um banco chave-valor persistente e incorporável, escrito inteiramente em Go. Ele roda dentro do processo da sua aplicação, em vez de funcionar como um servidor separado, e é o mecanismo de armazenamento por baixo do banco de dados de grafos Dgraph.
badger é gratuito? Qual é a licença?
badger é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
badger ainda é mantido?
Manutenção ativa. O último commit de badger foi em 20 de out. de 2026.
Para que posso usar badger?
Incorporar um armazenamento local persistente e rápido em um serviço Go ou ferramenta CLI. Servir como camada de armazenamento para um sistema distribuído ou banco de dados de grafos. Criar um log Raft ou armazenamento de metadados em aplicações Go. Armazenar grandes conjuntos de dados em SSDs quando a velocidade de leitura e escrita é importante.
Como instalar badger?
Instale a biblioteca no seu projeto Go: go get github.com/dgraph-io/badger/v4 Instale a ferramenta de linha de comando Badger a partir de um repositório clonado: cd badger go install .
Onde consigo badger?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/dgraph-io/badger

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

Projetos relacionados