Skip to content
This repository was archived by the owner on Mar 24, 2020. It is now read-only.

sparcedge/turbinedb

Repository files navigation

Turbine DB

Scala code base for the turbine database, which is a low latency time series event driven, columnar database.

Prerequisites

Getting Started

Download Project References

$ sbt update

Generate Eclipse Project

$ sbt eclipse

Compile

$ sbt compile

Test

$ sbt test

Run

$ sbt run

Package (Create Jar)

$ sbt one-jar

Run Benchmarks (Google Caliper)

$ sbt benchmark/run

Basic Use

Insert Event

POST: http://localhost:8080/db/mydatabase/mycollection 

{
	"timestamp": <timestamp>,
	"data": {
		"cpu": 43.2,
		"ram": 56.9
	}	
}

Queries

Only a reducer is required.

GET: http://localhost:8080/db/mydatabase/mycollection?q=<query>

{
	"start": <timestamp>, // Optional
	"end": <timestamp>, // Optional
	"extend": [
		{"ext-value": ["add", "segment1", ["mul", "segment2", "segment3"]]}
	], "match": [ // Optional
		{"ram": {"gt": 50}}
	], "group": [ // Optional
		{"duration": "hour"}
	], "reduce": [ // Required
		{"ram-avg": {"avg": "ram"}}
	]
}

Notifications

Query needs to be URI encoded [eg: encodeURIComponent(query) in node/js console]

GET: http://localhost:8080/db/mydatabase/mycollection?m=<query>

About

turbineDB - Time Series Analytics Database

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages