Skip to content

ngaut/ddtxn

 
 

Repository files navigation

This is the code for Doppel, an in-memory key/value transactional database. WARNING: This is research code, and does not include durability or RPC. Use at your own risk.

Doppel's design is described in "Phase Reconciliation for Contended In-Memory Transactions", presented at OSDI 2014.

Get the code:

go get github.com/narula/dlog
go get github.com/narula/prof
go get github.com/narula/wfmutex
go get github.com/narula/ddtxn

To run the tests, use go test.

Clone the list-cpus repo and add it to your path:

git clone git@github.com:narula/list-cpus.git

Add $GOPATH/bin and the list-cpus repo to your PATH environment variable

Run a benchmark:

cd $GOPATH/src/github.com/narula/ddtxn/benchmarks
go install ./single
python bm.py --exp=single --rlock --ncores=N

About

Research code for Doppel, an in-memory key/value transactional store

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 83.6%
  • Python 16.4%