Skip to main content

Python bindings for RayforceDB

Project description

High-Performance Lightweight Python ORM designed for RayforceDB

Documentation 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, convenient, intuitive and fluent query syntax
  • High Performance - One of the fastest solutions available, minimal overhead between Python and RayforceDB runtime via C API
  • Lightweight - Core is less than 1 MB footprint
  • 0 dependencies - Library operates without dependencies - pure Python and C
  • Rapid 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, Column, Vector, Symbol, Time, F64

>>> quotes = Table({
        "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 Licensed | 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.5.8-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.5.8-cp314-cp314-macosx_11_0_arm64.whl (867.3 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

rayforce_py-0.5.8-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.5.8-cp313-cp313-macosx_11_0_arm64.whl (867.3 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

rayforce_py-0.5.8-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.5.8-cp312-cp312-macosx_11_0_arm64.whl (867.0 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

rayforce_py-0.5.8-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.5.8-cp311-cp311-macosx_11_0_arm64.whl (866.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

Details for the file rayforce_py-0.5.8-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.5.8-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2501467d5e3ddacf66f7073a65067ce13167efbe824a7485daa35543703d285d
MD5 e93fb94007dbd2f9cfdaeb0a5edec5e9
BLAKE2b-256 3b0cefe9ced0e4587a4e2570429c701df2220aac31a16f0623543b75f0a1c1d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.5.8-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.5.8-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rayforce_py-0.5.8-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b0992972d36fc4ce5461f149e247bb0a396e3371c8e7c5f824fca2d5e153cf9c
MD5 895393019c90c9e9021c1be55b4667ff
BLAKE2b-256 4b06856320b90ca7ab733e0e0a0b0659bb608a2dde44a73c7bca93d0d5398faf

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.5.8-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.5.8-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.5.8-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e35892a8d72841f836dbf86d316108be6277fd837cf32194abde7cf576f272e2
MD5 2aba3dbab88edcc522d403a022341e9a
BLAKE2b-256 72dc06c4c153bf7671234a889251b8cec7860c97b83de74ceadc4c9873d45f5e

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.5.8-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.5.8-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rayforce_py-0.5.8-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3873b5963e67b53b63cf6ec953b99c08d4ef88812e85e3a8c2609615d6a5cc15
MD5 1a0ae8ff835126d83d7ee0b5c83824b9
BLAKE2b-256 f86009b2015e2f4e2af4792c84a6ae690b2dceda4468e2e8abab60115be02283

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.5.8-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.5.8-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.5.8-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 22668dac341bc2cca32f83bb86d00bff71f0983efabf2e1d0d7bd8875c5a1c63
MD5 85b166ff874ae16834ce56cc1334284b
BLAKE2b-256 7cf31fd37926f2cad819df782378d2bd0c17b713b0a8df2c552f0533a9978a04

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.5.8-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.5.8-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rayforce_py-0.5.8-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7c47cf841e5f6c8d6b45253c1463979e257972443a91e04d3021e7b6455b4dc0
MD5 2fe51060c99469865562714a93f6a277
BLAKE2b-256 f2ffe08b92255f00591e07188538a54c8ea885bcce51b74553e9c0f4d3235cde

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.5.8-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.5.8-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.5.8-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2a489a3a173f58db2be80b1011c1f9e7b0c5d971fc3918e01131dd5731238f29
MD5 4ecc52080d82feb1e8719669f852d852
BLAKE2b-256 68941c7927b69101fba11b6e59d26cf04a85fa112a2755edc53a1546c14e2f9e

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.5.8-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.5.8-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for rayforce_py-0.5.8-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dc02d99cd44b1ee9a5dd4cf3500d5eb5b6056a154a3ba7b6751e9c63b518883c
MD5 2d57b8aaec6c4dc933433582a5ae4b2a
BLAKE2b-256 9fe874eca90f52bd3dbf7f5830e2f29e2b5a7417c24b3ae1a2cbc210ab4e830f

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-0.5.8-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