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-2.0.0a1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.6 MB view details)

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

rayforce_py-2.0.0a1-cp314-cp314-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

rayforce_py-2.0.0a1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.6 MB view details)

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

rayforce_py-2.0.0a1-cp313-cp313-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

rayforce_py-2.0.0a1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.6 MB view details)

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

rayforce_py-2.0.0a1-cp312-cp312-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

rayforce_py-2.0.0a1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (2.6 MB view details)

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

rayforce_py-2.0.0a1-cp311-cp311-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

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

File metadata

File hashes

Hashes for rayforce_py-2.0.0a1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f83a8339abe7ef6a39e38d5cf2f3e704d32dc184ae81c4946293e8b6f0916f49
MD5 93ae20959f832ded389d5e682e2ad743
BLAKE2b-256 b699c3c27219a931cb0204cc9a8ebf5ab614592194a0b12910a290a74c8bd0ae

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for rayforce_py-2.0.0a1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cb251da1f2ed03abb06edf12b241b38cde09fa961679f4aedb57c43e00e990fc
MD5 82cb6f50af8125c50c29c176b60790e4
BLAKE2b-256 a8806f7252bad64dbea1067d8d16ab7d60a1e564f44040ee9e601eb75a32d403

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-2.0.0a1-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-2.0.0a1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rayforce_py-2.0.0a1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c23bf5d4030a362865c7bfe8f6d43f83365628971d89cf1712ad6720a19b3e18
MD5 301f470aa5e333e622f25e3c4503ae07
BLAKE2b-256 c705b55e128f521a0a35fdc3e5b1f04a12de7a9fc73db704dab7d33c8c4f9476

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for rayforce_py-2.0.0a1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 efad756e4bd450f481496b43f74370eec84a61643a8ab1f8eb3df0d86ce5ff94
MD5 3d8c1227282e556e92a2731b8e9057c0
BLAKE2b-256 6ebc974b98fc6bd53ac09c5237564343cd2502ea0d0ba85adda06cd88cd19245

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-2.0.0a1-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-2.0.0a1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rayforce_py-2.0.0a1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 613c21546fc717901cf9038e12af6d0cc59a64849ee88cd4fc197d87c3dc3af2
MD5 dbaf1a4cf2d34901d09b83a6038e954b
BLAKE2b-256 ae865cb0f5ef0bf25a7d7fa6588aba7c61a855e771f7a735c944394455e8c329

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for rayforce_py-2.0.0a1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 896398f7c4b3dad32428629d69bcd96f191c2c503de76da2cfdbc66fe222e684
MD5 1b288c121d11f3b6edffe7194a230219
BLAKE2b-256 878db493291544af6f19fc4455b84b4f32b8f1054391cd6ef292d4c8faf2f9cb

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-2.0.0a1-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-2.0.0a1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for rayforce_py-2.0.0a1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8afdd27d53ce0d01ce826c0d7abc83bdbeb9ce8f70906272fc30c8e713a9e4d0
MD5 13341cfb5642e066ecb1a2175c02f802
BLAKE2b-256 c2d357cbadfe478b36df3a789b9b727c0823ac8a3bd65dbddadbd2b41f45f08a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for rayforce_py-2.0.0a1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d36ec24a63a918568f30a0ebf112a03d6ebd7a0e074fb7654f8420f9e2a0e922
MD5 f02539902a84698ba382cfff52b9a66b
BLAKE2b-256 7095f4609cd6b750ebfe5773f3dd610a5c4d576d8ecee6dcf0439f72688f23d1

See more details on using hashes here.

Provenance

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