Skip to main content
FalkorDBLite is a self-contained Python interface to the FalkorDB graph database. It provides an embedded Redis server with the FalkorDB module that is automatically installed, configured, and managed when the bindings are used.

Key Features

  • Easy to Use - Built-in Redis server with FalkorDB module that is automatically installed, configured, and managed
  • Graph Database - Full support for FalkorDB graph operations using Cypher queries through a simple Python API
  • Flexible - Create a single server shared by multiple programs or multiple independent servers with graph capabilities
  • Compatible - Provides both Redis key-value operations and FalkorDB graph operations in a unified interface
  • Secure - Uses a secure default Redis configuration that is only accessible by the creating user on the local system
  • Persistent - Data persists between sessions when using the same database file

Requirements

  • Python 3.12 or higher

Installation

Install FalkorDBLite using pip:
The package will automatically install its dependencies, including:
  • redis>=4.5 - Redis Python client
  • psutil - Process and system utilities

macOS Runtime Requirement

Important: On macOS, the FalkorDB module requires the OpenMP runtime library (libomp). If you encounter an error like Library not loaded: /opt/homebrew/opt/libomp/lib/libomp.dylib, install it using Homebrew:

Getting Started

FalkorDBLite provides two main interfaces:
  1. FalkorDB Graph API - A graph database interface using Cypher queries
  2. Redis API - Traditional Redis key-value operations
The package includes both Redis and the FalkorDB module, automatically configured and managed.

Basic Graph Database Usage

Here’s a simple example of creating a graph database, adding nodes and relationships, and querying them using Cypher:

Complex Graph Example

Here’s a more complex example demonstrating graph relationships:

Using Redis Key-Value Operations

FalkorDBLite also supports traditional Redis operations:

Working with Multiple Graphs

You can work with multiple independent graphs in the same database:

Data Persistence

FalkorDB data persists between sessions when you use the same database file:

Use Cases

FalkorDBLite is ideal for:
  • Development and Testing - Quickly test graph database functionality without setting up a full server
  • Prototyping - Rapidly prototype graph-based applications
  • Educational Purposes - Learn graph databases and Cypher queries without infrastructure setup
  • Small-Scale Applications - Lightweight applications that need graph database capabilities
  • CI/CD Pipelines - Automated testing environments that require an embedded database

Production

For production environments, consider using:

Additional Resources

Getting Help

If you encounter issues with FalkorDBLite:
  1. Check the FalkorDBLite GitHub Issues
  2. Review the troubleshooting guide

Frequently Asked Questions

FalkorDBLite requires Python 3.12 or higher. The package automatically installs its dependencies including redis>=4.5 and psutil.
The FalkorDB module requires the OpenMP runtime library on macOS. Install it with Homebrew: brew install libomp. This resolves the ‘Library not loaded: libomp.dylib’ error.
Yes. FalkorDBLite is ideal for CI/CD because it requires no external server setup. Install with pip install falkordblite, create a temporary database, run tests, and the process cleans up automatically.
Call db.select_graph('name') for each graph. Each graph is independent within the same database instance. Use db.list_graphs() to see all available graphs.
No. FalkorDBLite is designed for development, testing, and prototyping. For production, use FalkorDB Cloud, Docker, or Kubernetes deployments with proper persistence and high availability.