/incubator-horaedb

Apache HoraeDB (incubating) is a high-performance, distributed, cloud native time-series database.

Primary LanguageRustApache License 2.0Apache-2.0

HoraeDB

License CI OpenIssue HoraeDB Docker HoraeMeta Docker

中文

Apache HoraeDB (incubating) is a high-performance, distributed, cloud native time-series database.

Important

Apache HoraeDB (incubating) is an effort undergoing incubation at the Apache Software Foundation (ASF), sponsored by the Apache Incubator PMC.

Please read the DISCLAIMER and a full explanation of "incubating".

Documentation

Quick Start

Run with Docker

Run HoraeDB standalone Server

docker run -d --name horaedb-server \
  -p 8831:8831 \
  -p 3307:3307 \
  -p 5440:5440 \
  ghcr.io/apache/horaedb-server:nightly-20231222-f57b3827

Run HoraeDB cluster with two horaedb-server node and one horaemeta-server node.

docker compose -f docker/docker-compose.yaml up

Run from source code

See details here.

Create Table and Write/Read data

Create Table.

curl --location --request POST 'http://127.0.0.1:5440/sql' \
-d '
CREATE TABLE `demo` (
    `name` string TAG,
    `value` double NOT NULL,
    `t` timestamp NOT NULL,
    timestamp KEY (t))
ENGINE=Analytic
  with
(enable_ttl="false")
'

Write data with SQL.

curl --location --request POST 'http://127.0.0.1:5440/sql' \
-d '
INSERT INTO demo (t, name, value)
    VALUES (1702224000000, "horaedb", 100)
'

Read data with SQL.

curl --location --request POST 'http://127.0.0.1:5440/sql' \
-d '
SELECT * FROM `demo`
'

Drop table.

curl --location --request POST 'http://127.0.0.1:5440/sql' \
-d '
Drop TABLE `demo`
'

Community

Thrive together in Apache HoraeDB (incubating) community with users and developers from all around the world.

Read our Contributing Guide and make your first contribution!

Acknowledgment

When develop we benefit a lot from several other open source projects, such as influxdb_iox, tikv etc, thanks for their awesome work.

License

Apache License 2.0