LinDB

LinDB is a scalable, high performance, high availability distributed time series database.

Stars
2.75K
Forks
278
Open issues
7
Closed issues
167
Last release
8 months ago
Last commit
5 months ago
Watchers
2.75K
Total releases
10
Total commits
836
Open PRs
1
Closed PRs
792
Repo URL
Project Website
https://www.lindb.io/
Platform
License
apache-2.0
Category
Offers premium version?
NO
Proprietary?
NO
About

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.

Alternative Projects

Subscribe to Open Source Businees Newsletter

Twice a month we will interview people behind open source businesses. We will talk about how they are building a business on top of open source projects.

We'll never share your email with anyone else.