Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

Optimistic multi-version concurrency control (MVCC) for main memory databases, written in Rust.

License

NotificationsYou must be signed in to change notification settings

penberg/tihku

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tihku is anwork-in-progress, open-source implementation of the Hekaton multi-version concurrency control (MVCC) written in Rust.The project aims to provide a foundational building block for implementing database management systems.

One of the projects using Tihku is an experimentallibSQL branch with MVCC that aims to implementBEGIN CONCURRENT with Tihku improve SQLite write concurrency.

Features

  • Main memory architecture, rows are accessed via an index
  • Optimistic multi-version concurrency control
  • Rust and C APIs

Experimental Evaluation

Single-threaded micro-benchmarks

OperationsThroughput
begin_tx,read, andcommit2.2M ops/second
begin_tx,update, andcommit2.2M ops/second
read12.9M ops/second
update6.2M ops/second

(Thecargo bench was run on a AMD Ryzen 9 3900XT 2.2 GHz CPU.)

Development

Run tests:

cargo test

Test coverage report:

cargo tarpaulin -o html

Run benchmarks:

cargo bench

Run benchmarks and generate flamegraphs:

echo -1 | sudo tee /proc/sys/kernel/perf_event_paranoidcargo bench --bench my_benchmark -- --profile-time=5

References

Larson et al.High-Performance Concurrency Control Mechanisms for Main-Memory Databases. VLDB '11

Paper errata: The visibility check in Table 2 is wrong and causes uncommitted delete to become visible to transactions (fixed incommit 6ca3773).

About

Optimistic multi-version concurrency control (MVCC) for main memory databases, written in Rust.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp