chrislusf / questdb

An open source SQL database designed to process time series data, faster

Home Page:https://questdb.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

QuestDB Logo

 

QuestDB community Slack channel Apache 2.0 licence QuestDB Docker images Azure pipeline status QuestDB on Apache Maven

QuestDB

QuestDB is a high-performance, open-source SQL database for applications in financial services, IoT, machine learning, DevOps and observability. It includes endpoints for PostgreSQL wire protocol, high-throughput schema-agnostic ingestion using InfluxDB Line Protocol, and a REST API for queries, bulk imports, and exports.

QuestDB implements ANSI SQL with native extensions for time-oriented language features. These extensions make it simple to correlate data from multiple sources using relational and time series joins. QuestDB achieves high performance from a column-oriented storage model, massively-parallelized vector execution, SIMD instructions, and various low-latency techniques. The entire codebase was built from the ground up in Java and C++, with no dependencies, and is 100% free from garbage collection.

Try QuestDB

We provide a live demo provisioned with the latest QuestDB release and a 1.6 billion row dataset with 10 years of NYC taxi trips to query.

To run QuestDB, Docker can be used to get started quickly:

docker run -p 9000:9000 -p 8812:8812 questdb/questdb

macOS users can use Homebrew:

brew install questdb
brew services start questdb

The QuestDB downloads page provides direct downloads for binaries and has details for other installation and deployment methods.

Connecting to QuestDB

You can interact with QuestDB using the following interfaces:

Performance figures

On a CPU with 6 memory channels, QuestDB can scan through 117GB of data per second. The following table shows the number operations per second, per thread:

Operation 64-bit double 32-bit int
Read 120 Million /s 240 Million /s
Write 240 Million /s 480 Million /s

The following table shows query execution time on a c5.metal instance using 16 of the 96 threads available:

Query Runtime
SELECT sum(double) FROM 1bn 0.061 secs
SELECT tag, sum(double) FROM 1bn 0.179 secs
SELECT tag, sum(double) FROM 1bn WHERE timestamp='2019' 0.05 secs

Documentation & resources

Contribute

We are always happy to have contributions to the project whether it is source code, documentation, bug reports, feature requests or feedback. To get started with contributing:

As a sign of our gratitude, we'll send contributors some of our QuestDB swag such as stickers and t-shirts! 🌟

A big thanks goes to the following wonderful people who have contributed to QuestDB: (emoji key):


clickingbuttons

πŸ’» πŸ€” πŸ““

ideoma

πŸ’» πŸ““ ⚠️

tonytamwk

πŸ’» πŸ““

sirinath

πŸ€”

igor-suhorukov

πŸ’» πŸ€”

mick2004

πŸ’» πŸ“¦

rawkode

πŸ’» πŸš‡

solidnerd

πŸ’» πŸš‡

solanav

πŸ’» πŸ“–

shantanoo-desai

πŸ“ πŸ’‘

alexprut

πŸ’» 🚧

lbowman

πŸ’» ⚠️

chankeypathak

πŸ“

upsidedownsmile

πŸ’»

Nagriar

πŸ’»

piotrrzysko

πŸ’» ⚠️

mpsq

πŸ’»

siddheshlatkar

πŸ’»

Yitaek

βœ… πŸ’‘

gabor-boros

βœ… πŸ’‘

kovid-r

βœ… πŸ’‘

TimBo93

πŸ› πŸ““

zikani03

πŸ’»

jaugsburger

πŸ’» 🚧

TheTanc

πŸ“† πŸ–‹ πŸ€”

davidgs

πŸ› πŸ–‹

kaishin

πŸ’» πŸ’‘

bluestreak01

πŸ’» 🚧 ⚠️

patrickSpaceSurfer

πŸ’» 🚧 ⚠️

chenrui333

πŸš‡

Ugbot

πŸ’¬ πŸ““ πŸ“’

bsmth

πŸ“– πŸ–‹

lepolac

πŸ’» πŸ”§

This project follows the all-contributors specification. Contributions of any kind welcome!

About

An open source SQL database designed to process time series data, faster

https://questdb.io

License:Apache License 2.0


Languages

Language:Java 83.1%Language:C++ 10.8%Language:C 3.9%Language:TypeScript 1.1%Language:SCSS 0.5%Language:JavaScript 0.4%Language:CMake 0.1%Language:Handlebars 0.0%Language:Shell 0.0%Language:HTML 0.0%Language:Rust 0.0%