Photo by PxHere

Business logic in RDBMS

Black will take no other hue — Whatever modern architecture you provide (Microservice or Serverless) they will manage to put business logic in RDBMS and shamelessly claim it manageable and scalable

Mahmudur R Manna
3 min readNov 3, 2022

--

Desktop Era

Once upon a time, in the era of Desktop development when the web has not spread its light, with Visual Basic or Visual Fox-pro or Java swing, some IT warriors learned the magic knowledge to do anything with RDBMS data and the magic was called SQL. And other than the GUI code, with the blessings of ODBC or JDBC, everything was SQL to them.

Arrival of Princess

Then one day a princess named “Web” arrived and these warriors got into trouble. As to impress her, they had to win another land. And this IIS or Tomcat land was way too complicated to understand and win over as it was not the RDBMS server which could be easily won by SQL. But in time some new weapons were discovered, one called “MVC” and another “Stored Procedure”. And they shouted like Archimedes — “Eureka!” They found the backdoor named “Controller” in those web servers land which acts the same as “Button Action Listener” and they succeeded to put the magic connection ODBC or JDBC there and the rest was, even more, smarter than SQL, and they called it PL/SQL and put it directly in the RDBMS and just made a call and rest was magic.

The Survival

However, the days of trouble were not ended there, new barriers appeared soon and one was called “Microservices” which they found unnecessarily complex and no way to crack it. But soon they found another alternative calling itself “Serverless — Function App, Logic App, Lambda”. And quickly they discovered the trick bypassing the original purpose of the serverless, and they shouted, “Hey, we can use it just like the controller and connect from there with RDBMS”. And they started claiming boldly, we are providing distributed container-based solutions whereas all their business logic is still in RDBMS.

Still not there

After doing all this, when they approached the princess, they saw - the princess ignored them and went to another prince.

And they were surprised and asked the prince — “what is special about you.”

Prince said, “I just have an extra charismatic and dynamic business logic land.”

The warriors were looking at each other and exclaimed, “is it newer than this Serverless!”

Prince said, “no it is ancient, keeping concerns separate, other than writing domain logics in GUI (presentation layer) or in DB (persistence layer) we write them as Enterprise Bean or Service in Application Server (Business logic layer) and in old times we used RMI (Remote Method Invocation) to invoke them and nowadays we containerize them, distribute them and orchestrate them with gateways and various tools to serve them as one.”

Now, these sounded a bit strange to the warriors and they said, “why is that even needed?”

Prince said, to do object orientation, write enterprise business logic and services, do messaging, create queues, apply patterns, and distribute the load, for better collaboration, multiple teams working, better code management, version control, continuous build and deployment and there are many more.

Now the warriors felt a bit irritated and said, “why on the earth do you do those things in such a critical way, don’t you know SQL, PL/SQL? we can also do these with RDBMS without this meaningless critical business logic layer.”

Then Prince replied, “God bless you”.

— — — — — — —

Disclaimer: The views reflected in this article are the author's views and do not necessarily reflect the views of any past or present employer of the author.

--

--

Mahmudur R Manna
Mahmudur R Manna

Written by Mahmudur R Manna

Engineer | Author | Entrepreneur with over two decades of experience across the globe at the intersection of technology and business

No responses yet