New research has analyzed the concept of transactions from a very theoretical point of view. An interesting result of this research was the concept of cisactions, which are in some way the opposite of transactions. A duality between cisactions and transactions has been proven. This means that in principal every application that is based on transactions can also be written with cisactions. But there are some challenges:
- currently there is no database that supports cisactions
- cisactions are even harder do understand than transactions
- the whole program has to be written once again in a totally different way.
- even the business logic has to be redefined in a totally different way, but eventually the same results can be achieved
- The paradigm change from transactions to cisactions is much harder than the change from object-oriented to functional programming
- mixing of cisactions and transactions in the same program is almost impossible
But we will see applications that do use cisactions properly in the future. And they will perform about 1000 times faster than programs using transactions.
The interesting question is:
When will the first cisactional databases become available? How will they work? Which programming languages will support cisactions? Or will we rather have to invent totally new programming languages for proper support of cisactions?
A lot of questions still have to be answered, and this is still theoretical research. But it is so promising for high performance usage that we absolutely must expect that this will become an important way to solve real high performance development tasks.