clockworklabs / clockworklabs/SpacetimeDB

Feature Request: Allow column and row execution engines

Open
#4,503 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Rust
Stars
25.2k
Forks
1.1k
Avg merge
2d 7h
Merged PRs (30d)
46

Description

This is inspired by DuckDB in which rows, not columns, are the primary thing operated over.
By allowing to specify what the table interaction model is, we would also get lightning speed for cross-row aggregation and other such benefits.
Because the entire project is aimed at fast response time and allowing for massive amounts of requests per instance,
this would enable new usecases/improve those massively.

It is basically summed up as: bring the benefits of SpacetimeDB over SQLite to DuckDB, but inside SpacetimeDB.

And while at it, allow tables of both formats.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files, tests, or entry points. Start by mapping how SpacetimeDB currently executes table interactions and compare the requested row-oriented and column-oriented models with the DuckDB and SQLite approaches mentioned. Done would require a defined way to choose or combine both table formats, along with a concrete scope and validation plan.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust, sqlite
Domain
databases, performance
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.