Skip to main content

Python bindings for RayforceDB

Project description

High-Performance Lightweight Python ORM designed for RayforceDB

Documentation Tests Coverage Release Python Version

Python ORM for RayforceDB, a high-performance columnar database designed for analytics and data operations. Core is written in pure C with minimal overhead - combines columnar storage with SIMD vectorization for lightning-fast analytics on time-series and big data workloads.

Full Documentation: https://py.rayforcedb.com/

Features

  • Pythonic API - Chainable, fluent query syntax
  • High Performance - Minimal overhead between Python and RayforceDB runtime via C API
  • Lightweight - Core is less than 1 MB footprint
  • Active Development - Continuously expanding functionality

RayforcePy Benchmarks

Benchmarks run on: macOS M4 32GB, 100 groups, 20 runs (median), 5 warmup runs. H2OAI

Quick Start

>>> from datetime import time
>>> from rayforce import Table, Vector, Symbol, Time, F64
>>> from rayforce.types.table import Column

>>> quotes = Table.from_dict({
        "symbol": Vector(items=["AAPL", "AAPL", "AAPL", "GOOG", "GOOG", "GOOG"], ray_type=Symbol),
        "time": Vector(
            items=[
                time.fromisoformat("09:00:00.095"),
                time.fromisoformat("09:00:00.105"),
                time.fromisoformat("09:00:00.295"),
                time.fromisoformat("09:00:00.145"),
                time.fromisoformat("09:00:00.155"),
                time.fromisoformat("09:00:00.345"),
            ],
            ray_type=Time,
        ),
        "bid": Vector(items=[100.0, 101.0, 102.0, 200.0, 201.0, 202.0], ray_type=F64),
        "ask": Vector(items=[110.0, 111.0, 112.0, 210.0, 211.0, 212.0], ray_type=F64),
    })

>>> result = (
        quotes
        .select(
            max_bid=Column("bid").max(),
            min_bid=Column("bid").min(),
            avg_ask=Column("ask").mean(),
            records_count=Column("time").count(),
            first_time=Column("time").first(),
        )
        .where((Column("bid") >= 110) & (Column("ask") > 100))
        .by("symbol")
        .execute()
    )
>>> print(result)
┌────────┬─────────┬─────────┬─────────┬───────────────┬──────────────┐
 symbol  max_bid  min_bid  avg_ask  records_count  first_time   
├────────┼─────────┼─────────┼─────────┼───────────────┼──────────────┤
 GOOG    202.00   200.00   211.00   3              09:00:00.145 
├────────┴─────────┴─────────┴─────────┴───────────────┴──────────────┤
 1 rows (1 shown) 6 columns (6 shown)                                
└─────────────────────────────────────────────────────────────────────┘

Installation

Package is available on PyPI:

pip install rayforce-py

This installation also provides a command-line interface to access the native Rayforce runtime:

~ $ rayforce
Launching Rayforce...
  RayforceDB: 0.1 Dec  6 2025
  Documentation: https://rayforcedb.com/
  Github: https://github.com/RayforceDB/rayforce
 (+ 1 2)
3

Built with ❤️ for high-performance data processing | MIT Licenced | RayforceDB Team

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

rayforce_py-0.1.5-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

rayforce_py-0.1.5-cp314-cp314-macosx_11_0_arm64.whl (721.1 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

rayforce_py-0.1.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

rayforce_py-0.1.5-cp313-cp313-macosx_11_0_arm64.whl (721.1 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

rayforce_py-0.1.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

rayforce_py-0.1.5-cp312-cp312-macosx_11_0_arm64.whl (720.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

rayforce_py-0.1.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

rayforce_py-0.1.5-cp311-cp311-macosx_11_0_arm64.whl (720.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

Details for the file rayforce_py-0.1.5-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rayforce_py-0.1.5-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d04866545eac0c39f34330af1db3a48f41bafa1574ef9cd031763b97d199e29b
MD5 641e8f3bb9488aeaf9ad250f38fd0328
BLAKE2b-256 c5d7912965fc9a4fadc9a15e995dee85c763e99152863d4e5cc35c43e68c8642

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.1.5-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build-wheels.yml on RayforceDB/rayforce-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rayforce_py-0.1.5-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rayforce_py-0.1.5-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a4d31844d3f34872bbff31a52a92454df9ade0739e2a63cd9af3794bedcaa57b
MD5 dc3371eb869716b9814424094e2d0fab
BLAKE2b-256 2c40d19b9b40a3ce49c2263bf73e6321e96e7b52135ae3e84c619d1ee2345d84

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.1.5-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: build-wheels.yml on RayforceDB/rayforce-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rayforce_py-0.1.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rayforce_py-0.1.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dd5c1acf567585e77b1bcd87b5a128e73fc1e58df9c3e42682a97787c446a156
MD5 de6808becf39117c4cbf86bd5e58f830
BLAKE2b-256 16e56e78314566b3529e33d5268f9884b7b5760bc88af675daeecd5a36cc3af2

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.1.5-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build-wheels.yml on RayforceDB/rayforce-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rayforce_py-0.1.5-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rayforce_py-0.1.5-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b8e813af644db335c3e50cf9253fb4d2194a3f166adb5ef9568cd235fb51443c
MD5 fa3afe90826b82cfea991bab3f6db7f0
BLAKE2b-256 8c7c30dfe25004c3ae1a1146083b8c0f3a604095e9eabc947277a4a7cec2837b

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.1.5-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: build-wheels.yml on RayforceDB/rayforce-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rayforce_py-0.1.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rayforce_py-0.1.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a3d46aea8db7a47aa4cc9532b28505b3414149390c9e95cef4b80de24a26110c
MD5 cc5282689c1104b03b10252d2903b496
BLAKE2b-256 01621b2576650630250d68c89ab9528911ca566bfba328b7227686a3769e6534

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.1.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build-wheels.yml on RayforceDB/rayforce-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rayforce_py-0.1.5-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rayforce_py-0.1.5-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a3f598047b42f1b706bb324e6117e37f37ebbf78c5be51615e555bb0b8e86039
MD5 b769350420c4547545a54dd040ec56d6
BLAKE2b-256 00fc80d4d919674f1e8cddfc8fa0838a72aa52b97707dc7ce776859b405855ea

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.1.5-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: build-wheels.yml on RayforceDB/rayforce-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rayforce_py-0.1.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rayforce_py-0.1.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fb5bd7680537adc1f67662630cc3602316f4e07b8a4c5e9494bbdb656528c01f
MD5 376527fcfd847029cbe7cc63d3127fe1
BLAKE2b-256 5b08091109edc67f461267676a5c750e3871392bd35ee085db863394469dcf8b

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.1.5-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build-wheels.yml on RayforceDB/rayforce-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rayforce_py-0.1.5-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rayforce_py-0.1.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8e8acdb375caa83c4111531e104e85347fb3a48afeb0b820f7ea43f4f7f0f4dc
MD5 dfa0e1707fce7b1a7a6edd480fb0462a
BLAKE2b-256 62911823217332e98d7d7c7a5ee3e77da3e5525ff67b9108beee5e5843f9c528

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.1.5-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: build-wheels.yml on RayforceDB/rayforce-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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