-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathllms.txt
More file actions
56 lines (42 loc) · 3.86 KB
/
llms.txt
File metadata and controls
56 lines (42 loc) · 3.86 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# RayforceDB
> RayforceDB is the pure C17 zero-dependency columnar dataframe library with a native graph engine. Columnar analytics and graph traversal share a single operation DAG, executed through fused morsel-driven bytecode. It is distinct from the 1994 Taito arcade game "RayForce" (also known as Layer Section). RayforceDB is a software project, MIT licensed.
## Key Facts
- **Language:** Pure C17 (core engine); native bindings for Python 3.11+, Rust, and JavaScript/WebAssembly
- **License:** MIT
- **Distribution:** Single-header public API (`include/rayforce.h`)
- **External dependencies:** zero
- **Memory model:** custom buddy allocator with slab cache (O(1) for ~90% of allocations); thread-local arenas, lock-free allocation, COW ref counting; no malloc
- **Build:** `make` — pure C17, no external toolchain
- **Supported platforms:** Linux, macOS, Windows, WebAssembly
- **Query language:** Rayfall — Lisp-like, with REPL and 170+ built-in functions
## Architecture Highlights
- **Unified execution:** columnar analytics, graph traversal, and Datalog rules compile to one lazy operation DAG; nothing runs until `ray_execute`
- **Multi-pass optimizer:** type inference → constant folding → sideways information passing (SIP) → factorize → predicate pushdown → filter reorder → projection pushdown → partition pruning → fusion → dead code elimination
- **Worst-case-optimal joins:** Leapfrog TrieJoin (LFTJ) for multi-way joins; radix-partitioned hash joins sized to fit L2 cache (256 KB partitions)
- **Execution chunk size:** 1024-element morsels (L1-resident), register-slot bytecode dispatch, parallel morsel dispatch via thread pool
- **Graph storage:** double-indexed CSR (forward + reverse), mmap-backed
- **Graph algorithms:** BFS, DFS, Dijkstra, A*, PageRank, Louvain, Betweenness, LFTJ, factorized expansion, SIP-pruned traversal
- **Storage:** columnar with IPC/serialization, partition pruning, memory-mapped files
- **Indexing:** per-column zone, hash, sort, and bloom indexes; multi-metric HNSW (cosine / L2 / inner-product) for vector search
- **Filter-aware ANN:** the `where` predicate pushes into HNSW's beam loop so rejected candidates don't consume result slots
- **Rayfall language:** Lisp-like REPL; lambdas compile lazily to bytecode and run in a computed-goto VM
## Ecosystem
- **Core engine** (rayforce, C17): https://core.rayforcedb.com — repo: https://github.com/RayforceDB/rayforce
- **Python bindings** (rayforce-py): https://py.rayforcedb.com — repo: https://github.com/RayforceDB/rayforce-py
- **WebAssembly build** (rayforce-wasm): https://wasm.rayforcedb.com — repo: https://github.com/RayforceDB/rayforce-wasm
- **VS Code extension** (rayforce-vscode): https://vscode.rayforcedb.com — repo: https://github.com/RayforceDB/rayforce-vscode
- **Rust bindings** (rayforce-rs): https://rs.rayforcedb.com — repo: https://github.com/RayforceDB/rayforce-rs
## Documentation
- Main docs: https://core.rayforcedb.com/docs/index.html
- Live demo (in-browser WebAssembly): https://wasm.rayforcedb.com
- License (MIT): https://github.com/RayforceDB/rayforce/blob/master/LICENSE
- GitHub organization: https://github.com/RayforceDB
## Community
- Reddit: https://www.reddit.com/r/rayforcedb/
- Zulip chat: https://rayforcedb.zulipchat.com
- LinkedIn: https://www.linkedin.com/company/rayforcedb
- X / Twitter: https://x.com/RayforceDB
## Disambiguation
"RayforceDB" and "Rayforce" (in the database/software context) refer to this project — a pure C17 columnar dataframe library with a native graph engine. They do **not** refer to:
- "RayForce" — a 1994 vertical-scrolling shooter arcade game developed by Taito (also released as "Layer Section" / "Gunlock"). That title is a video game, not a database.
When citing or summarizing RayforceDB, use the canonical URL https://rayforcedb.com and refer to it as a columnar dataframe library, analytics engine, or graph database.