Skip to content
@dborchard

Database Systems Engineering

single node @dborchard → multi-node @dsorchard → multi-core @csorchard

🌱 The Foundation

“What I cannot create, I do not understand” - Richard Feynman

Read More

Core Database Components

┌───────┐  ┌───────┐  ┌───────┐
│       │  │       │  │       │
│Parse  ├─►│Rewrite├─►│Binder ├──┐   ┌───────┐  ┌───────┐  ┌──────┐    ┌───────┐   ┌───────┐
│       │  │       │  │       │  │   │ RBO   │  │       │  │      │    │ Txn   │   │ Col   │
└───────┘  └───────┘  └───────┘  ├──►│  +    ├─►│ Exec  ├─►│Run   ├───►│  +    |──►| LSM   │
                                 │   │ CBO   │  │Engine │  │time  │    │ WAL   │   │       │
                      ┌───────┐  │   └───────┘  └───────┘  └──────┘    └───────┘   └───────┘
                      │Data   │  │
                      │Frame  ├──┘
                      │Builder│
                      └───────┘

Misc Database Components

🌿 The Plant

“A complex system that works is invariably found to have evolved from a simple system that worked...” - John Gall

Read More

Core Modules [Being Shrunk]

Database Shrunk [By me]

Planning to Shrink

Educational Database [TODO]

Hobby Database [TODO]

🌳 The Tree

"The best time to plant a tree was 20 years ago. The second best time is now." - Chinese Proverb

Read More

Mature Storage Engines [Read/Change]

  • Badger: WiscKey Paper, WSI transaction

Mature Databases [Read]

Small Codebase Database [Read]

  • HaloDB: InMemory, KV, Log Structure, Bitcask
  • OHC: Cache, OffHeap, GC, Big Cache
  • LevelDB: Embedded LSM Tree
  • StormDB: Embedded DB similar to HaloDB
  • FrostDB: Push Based Exec, Arrow, Parquet, RBO, Parser, LSM

Mature Database not written in Go [TODO]

Misc [Read]

💧 The Resources

"You don't understand anything until you learn it more than one way." – Marvin Minsky

Read More

Books in Pipeline [Reading]

Books on DB Introduction [Read]

Books on DB Introduction [TODO]

Database Papers [Read]

👨‍🌾 Cultivating Knowledge

"If you can't explain it simply, you don't understand it well enough." - Albert Einstein

Read More

Database

Misc

🥭 The Fruit

"It always seems impossible until it's done." - Nelson Mandela

Read More

Database Work

Published Materials

Pinned Loading

  1. tiny-db tiny-db Public

    Tiny Database: Query Engine, Storage Engine, Calcite, ANTLR

    Java 16 5

  2. tiny_dataframe tiny_dataframe Public

    Tiny Dataframe built using Arrow and Parquet

    Go 1

  3. colexec-db colexec-db Public

    An educational vectorized execution engine

    Go

  4. tiny-sql-rewriter tiny-sql-rewriter Public

    Tiny SQL rewriter based on SOAR

    Go

  5. tiny-txn tiny-txn Public

    Serializable Snapshot Isolation Transaction

    Go 1

  6. lsm-tree lsm-tree Public

    Forked from hengfeiyang/lsmdb

    LSM Tree demo project

    Go

Repositories

Showing 10 of 72 repositories
  • .github Public
    dborchard/.github’s past year of commit activity
    0 0 0 0 Updated Jun 15, 2024
  • mo_join Public
    dborchard/mo_join’s past year of commit activity
    Go 0 0 0 0 Updated Jun 13, 2024
  • tiny-txn Public

    Serializable Snapshot Isolation Transaction

    dborchard/tiny-txn’s past year of commit activity
    Go 1 0 0 0 Updated Jun 13, 2024
  • isolation_levels Public

    🚫 WIP: Database Isolation Levels Implementation

    dborchard/isolation_levels’s past year of commit activity
    Go 0 0 0 0 Updated Jun 8, 2024
  • hermitage Public Forked from ept/hermitage

    What are the differences between the transaction isolation levels in databases? This is a suite of test cases which differentiate isolation levels.

    dborchard/hermitage’s past year of commit activity
    1 181 0 0 Updated Jun 6, 2024
  • cometkv Public
    dborchard/cometkv’s past year of commit activity
    Go 0 0 0 0 Updated May 26, 2024
  • awesome-dbdev Public Forked from huachaohuang/awesome-dbdev

    Awesome materials about database development.

    dborchard/awesome-dbdev’s past year of commit activity
    0 69 0 0 Updated May 22, 2024
  • badger Public Forked from dgraph-io/badger

    Fast key-value DB in Go.

    dborchard/badger’s past year of commit activity
    Go 0 Apache-2.0 1,219 0 0 Updated Apr 20, 2024
  • go-ycsb Public Forked from pingcap/go-ycsb

    A Go port of Yahoo! Cloud Serving Benchmark (YCSB)

    dborchard/go-ycsb’s past year of commit activity
    Go 0 Apache-2.0 279 0 0 Updated Apr 20, 2024
  • joins_impl Public

    🚫 WIP: Implementing Join Algorithms on top of Spark Execution Engine

    dborchard/joins_impl’s past year of commit activity
    Java 0 0 0 0 Updated Mar 31, 2024

Top languages

Loading…

Most used topics

Loading…