LinDB is an open-source, Go-based distributed time series database for high performance, high availability and horizontal scalability, aimed at teams that collect, store and operate their own metrics and monitoring data.
What it is
LinDB sits in the Infrastructure & Operations / Monitoring & Observability category. It is written in Go and released under the Apache-2.0 licence, and it carries the topics distributed-database, cross-datacenter-native, timeseries, metrics, monitoring, high-performance and database. Core storage is paired with an admin web interface, and the project publishes its material in English, Simplified Chinese and Japanese. Source lives at github.com/lindb/lindb, with the project site at lindb.io serving as the entry point for the guide, quick start and design documents.
The facts provided do not name a specific product that LinDB replaces, so the gap it addresses is stated in its own terms: a time series database that must stay performant and available while scaling horizontally, including across datacenters. That combination is what the cross-datacenter-native topic points at, and it is the operational area the admin interface is built around. The Admin UI exposes an Overview, a Monitoring Dashboard, a Replication State view, a Data Explore view and an Explain view, which together cover cluster status, replication health and the inspection of stored searches rather than only raw storage.
Key capabilities
- Distributed time series storage for metrics and monitoring workloads, tagged with
cross-datacenter-native, distributed-database and timeseries.
- High performance, high availability and horizontal scalability stated as the project's three defining properties.
- Admin UI with a dedicated Replication State screen (
docs/images/replication_shards.png) for watching shard replication.
- Monitoring Dashboard (
docs/images/dashboard.png) and Overview (docs/images/overview.png) screens for cluster-level status.
- Data Explore (
docs/images/data_explore.png) and Explain (docs/images/data_search_explain.png) views for inspecting data searches and query plans.
- Build targets
make build for the LinDB core without the web console, make build-all for core plus frontend, and make test for the test suite.
- Docker images published automatically through the GitHub Actions workflows
docker-latest.yml and docker-release.yml.
- Static analysis enforced in CI with
gofmt, golint and goimports, with coverage reported through Codecov and API references on GoDoc.
Who uses it and how
- Platform and SRE teams that run metrics pipelines they host themselves and need a store that scales out rather than up.
- Operators with infrastructure spread over multiple datacenters, which the
cross-datacenter-native topic marks as a first-class concern.
- Teams that need visibility into replication health, using the Replication State view instead of inferring it from logs.
- Developers working from source on machines with Go >= 1.21, Make and Yarn, running the web interface in dev mode on localhost port 3000.
- Contributors submitting patches through GitHub Actions, where mismatches in
gofmt, golint or goimports fail the build.
Getting started
Build from source: clone the repository and run make build for the core alone or make build-all for core plus frontend, with Go >= 1.21, Make and Yarn installed. The README defers setup detail to the quick start guide at lindb.io/guide/get-started.html, and Docker images are produced by the project's own GitHub Actions workflows.
How it compares
The facts provided name no paid products that LinDB replaces and no similar tools in the same space, so no licence, hosting or cost-model comparison can be drawn from them. On the evidence available, LinDB stands alone in this registry as the described distributed time series database.
When to use it — and when not to
A self-hoster must operate a distributed database plus, for the full experience, a Node.js and Yarn frontend toolchain for the web console; the README is largely badges, build commands and UI screenshots, so operational detail such as sizing and backup practice has to come from the external guide rather than the repository front page. Teams that want a managed, zero-operations metrics backend, or that need extensive walkthroughs inside the README itself, should look elsewhere. The project is active — last push 2026-07-27 with 11 open issues — but licence, dataset and configuration specifics beyond Apache-2.0 are not covered by the facts here.
project readme (upstream, from github) — read inline

English | 简体中文 | 日本語
What is LinDB?
LinDB is an open-source Time Series Database which provides high performance, high availability and horizontal scalability.
Build
Prerequisites
To build LinDB from source you require the following on your system.
Get the code
git clone https://github.com/lindb/lindb.git
cd lindb
Build from source
To build only LinDB core.(without web console)
make build
To build both LinDB core and frontend.
make build-all
Test
make test
Access web interface(for developer)
Start the node.js app to view LinDB web interface in dev mode.
cd web
yarn install
yarn dev
You can access the LinDB web interface on your localhost port 3000
Architecture

Admin UI
Some admin ui snapshots.
Overview

Monitoring Dashboard

Replication State

Data Explore

Explain

Contributing
Contributions are welcomed and greatly appreciated. See CONTRIBUTING for details on submitting patches and the contribution workflow.
CI
Pull requests should be appropriately labeled, and linked to any relevant bug or feature tracking issues.
All pull requests will run through GITHUB-Actions. Community contributors should be able to see the outcome of this process by looking at the checks on their PR and fix the build errors.
Static Analysis
This project uses the following linters. Failure during the running of any of these tools results in a failed build. Generally, code must be adjusted to satisfy these tools.
- gofmt - Gofmt checks whether code was gofmt-ed. By default this tool runs with -s option to check for code simplification;
- golint - Golint differs from gofmt. Gofmt reformats Go source code, whereas golint prints out style mistakes;
- goimports - Goimports does everything that gofmt does. Additionally it checks unused imports;
- errcheck - Errcheck is a program for checking for unchecked errors in go programs. These unchecked errors can be critical bugs in some cases;
- gocyclo - Computes and checks the cyclomatic complexity of functions;
- maligned - Tool to detect Go structs that would take less memory if their fields were sorted;
- dupl - Tool for code clone detection;
- goconst - Finds repeated strings that could be replaced by a constant;
- gocritic - The most opinionated Go source code linter;
License
LinDB is under the Apache 2.0 license. See the LICENSE file for details.