Skip to main content

Rust Extensions for a Faster Neo4j Bolt Driver for Python

Project description

Rust Extensions for a Faster Neo4j Bolt Driver for Python

This project contains Rust extensions to speed up the official Python driver for Neo4j.

The exact speedup depends on the use-case but has been measured to be between 3x and 10x faster. Use-cases moving only few but big records out of the DBMS tend to benefit the most.

Installation

Adjust your dependencies (requirements.txt, pyproject.toml or similar) like so:

# remove:
# neo4j == X.Y.Z  # needs to be at least 5.14.1 for a matching Rust extension to exist
# add:
neo4j-rust-ext == X.Y.Z.*

I.e., install the same version of neo4j-rust-ext as you would install of neo4j (except for the last segment which is used for patches of this library).
That's it! You don't have to change your code but can use the driver as you normally would. This package will install the driver as its dependency and then inject itself in a place where the driver can find it and pick it up.

Requirements

For many operating systems and architectures, the pre-built wheels will work out of the box. If they don't, pip (or any other Python packaging front-end) will try to build the extension from source. Here's what you'll need for this:

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

neo4j_rust_ext-5.20.0.0.tar.gz (14.7 kB view hashes)

Uploaded Source

Built Distributions

neo4j_rust_ext-5.20.0.0-cp312-none-win_amd64.whl (1.6 MB view hashes)

Uploaded CPython 3.12 Windows x86-64

neo4j_rust_ext-5.20.0.0-cp312-none-win32.whl (1.7 MB view hashes)

Uploaded CPython 3.12 Windows x86

neo4j_rust_ext-5.20.0.0-cp312-cp312-musllinux_1_2_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.2+ x86-64

neo4j_rust_ext-5.20.0.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

neo4j_rust_ext-5.20.0.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARMv7l

neo4j_rust_ext-5.20.0.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

neo4j_rust_ext-5.20.0.0-cp312-cp312-macosx_11_0_arm64.whl (727.0 kB view hashes)

Uploaded CPython 3.12 macOS 11.0+ ARM64

neo4j_rust_ext-5.20.0.0-cp312-cp312-macosx_10_12_x86_64.whl (767.5 kB view hashes)

Uploaded CPython 3.12 macOS 10.12+ x86-64

neo4j_rust_ext-5.20.0.0-cp311-none-win_amd64.whl (1.6 MB view hashes)

Uploaded CPython 3.11 Windows x86-64

neo4j_rust_ext-5.20.0.0-cp311-none-win32.whl (1.7 MB view hashes)

Uploaded CPython 3.11 Windows x86

neo4j_rust_ext-5.20.0.0-cp311-cp311-musllinux_1_2_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.2+ x86-64

neo4j_rust_ext-5.20.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

neo4j_rust_ext-5.20.0.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARMv7l

neo4j_rust_ext-5.20.0.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

neo4j_rust_ext-5.20.0.0-cp311-cp311-macosx_11_0_arm64.whl (722.9 kB view hashes)

Uploaded CPython 3.11 macOS 11.0+ ARM64

neo4j_rust_ext-5.20.0.0-cp311-cp311-macosx_10_12_x86_64.whl (762.2 kB view hashes)

Uploaded CPython 3.11 macOS 10.12+ x86-64

neo4j_rust_ext-5.20.0.0-cp310-none-win_amd64.whl (1.6 MB view hashes)

Uploaded CPython 3.10 Windows x86-64

neo4j_rust_ext-5.20.0.0-cp310-none-win32.whl (1.7 MB view hashes)

Uploaded CPython 3.10 Windows x86

neo4j_rust_ext-5.20.0.0-cp310-cp310-musllinux_1_2_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.2+ x86-64

neo4j_rust_ext-5.20.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

neo4j_rust_ext-5.20.0.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARMv7l

neo4j_rust_ext-5.20.0.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

neo4j_rust_ext-5.20.0.0-cp310-cp310-macosx_11_0_arm64.whl (724.7 kB view hashes)

Uploaded CPython 3.10 macOS 11.0+ ARM64

neo4j_rust_ext-5.20.0.0-cp310-cp310-macosx_10_12_x86_64.whl (762.0 kB view hashes)

Uploaded CPython 3.10 macOS 10.12+ x86-64

neo4j_rust_ext-5.20.0.0-cp39-none-win_amd64.whl (1.6 MB view hashes)

Uploaded CPython 3.9 Windows x86-64

neo4j_rust_ext-5.20.0.0-cp39-none-win32.whl (1.7 MB view hashes)

Uploaded CPython 3.9 Windows x86

neo4j_rust_ext-5.20.0.0-cp39-cp39-musllinux_1_2_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.2+ x86-64

neo4j_rust_ext-5.20.0.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

neo4j_rust_ext-5.20.0.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARMv7l

neo4j_rust_ext-5.20.0.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

neo4j_rust_ext-5.20.0.0-cp39-cp39-macosx_11_0_arm64.whl (722.2 kB view hashes)

Uploaded CPython 3.9 macOS 11.0+ ARM64

neo4j_rust_ext-5.20.0.0-cp39-cp39-macosx_10_12_x86_64.whl (762.4 kB view hashes)

Uploaded CPython 3.9 macOS 10.12+ x86-64

neo4j_rust_ext-5.20.0.0-cp38-none-win_amd64.whl (1.6 MB view hashes)

Uploaded CPython 3.8 Windows x86-64

neo4j_rust_ext-5.20.0.0-cp38-none-win32.whl (1.7 MB view hashes)

Uploaded CPython 3.8 Windows x86

neo4j_rust_ext-5.20.0.0-cp38-cp38-musllinux_1_2_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.8 musllinux: musl 1.2+ x86-64

neo4j_rust_ext-5.20.0.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

neo4j_rust_ext-5.20.0.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARMv7l

neo4j_rust_ext-5.20.0.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

neo4j_rust_ext-5.20.0.0-cp38-cp38-macosx_11_0_arm64.whl (725.5 kB view hashes)

Uploaded CPython 3.8 macOS 11.0+ ARM64

neo4j_rust_ext-5.20.0.0-cp38-cp38-macosx_10_12_x86_64.whl (764.2 kB view hashes)

Uploaded CPython 3.8 macOS 10.12+ x86-64

neo4j_rust_ext-5.20.0.0-cp37-none-win_amd64.whl (1.6 MB view hashes)

Uploaded CPython 3.7 Windows x86-64

neo4j_rust_ext-5.20.0.0-cp37-none-win32.whl (1.7 MB view hashes)

Uploaded CPython 3.7 Windows x86

neo4j_rust_ext-5.20.0.0-cp37-cp37m-musllinux_1_2_x86_64.whl (1.4 MB view hashes)

Uploaded CPython 3.7m musllinux: musl 1.2+ x86-64

neo4j_rust_ext-5.20.0.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

neo4j_rust_ext-5.20.0.0-cp37-cp37m-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.1 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARMv7l

neo4j_rust_ext-5.20.0.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view hashes)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARM64

neo4j_rust_ext-5.20.0.0-cp37-cp37m-macosx_11_0_arm64.whl (723.5 kB view hashes)

Uploaded CPython 3.7m macOS 11.0+ ARM64

neo4j_rust_ext-5.20.0.0-cp37-cp37m-macosx_10_12_x86_64.whl (764.5 kB view hashes)

Uploaded CPython 3.7m macOS 10.12+ x86-64

Supported by

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