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.0b1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (4.1 MB view details)

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

rayforce_py-2.0.0b1-cp314-cp314-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

rayforce_py-2.0.0b1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (4.1 MB view details)

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

rayforce_py-2.0.0b1-cp313-cp313-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

rayforce_py-2.0.0b1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (4.1 MB view details)

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

rayforce_py-2.0.0b1-cp312-cp312-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

rayforce_py-2.0.0b1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (4.1 MB view details)

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

rayforce_py-2.0.0b1-cp311-cp311-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

Details for the file rayforce_py-2.0.0b1-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.0b1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 02bebc81bc318e139208469f352e5d737230b5688a2676a131bd860dff2ee0e7
MD5 12cb49944b044cb75d01afcbaf995f77
BLAKE2b-256 de84636aa09761044365e94b1292a0fa9fa9e5993eb69dd24f60d2a70dace973

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for rayforce_py-2.0.0b1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a4118c460777ff118e0e807452a7721a5e00f809ddc215fc70031d4a29b1fce8
MD5 a922ec3067b0a82afacd4c7054d4f85f
BLAKE2b-256 3181e978bded1fc0ae47de288f8387e550ebc3a623e56a5a6e5161cd7ec880b0

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-2.0.0b1-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.0b1-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.0b1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c1d964d65ec775e0685ddae1ee5e281ef57bc7c1ed8347c8b2bc8a2596117577
MD5 18672e1856719e8e782db03a26c65e91
BLAKE2b-256 0d93e98512d13402d272e38538a5b170537755308453e2266c6430f2332646bb

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for rayforce_py-2.0.0b1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2a88f2fc70cea5a91230d506e5d0e2de2ec383f9605600eaa04c733feb239e88
MD5 b9d0c8beb365b8644d4b9116fb6284da
BLAKE2b-256 c386c5d4812ed6ad59bd8e47121af481d6c47e6ca87cf41278e6bd300c2af8c4

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-2.0.0b1-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.0b1-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.0b1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 22e7273db11c28627d7047431355d6cf6dae89990e0cac647a3af74b0bfbfb99
MD5 acc3a64f0e904b9f2bc5288cd38da34a
BLAKE2b-256 e2c35c42c4a28b2f1e5638bf5fdc37bae3e332ad2a3834487680d9b3c15dd644

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for rayforce_py-2.0.0b1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 851936ddf90910400f3f6e43e7423776698533bfe114252132a1218f79eea005
MD5 84903ae17a29f836932729d7af44d3bf
BLAKE2b-256 4374fb01b6f20296990d01076be19a283f04cb78fb2033c3b3afcee4cd7de54e

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforce_py-2.0.0b1-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.0b1-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.0b1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9a0e822c0aac669eaa6238126dc2d4898ef9da20e67485395ba259b841bc9064
MD5 fdbba6d40b81c0683ed3a93831ae6c87
BLAKE2b-256 a727159a27bdf33ba1251e25639b09ab58626cf3d24abd371a45db9f5de5e301

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for rayforce_py-2.0.0b1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 56742567acd800cf8b8a2260b333dfa3140b5ac0eca67e29054585afbf276a61
MD5 fb5d3c48fd606b2802365c38af729312
BLAKE2b-256 ba17930ff561363eacddf0049e4f56b31d44d497aadece223fe7b7b0d8e98f20

See more details on using hashes here.

Provenance

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