News of RapidClipse - Cross Platform Development with Eclipse
October 20, 2017
Jetstream introduction at Big-Data day at JCON 2017 in Duesseldorf
October 23, 2017
Jetstream comming soon. Please, subscribe our newsletter.
Upcoming training
Jetstream kick-off
Comming soon.
Jetstream Architecture
Comming soon.
Individual & Inhouse Training

What is the problem with databases today
from our perspective?

In Java we love to work with objects. We endeavor to elegant code, object models, POJOs and modern microservice architecture. Java allows us to do all of this.
But, what happens if we suddenly want to store data? Suddenly everything is different:
First at all, we have to create a second data model especially for the database. After that we have to adjust our object model to a less elegant database model, by using lots of annotations or XML configurations. Then we have to use complex persistence frameworks as JPA, which map our objects to completely different data structures behind the scenes. Finally the data are mostly stored within a monolithic database server and their makers tell us we should use all it's rigid and proprietary features. So we are forced to wrap the database with our application. So the application has to wrap the database, which becomes the core of the entire solution. Actually we only wanted to store some data !?

Jetstream Architecture

Jetstream is just a tiny Java API which runs inside the alpplication tier as a part of your application. The data are pre-loaded into the server memory by Jetstream.
Therefore, queries are executed in the memory of the application tier and can be written in pure Java.
The persistnece layer is a pure data store only. No logic is executed there.

Maven repository


Maven dependencies

Why Jetstream ?

Jetstream is the only one database which stores data exactly in the same way as Java does itself.
The only difference is, Java VM stores data in RAM, Jetstream into a file storage.
We want nothing but objects!
As you know, Java manages data in form of object-graphs in RAM.
In logical consequence Jetstream stores data in form of an object-graph as well.
Object graph storage engine
Jetstream reads the entire object-graph of an application from the RAM and stores a 1:1 copy into a plain file storage. If data are added or updated, the changes can be synchronized by calling only one simple store method.
In-memory concept
At application start, Jetstream initially loads the entire object-graph from the persistent file storage into the server RAM. If the server has not enough memory, you can load single nodes (with / without children) lacy, similar to JPA.
Great for Microservices
Jetstream as a lightweight Java engine is predistined to be used for slim microservices.
JIT boost
Jetstream itself is fast enough, but the Just-in- Time compiler of the Java VM accelerates Jetsream over again factor 10 - 100 !
Easy to use
Jetstream is a tiny 2,5 MB size Java API which can be included in any Java application via Maven. And it is easy to use.
No query language needed
With Jetstream your data are permanent in the RAM. So, for all queries you can use plain Java. You do not have to learn another query language.
No network bottleneck
Classic database server run self-contained and are connected to the application server by network which is slow and always a bottle neck. Jetstream however, runs within the application server. So, there is no more network communication that brakes your application noticeable.
No mapping - more speed
While storing and loading data, your objects never have to be transformed into any other format. OR-mapping is not needed any more. This saves lots of computing time and accelerates your application enormoulsy.
In-memory high-speed queries
SQL queries accessing to hard disk drives take milliseconds. The access time to RAM takes only nanoseconds. Even most complex queries will be executed in microseconds. This means, your Java queries will be executed 1,000 - 1,000,000 times faster than conventional SQL queries.
Only 1 data model
Jetstream allows you to persist any POJO. Annotations or XML configurations are
not needed. So you do not have to adjust your object model to Jetsream. And you have to manage only 1 data model: your Java object model. So, Jetstream simplyfies the entire database development process.
Trouble-free migration
You can use Jetstream in existing JPA projects easily, because Jetstream will persist your JPA entites gracefully.