In this intensive 4-hours ONLINE course, we will deep-dive into developing ultra-fast in-memory database apps and microservices with EclipseStore. EclipseStore is the very first Java persistence (engine) that enables you to persist any Java object-graph or single subgraphs into any data storage natively. This means any object graph can be persisted as it is in RAM. The EclipseStore approach is fundamentally different from the traditional RDBMS/NoSQL DB-server programming model:
- Only 1 data model – just POJOs
- No more dealing with DB-specific data models (tables, column-store, JSON, key-value, DB-specific graphs/objects) – which are actually incompatible with object-graphs we use in Java
- No more expensive mappings at all
- No DB-specific query language, no more classic selects, just using getter
Object-graphs in RAM are used as an incredibly fast pure Java in-memory database which is a kind of multi-model data structure because ANY Java type can be used such as collections. Queries: By using Java Streams API, object graphs can be searched in microsecond query time – up to 1000x faster than comparable traditional database query time and even up to 100x faster than reading data directly from a local JPA cache. An additional caching framework such as EHcache is not required anymore. The end result is an ultra-fast pure Java in-memory database app or microservice having its own superfast persistence. EclipseStore itself is a tiny Java API that can be included into any Java project easily via Maven. It runs on the server, on desktops, within containers, with GraalVM native images as well as on Android. MicroStream is also part of popular microservice frameworks such as Micronaut and Helidon, and well integrated with Quarkus and Spring Boot.
Who should attend
Developers and software architects who want to develop high-performance database apps and microservices with Java or any JVM-language as well as apps running on Android devices. Also trainers and consultants.
- Java developers
- Developers using any JVM-language
- Android developers
- Software architects
- Java trainers
- Technical consultants and sales engineers
Prerequisites
- Fundamental knowledge in Java SE or any JVM programming language
- Understanding the concepts of object-oriented programming
- Maven
Course Objectives
By the end of the course, you should be able to meet the following objectives:
- Creating an advanced configuration of the EclipseStore storage
- Creating proper data structures for eager and lazy data handling
- Usage of Lazy Collections
- Usage of transactions and rollbacks with EclipseStore
- Create a proper backup strategy for the storage
- How to handle class evolution when your classes change (LegacyTypeHandling)
- Using EcliseStore Browser to view and browse through your storage data
- Migrating existing MicroStream projects to EclipseStore 1.0
Course Content
- Functional principle of EclipseStore
- Download and setup EclipseStore
- Create a new object-graph (in-memory-database) and storage instance
- CRUD operations
- Add new objects to the object-graph (CREATE)
- Edit objects (UPDATE)
- Remove objects (DELETE)
- Store objects and subgraphs persistently into the storage
- Using Lazy-Loading to reduce memory consumption
- Using Java 8 Streams API for querying data
- Migrating existing MicroStream projects to EclipseStore 1.0