https://github.com/paganini2008/vortex-tsdb
Vortex is a cutting-edge time series database (TSDB) framework designed for precision, scalability, and real-time data analytics. Built on Spring Cloud, it supports fine-grained data storage with a 1-minute resolution
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.4%) to scientific vocabulary
Keywords
Repository
Vortex is a cutting-edge time series database (TSDB) framework designed for precision, scalability, and real-time data analytics. Built on Spring Cloud, it supports fine-grained data storage with a 1-minute resolution
Basic Info
Statistics
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Topics
Metadata Files
README.md
Vortex TSDB
Vortex TSDB (Time Series Database) is a highly scalable and flexible time series data storage solution built on Java and Spring Boot. Designed to efficiently store and analyze time series data with fine granularity (down to 1-minute intervals), Vortex TSDB provides robust features for real-time monitoring, analytics, and large-scale data management. With its extensible architecture and integration capabilities, Vortex TSDB is a powerful tool for applications requiring precision and high...
Key Features
1. Granular Time Series Data Storage
Vortex TSDB supports fine-grained data storage with a granularity of 1-minute intervals, making it suitable for real-time analytics and precision monitoring. Key data types supported include: - Double - Long - Decimal
These data types enable precise measurements and calculations tailored to diverse application needs.
2. Advanced Statistical Calculations
The database provides a comprehensive set of built-in statistical operations, enabling deep insights into time series data: - Maximum and Minimum Values: Identify peaks and troughs in your data. - Average Values: Calculate trends and patterns over time. - Variance: Measure data variability for predictive analytics. - Baseline Comparisons: Evaluate deviations from expected values.
These capabilities make Vortex TSDB a strong choice for applications requiring rich data analysis.
3. Flexible Storage Backends
- Redis-Based Storage: The current implementation leverages Redis for fast, in-memory storage, ensuring low-latency read and write operations.
- Future-Ready Architecture: Plans to support additional storage backends like MySQL or other databases, providing developers with flexibility to choose the optimal storage solution for their use case.
4. High Availability and Scalability
- Built on Netty NIO: Ensures efficient, non-blocking IO for high-throughput communication.
- Horizontal Scalability: Add more nodes to scale out the system seamlessly.
- Fault Tolerance: Designed for high availability to ensure consistent service delivery in distributed environments.
5. Built-in UI for Benchmarking
Vortex TSDB includes a benchmark testing UI to evaluate performance metrics such as throughput, latency, and resource utilization. This makes it easier for users to test, analyze, and optimize the database in their specific environments.
Getting Started
1. Prerequisites
- Java 17+
- Redis 7.x (for storage backend)
- Maven (for building the project)
2. Clone the Repository
bash
git clone https://github.com/paganini2008/vortex.git
cd vortex
3. Build and Run
bash
mvn clean install
java -jar target/vortex-tsdb-web.jar
4. API
4.1 Push Data API
- Path:
/tsd/push - Method:
POST - Description: Push time series data to the server.
- Example Request:
http://localhost:55610/tsd/push?t=long&c=car&d=speed&v=44
Parameters
| Parameter Name | Type | Required | Description | Example Value | |----------------|--------|----------|-------------------------------------------------|---------------| | t | String | Yes | Data type (long/decimal/double) | long | | c | String | Yes | Category (e.g., device category or system module) | car | | d | String | Yes | Dimension (e.g., metric name) | speed | | v | String | Yes | Value (supports numeric string) | 44 |
4.2 Retrieve Data API
- Path:
/tsd/retrieve - Method:
GET - Description: Retrieve stored time series data.
- Example Request:
http://localhost:57741/tsd/retrieve?t=long&c=car&d=speed
Parameters
| Parameter Name | Type | Required | Description | Example Value | |----------------|--------|----------|-------------------------------------------------|---------------| | t | String | Yes | Data type (long/decimal/double) | long | | c | String | Yes | Category (e.g., device category or system module) | car | | d | String | Yes | Dimension (e.g., metric name) | speed | | z | String | No | Time zone (default: Australia/Sydney) | Asia/Shanghai |
5. Access the UI
Navigate to http://localhost:8080/tsd/metric to access the benchmark testing UI and explore the database capabilities.

Documentation
For detailed documentation, API reference, and advanced configuration, visit the Official Documentation.
Contributing
We welcome contributions! Check out the Contributing Guide for more information on how to get involved.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Vortex TSDB combines precision, scalability, and extensibility to deliver a cutting-edge time series database solution. Whether for real-time monitoring, predictive analytics, or large-scale data management, Vortex TSDB provides the tools and flexibility you need to succeed.
Owner
- Name: Fred Feng
- Login: paganini2008
- Kind: user
- Location: Australia
- Company: Freedom
- Website: https://paganini2008.github.io/#blog
- Twitter: paganini2008
- Repositories: 12
- Profile: https://github.com/paganini2008
Just a passionate Java programmer and Like coding and reading
GitHub Events
Total
- Watch event: 1
- Push event: 4
Last Year
- Watch event: 1
- Push event: 4
Issues and Pull Requests
Last synced: 7 months ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- org.springframework.boot:spring-boot-dependencies 2.2.5.RELEASE import
- org.springframework.cloud:spring-cloud-dependencies Hoxton.SR3 import
- com.github.paganini2008:devtools-lang 2.0.4
- org.apache.commons:commons-lang3
- org.projectlombok:lombok
- com.esotericsoftware:kryo 5.0.0-RC1 provided
- com.github.paganini2008:embedded-io 2.0.4 provided
- com.github.paganini2008:xmemcached-spring-boot-starter 2.0.4 provided
- javax.servlet:javax.servlet-api provided
- org.apache.kafka:kafka-clients provided
- org.apache.mina:mina-core 2.0.21 provided
- org.glassfish.grizzly:grizzly-http-server 2.3.35 provided
- org.glassfish.grizzly:grizzly-spdy 2.3.35 provided
- com.fasterxml.jackson.core:jackson-annotations
- com.fasterxml.jackson.core:jackson-core
- com.fasterxml.jackson.core:jackson-databind
- com.github.paganini2008.atlantis:tridenter-spring-boot-starter 1.0.1
- com.github.paganini2008.atlantis:vortex-common 1.0.1
- com.github.paganini2008.atlantis:vortex-metric-api 1.0.1
- com.googlecode.concurrentlinkedhashmap:concurrentlinkedhashmap-lru 1.4.2
- de.ruedigermoeller:fst 2.57
- io.netty:netty-all
- org.springframework.boot:spring-boot-starter-actuator
- org.springframework:spring-context-support
- com.github.paganini2008.doodler:doodler-common-webmvc
- com.github.paganini2008.vortex:vortex-spring-boot-starter 1.0.0-SNAPSHOT
- org.springframework.boot:spring-boot-starter-data-redis
- org.springframework.boot:spring-boot-starter-freemarker