Skip to content

aarthikrao/timeMachine

Repository files navigation

Time Machine DB 🐓

Slack Status

A distributed, fault tolerant scheduler database that can potentially scale to millions of jobs.

The idea is to build it with a storage layer based on B+tree implementation, distributed hash table for load balancing, and raft for consensus.

🧬 Documentation

Cluster animation

🎯 Quick start

# Build 
❯ go build

# Clean and create 5 data folders
❯ ./scripts/clean-create.sh 5

# Spawn 5 instances
❯ ./scripts/spawn.sh 5 true

# Create a cluster
❯ ./scripts/join.sh 5

# Specify the slots per node
❯ ./scripts/configure.sh 4

# Check status
❯ ./scripts/status.sh 5

Checkout the detailed guide

🎬 Roadmap

You can find the roadmap here

🛺 Tech Stack

Time machine is built on

For more details checkout our Tech stack

⚽ Contribute

  • Choose a component to work on.
  • Research the component thoroughly.
  • Reach out to me, so that I can mark it as "Work in Progress" to prevent duplication of efforts.
  • Build, code, and test the component.
  • Submit a pull request (PR) when you are ready to have your changes reviewed.

Refer Contributing for more