Repolode
google

google/leveldb

Una biblioteca rápida de almacenamiento embebido de clave-valor de Google que mantiene las claves y los valores de tipo string ordenados.

Estrellas
39,503
Forks
8,230
Issues abiertos
425
Último commit
hace 13 días

¿Qué es?

LevelDB es un almacén de clave-valor embebido escrito en C++ en Google. Asocia claves de cadenas de bytes arbitrarias con valores de cadenas de bytes y ordena los datos por clave, de modo que las aplicaciones pueden recorrer rangos hacia adelante o hacia atrás. Es una biblioteca que se enlaza con un proceso, no un servidor, y cada base de datos puede estar abierta por un solo proceso a la vez (que puede ser multihilo).

La API se centra en Put, Get y Delete, con lotes de escritura atómicos y snapshots temporales para realizar lecturas coherentes. Los datos se comprimen con Snappy de forma predeterminada y también se admite Zstd. Las interacciones con el sistema operativo, como el acceso a archivos, pasan por una interfaz virtual que quienes llaman pueden reemplazar.

LevelDB no es una base de datos SQL y no tiene índices, modelo relacional ni una capa cliente-servidor integrada. El proyecto está en modo de mantenimiento limitado y acepta principalmente correcciones de errores críticos y cambios de compatibilidad. Se compila con CMake en sistemas POSIX y Windows.

Funciones clave

  • 01Las claves y los valores pueden ser matrices de bytes arbitrarias y se almacenan ordenados por clave.
  • 02Admite funciones de comparación personalizadas para cambiar el orden.
  • 03Ofrece lotes de escritura atómicos y snapshots temporales.
  • 04Permite recorrer los datos hacia adelante y hacia atrás.
  • 05Comprime los datos con Snappy de forma predeterminada y también admite Zstd.
  • 06Permite reemplazar la capa de interacción con el sistema operativo mediante una interfaz virtual.

Casos de uso

  • Integrar una caché o un índice local y rápido de clave-valor en una aplicación C++.
  • Almacenar datos ordenados que requieran consultas por rangos de claves.
  • Crear un motor de almacenamiento o un servidor personalizado sobre un almacén embebido.

Inicio rápido

  1. 1

    Clona el repositorio con sus submódulos

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

    Crea un directorio de compilación y configúralo con CMake

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

    Compila la biblioteca

    cmake --build .

Antes de usarlo

  • Solo un proceso (posiblemente con varios hilos) puede acceder a una base de datos concreta a la vez.
  • No es una base de datos SQL y no incluye compatibilidad con cliente-servidor, índices ni un modelo relacional.
  • El mantenimiento del repositorio es muy limitado; solo se revisan las correcciones de errores críticos y de fallos.

Temas

Preguntas frecuentes

¿Qué es leveldb?
Una biblioteca rápida de almacenamiento embebido de clave-valor de Google que mantiene las claves y los valores de tipo string ordenados. LevelDB es un almacén de clave-valor embebido escrito en C++ en Google. Asocia claves de cadenas de bytes arbitrarias con valores de cadenas de bytes y ordena los datos por clave, de modo que las aplicaciones pueden recorrer rangos hacia adelante o hacia atrás. Es una biblioteca que se enlaza con un proceso, no un servidor, y cada base de datos puede estar abierta por un solo proceso a la vez (que puede ser multihilo).
¿leveldb es gratuito? ¿Qué licencia tiene?
leveldb es open source bajo la licencia BSD-3-Clause. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿leveldb sigue mantenido?
Mantenimiento activo. El último commit de leveldb fue el 8 oct 2026.
¿Para qué puedo usar leveldb?
Integrar una caché o un índice local y rápido de clave-valor en una aplicación C++. Almacenar datos ordenados que requieran consultas por rangos de claves. Crear un motor de almacenamiento o un servidor personalizado sobre un almacén embebido.
¿Cómo se instala leveldb?
Clona el repositorio con sus submódulos: git clone --recurse-submodules https://github.com/google/leveldb.git Crea un directorio de compilación y configúralo con CMake: mkdir -p build && cd build cmake -DCMAKE_BUILD_TYPE=Release .. Compila la biblioteca: cmake --build .
¿Dónde consigo leveldb?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/google/leveldb

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados