Skip to main content

Python client for interacting with FalkorDB database

Project description

license Release PyPI version Codecov Forum Discord

falkordb-py

Try Free

FalkorDB Python client

see docs

Installation

pip install FalkorDB

Usage

Run FalkorDB instance

Docker:

docker run --rm -p 6379:6379 falkordb/falkordb

Or use FalkorDB Cloud

Synchronous Example

from falkordb import FalkorDB

# Connect to FalkorDB
db = FalkorDB(host='localhost', port=6379)

# Select the social graph
g = db.select_graph('social')

# Create 100 nodes and return a handful
nodes = g.query('UNWIND range(0, 100) AS i CREATE (n {v:1}) RETURN n LIMIT 10').result_set
for n in nodes:
    print(n)

# Read-only query the graph for the first 10 nodes
nodes = g.ro_query('MATCH (n) RETURN n LIMIT 10').result_set

# Copy the Graph
copy_graph = g.copy('social_copy')

# Delete the Graph
g.delete()

Asynchronous Example

import asyncio
from falkordb.asyncio import FalkorDB
from redis.asyncio import BlockingConnectionPool

async def main():

    # Connect to FalkorDB
    pool = BlockingConnectionPool(max_connections=16, timeout=None, decode_responses=True)
    db = FalkorDB(connection_pool=pool)
    
    # Select the social graph
    g = db.select_graph('social')
    
    # Execute query asynchronously
    result = await g.query('UNWIND range(0, 100) AS i CREATE (n {v:1}) RETURN n LIMIT 10')
    
    # Process results
    for n in result.result_set:
        print(n)
    
    # Run multiple queries concurrently
    tasks = [
        g.query('MATCH (n) WHERE n.v = 1 RETURN count(n) AS count'),
        g.query('CREATE (p:Person {name: "Alice"}) RETURN p'),
        g.query('CREATE (p:Person {name: "Bob"}) RETURN p')
    ]
    
    results = await asyncio.gather(*tasks)
    
    # Process concurrent results
    print(f"Node count: {results[0].result_set[0][0]}")
    print(f"Created Alice: {results[1].result_set[0][0]}")
    print(f"Created Bob: {results[2].result_set[0][0]}")
    
    # Close the connection when done
    await pool.aclose()

# Run the async example
if __name__ == "__main__":
    asyncio.run(main())

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

falkordb-1.6.1.tar.gz (103.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

falkordb-1.6.1-py3-none-any.whl (37.8 kB view details)

Uploaded Python 3

File details

Details for the file falkordb-1.6.1.tar.gz.

File metadata

  • Download URL: falkordb-1.6.1.tar.gz
  • Upload date:
  • Size: 103.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for falkordb-1.6.1.tar.gz
Algorithm Hash digest
SHA256 bbef448a0b43e00ff3062bd6201368618d7b36e969d16ba71e8b8e3fa90873d4
MD5 5e133d7b10783228d9c8050f7552af60
BLAKE2b-256 c83a58da510e5800a5cdbf9591111e4287cbf68b475bf074db12a94e5db8bcea

See more details on using hashes here.

File details

Details for the file falkordb-1.6.1-py3-none-any.whl.

File metadata

  • Download URL: falkordb-1.6.1-py3-none-any.whl
  • Upload date:
  • Size: 37.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for falkordb-1.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cf51caeb433c04db303de5967a0c2590675fcc0354e80997870b1e0497d30c34
MD5 81d462c636b14221451e3624efb57b66
BLAKE2b-256 90021cf9cef72228ca2b2776b4ed0cb2645298ddcc57c1fe2c545cd46bc11eae

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page