GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - akumuli/Akumuli: Time-series database

This repository was archived by the owner on Nov 6, 2025. It is now read-only.
BranchesTags
Open more actions menu

Latest commit

 

History

2,362 Commits
2,362 Commits

Folders and files

NameName
Last commit message
Last commit date
CI
CI
 
 
akumulid
akumulid
 
 
cmake
cmake
 
 
conf
conf
 
 
docker
docker
 
 
functests
functests
 
 
fuzzers
fuzzers
 
 
include
include
 
 
libakumuli
libakumuli
 
 
perftests
perftests
 
 
scripts
scripts
 
 
unittests
unittests
 
 
.clang-format
.clang-format
 
 
.gitignore
.gitignore
 
 
.travis.yml
.travis.yml
 
 
CHANGELOG.md
CHANGELOG.md
 
 
CMakeLists.txt
CMakeLists.txt
 
 
CODE_OF_CONDUCT.md
CODE_OF_CONDUCT.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
doxygen.ini
doxygen.ini
 
 
format.sh
format.sh
 
 
prerequisites-osx.sh
prerequisites-osx.sh
 
 
prerequisites.sh
prerequisites.sh
 
 

Repository files navigation

README Build Status Coverity Scan Build Status

Akumuli is a time-series database for modern hardware. It can be used to capture, store and process time-series data in real-time. The word "akumuli" can be translated from Esperanto as "accumulate".

Features

  • Column-oriented storage.
  • Based on novel LSM and B+tree hybrid datastructure with multiversion concurrency control (no concurrency bugs, parallel writes, optimized for SSD and NVMe).
  • Supports both metrics and events.
  • Fast and effecient compression algorithm that outperforms 'Gorilla' time-series compression.
  • Crash safety and recovery.
  • Fast aggregation without pre-configured rollups or materialized views.
  • Many queries can be executed without decompressing the data.
  • Compressed in-memory storage for recent data.
  • Can be used as a server application or embedded library.
  • Simple API based on JSON and HTTP.
  • Fast range scans and joins, read speed doesn't depend on database cardinality.
  • Fast data ingestion:
    • 5.4M writes/sec on DigitalOcean droplet with 8-cores 32GB of RAM (using only 6 cores)
    • 4.6M writes/sec on DigitalOcean droplet with 8-cores 32GB of RAM (6 cores with enabled WAL)
    • 16.1M writes/sec on 32-core Intel Xeon E5-2680 v2 (c3.8xlarge EC2 instance).
  • Queries are executed lazily. Query results are produced as long as client reads them.
  • Compression algorithm and input parsers are fuzz-tested on every code change.
  • Grafana datasource plugin.
  • Fast and compact inverted index for time-series lookup.

Roadmap

Storage engine features Current version Future versions
Inserts In order Out of order
Updates - +
Deletes - +
MVCC + +
Compression + +
Tags + +
High-throughput ingestion + +
High cardinality + +
Crash recovery + +
Incremental backup - +
Clustering - +
Replication - +
ARM support + +
Windows support - +
Query language features Current version Future versions
Range scans + +
Merge series + +
Aggregate series + +
Merge & aggregate + +
Group-aggregate + +
Group-aggregate & merge + +
Join + +
Join & merge - +
Join & group-aggregate - +
Join & group-aggregate & merge - +
Filter by value + +
Filter & group-aggregate + +
Filter & join + +

Gettings Started

  • You can find documentation here
  • Installation & build instructions
  • Getting started guide
  • Writing data

Supported Platforms

Akumuli supports 64 and 32-bit Intel processors. It also works on 64 and 32-bit ARM processors but these architectures are not covered by continous integration.

Pre-built Debian/RPM packages for the following platforms are available via packagecloud:

  • AMD 64 Ubuntu 14.04
  • AMD 64 Ubuntu 16.04
  • AMD 64 Ubuntu 18.04
  • AMD 64 Debian Jessie
  • AMD 64 Debian Stretch
  • AMD 64 CentOS 7
  • ARM 64 Ubuntu 16.04
  • ARM 64 Ubuntu 18.04
  • ARM 64 CentOS 7

Docker image is availabe through Docker Hub.

Tools for monitoring

Akumuli supports OpenTSDB telnet-style API for writing. This means that many collectors works with it without any trouble, for instance netdata, collectd, and tcollector. Grafana datasource plugin is availabe as well. Akumuli can be used as a long-term storage for Prometheus using akumuli-prometheus-adapter.

Google group

About

Time-series database

akumuli.org

Topics

c-plus-plusdatabasemetricstime-seriestime-series-databasetsdb

Resources

Readme
Apache-2.0 license

Code of conduct

Code of conduct

Contributing

Contributing
Activity
Custom properties

Stars

838 stars

Watchers

1 watching

Forks

85 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.