{"id":13699383,"url":"https://github.com/SiriDB/siridb-server","last_synced_at":"2025-05-04T16:33:49.451Z","repository":{"id":13830999,"uuid":"55093657","full_name":"SiriDB/siridb-server","owner":"SiriDB","description":"SiriDB is a highly-scalable, robust and super fast time series database. Build from the ground up SiriDB uses a unique mechanism to operate without a global index and allows server resources to be added on the fly. SiriDB's unique query language includes dynamic grouping of time series for easy analysis over large amounts of time series.","archived":false,"fork":false,"pushed_at":"2024-02-29T20:25:08.000Z","size":10887,"stargazers_count":498,"open_issues_count":5,"forks_count":48,"subscribers_count":36,"default_branch":"master","last_synced_at":"2024-08-03T11:01:16.968Z","etag":null,"topics":["database","siridb","siridb-server","ticker-data","time-series","timeseries"],"latest_commit_sha":null,"homepage":"https://siridb.com","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SiriDB.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"cesbit"}},"created_at":"2016-03-30T19:58:40.000Z","updated_at":"2024-07-10T16:38:48.000Z","dependencies_parsed_at":"2023-01-11T20:21:22.005Z","dependency_job_id":"aff2ace7-5a93-43d1-abd2-4109bf18ba0b","html_url":"https://github.com/SiriDB/siridb-server","commit_stats":null,"previous_names":["transceptor-technology/siridb-server"],"tags_count":63,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SiriDB%2Fsiridb-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SiriDB%2Fsiridb-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SiriDB%2Fsiridb-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SiriDB%2Fsiridb-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SiriDB","download_url":"https://codeload.github.com/SiriDB/siridb-server/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224398824,"owners_count":17304661,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["database","siridb","siridb-server","ticker-data","time-series","timeseries"],"created_at":"2024-08-02T20:00:31.873Z","updated_at":"2024-11-13T05:30:48.004Z","avatar_url":"https://github.com/SiriDB.png","language":"C","funding_links":["https://github.com/sponsors/cesbit"],"categories":["C"],"sub_categories":[],"readme":"[![CI](https://github.com/SiriDB/siridb-server/workflows/CI/badge.svg)](https://github.com/SiriDB/siridb-server/actions)\n[![Release Version](https://img.shields.io/github/release/SiriDB/siridb-server)](https://github.com/SiriDB/siridb-server/releases)\n\nSiriDB Server\n=============\nSiriDB is a highly-scalable, robust and super fast time series database.\n\n---------------------------------------\n  * [Installation](#installation)\n    * [Ubuntu](#ubuntu)\n    * [Compile from source](#compile-from-source)\n      * [Linux](#linux)\n      * [OSX](#osx)\n      * [Docker](#docker)\n      * [Configuration](#configuration)\n    * [Build Debian package](#build-debian-package)\n    * [Run integration tests](#run-integration-tests)\n  * [Create or expand a database](#create-or-expand-a-database)\n  * [Using SiriDB](#using-siridb)\n    * [SiriDB Connectors](#siridb-connectors)\n    * [SiriDB HTTP](#siridb-http)\n    * [SiriDB Prompt](#siridb-prompt)\n    * [Grafana](#grafana)\n  * [API/Query language](#query-language)\n\n---------------------------------------\n\n## Installation\n### Ubuntu\nFor Ubuntu we have a deb package available which can be downloaded [here](https://github.com/SiriDB/siridb-server/releases/latest).\n\nNote: SiriDB requires *libexpat1*, *libuv1*, *libpcre2-8-0* and *libcleri0* these libraries can be easily installed using apt:\n```\napt install libexpat1 libuv1 libpcre2-8-0 libcleri0\n```\n\n\u003eLibrary `libcleri0` is available from Ubuntu 18.04, for older versions a deb package can be found here:\n\u003ehttps://github.com/cesbit/libcleri/releases/latest\n\nThe .deb package installs a configuration file at `/etc/siridb/siridb.conf`. You might want to view or change this file before starting SiriDB.\n\n### Compile from source\n\u003eFrom version 2.0.19 libcleri is not included as part of this source anymore\n\u003eand needs to be installed separately. libcleri can be found here:\n\u003e[https://github.com/cesbit/libcleri](https://github.com/cesbit/libcleri)\n\u003eor can be installed using `apt`.\n\n#### Linux\nInstall the following requirements: (Ubuntu 18.04)\n```\nsudo apt install libcleri-dev\nsudo apt install libpcre2-dev\nsudo apt install libuv1-dev\nsudo apt install libyajl-dev\nsudo apt install uuid-dev\n```\n\nCompile (replace Release with Debug for a debug build):\n```\ncd ./Release\nmake clean\nmake test\nmake\n```\n\nInstall\n```\nsudo make install\n```\n\n#### OSX\n\u003eMake sure [libcleri](https://github.com/cesbit/libcleri) is installed!\n\nInstall the following requirements:\n```\nbrew install pcre2\nbrew install libuv\nbrew install yajl\nbrew install ossp-uuid\n```\nCompile (replace Release with Debug for a debug build):\n```\ncd ./Release\nexport CFLAGS=\"-I/usr/local/include\"\nexport LDFLAGS=\"-L/usr/local/lib\"\nmake clean\nmake test\nmake\n```\n\nInstall\n```\nsudo make install\n```\n\n#### Docker\n\n```bash\ndocker run \\\n    -d \\\n    -p 9000:9000 \\\n    -p 9080:9080 \\\n    -p 8080:8080 \\\n    -v ~/siridb-data:/var/lib/siridb \\\n    ghcr.io/siridb/siridb-server:latest    \n```\n\n#### Configuration\nSiriDB accepts a configuration file or environment variable as configuration. By default SiriDB will search for the configuration file in `/etc/siridb/siridb.conf` but alternatively you can specify a custom path by using the `-c/--config` argument or use environment variable.\n\nAn example configuration file can be found here:\n[https://github.com/SiriDB/siridb-server/blob/master/siridb.conf](https://github.com/SiriDB/siridb-server/blob/master/siridb.conf)\n\n### Build Debian package:\n\nInstall required packages (*autopkgtest is required for running the tests*)\n```\napt-get install devscripts lintian help2man autopkgtest\n```\n\nCreate archive\n```\ngit archive -o ../siridb-server_2.0.31.orig.tar.gz master\n```\n\nRun tests\n```\nautopkgtest -B -- null\n```\n\nBuild package\n```\ndebuild -us -uc\n```\n\n## Run integration tests\nThe simplest way to run the integration tests is to use [docker](https://docs.docker.com/install/).\n\nBuild integration test image\n```\ndocker build -t siridb/itest -f itest/Dockerfile .\n```\n\nRun integration tests\n```\ndocker run siridb/itest:latest\n```\n\n## Create or expand a database\n[SiriDB Admin](https://github.com/SiriDB/siridb-admin) can be used for creating a new database or expanding an existing database with a new server. Documentation on how to install and use the admin tool can be found at the [siridb-admin](https://github.com/SiriDB/siridb-admin#readme) github project. Binaries are available for most platforms and can be downloaded from [here](https://github.com/SiriDB/siridb-admin/releases/latest). As an alternative it is possible to use a simple [HTTP API](https://docs.siridb.net/connect/http_api/) for creating or expanding a SiriDB database.\n\n## Using SiriDB\nSiriDB has several tools available to connect to a SiriDB database.\n\n### SiriDB Connectors\nThe following native connectors are available:\n - [C/C++](https://github.com/SiriDB/libsiridb#readme)\n - [Python](https://github.com/SiriDB/siridb-connector#readme)\n - [Go](https://github.com/SiriDB/go-siridb-connector#readme)\n - [Node.js](https://github.com/SiriDB/siridb-nodejs-addon#readme)\n\nWhen not using one of the above, you can still communicate to SiriDB using [SiriDB HTTP](#siridb-http).\n\n### SiriDB HTTP\n[SiriDB HTTP](https://github.com/SiriDB/siridb-http#readme) provides a HTTP API for SiriDB and has support for JSON, MsgPack, Qpack, CSV and Socket.io. SiriDB HTTP also has an optional web interface and SSL support.\n\n### SiriDB Prompt\n[SiriDB Prompt](https://github.com/SiriDB/siridb-prompt#readme) can be used as a command line SiriDB client with auto-completion support and can be used to load json or csv data into a SiriDB database. Click [here](https://github.com/SiriDB/siridb-prompt/blob/master/README.md) for more information about SiriDB Prompt.\n\n### Grafana\n[SiriDB Grafana Datasource](https://github.com/SiriDB/grafana-siridb-http-datasource#readme) is a plugin for Grafana. See the following blog article on how to configure and use this plugin: https://github.com/SiriDB/grafana-siridb-http-example.\n\n## Query language\nDocumentation about the query language can be found at https://siridb.net/documentation.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSiriDB%2Fsiridb-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FSiriDB%2Fsiridb-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSiriDB%2Fsiridb-server/lists"}