Simplify Microservice Transactions With Oracle Database Sagas

The Saga Pattern

The saga pattern is used to provide data integrity across multiple distributed, isolated services involved in potentially long-lived activities (sometimes referred to as business activities or business transactions to disambiguate).  The classic example, and the one I use here and in the corresponding workshop, is a travel booking consisting of flight, hotel, and car reservations. 

The original paper was published in 1987 and alludes to the advantages of an implementation that runs and stores data within a database and that is precisely what is being done in the Oracle database, making it a perfect fit for microservices and modern applications development for a number of reasons.  

Spring Transaction Management: An Unconventional Guide

You can use this guide to as an in-depth, practical understanding of how Spring's transaction management (including the @Transactional annotation) works.

The only prerequisite? You need to have a general idea of ACID, i.e. what database transactions are and when to use them. Also, XATransactions, or ReactiveTransactions, are not covered here, though the general principles, in terms of Spring, still apply.

Should You Use DynamoDB? (Part 2)

Last time, we got a general overview of DynamoDB. This time, let's look at some advanced features.

Advanced Features

All the features described so far are core DynamoDB features. But DynamoDB also has some additional, more advanced features that you can use to build complex applications. In this section, I’ll provide a short list of what these features are and what you can use them for.