To store a large amount of historical data with the possibility of their subsequent analysis, a columnar database is well suited. Chose Clickhouse from the tech stack list.
For display, it makes sense to use a ready-made solution with minimal development effort. I chose Grafana, also from the technology stack list.
- Something more popular for clickhouse migrations
- Remove hardcoded clickhouse settings in grafana settings
- Some kind of control over whether data was written to the clickhouse in 1 second. It can be added to the queue, and write to the clickhouse in another thread.
- Add clickhouse waiter script.
Create .env file
cp .env.example .env
vim.env
Run clickhouse in docker
docker-compose up --build -d clickhouse
Wait for clickhouse to start and run the rest services
docker-compose up --build -d generator_service grafana
Go to grafana and see dashboard Tickers (login: admin, pass: admin).