From Application-Centric to Knowledge-Centric: It’s Time to Redefine the Application Development Paradigm
The past decade has seen an enormous amount of money poured into huge digital transformation projects to reduce data silos by creating data warehouses/data lakes easily accessible by the whole enterprise. The objective was to bring enterprise data as close as possible to the applications’ code so that applications can easily use, manipulate, model, and reason about that data to provide business insights.
As a result, applications are the centerpiece of today’s modern systems with everything else, namely data and infrastructure, revolving around them. The challenge with this approach, what makes it unwieldy, is that enterprises have hundreds if not thousands of applications. Each application uses similar data but ends up modeling business logic and knowledge in a highly tailored fashion.
You might ask, why does this matter? Well, because knowledge stored in cryptic application code is knowledge not discoverable. It is knowledge not reusable. It is knowledge not democratized. Effectively, it is knowledge lost.
To sum it up, we have eliminated data silos but in doing so, we have introduced “knowledge silos”.
Think though, if there was a way to bring that knowledge much closer to the data itself in a way that allowed everybody to see, understand, and manipulate it. Think how powerful it would be to have your data become the backbone of your enterprise. Think how incredible it would be if any time you wanted to learn something about your organization, you could rely on the data and its paired knowledge to answer those questions.
So if the benefits are so clear, why are enterprises still stuck on application-centric development? The answer is simple: technology. Although modern enterprises have migrated data into cloud-native systems, such as Snowflake and BigQuery, those systems lack capabilities. Specifically, they cannot tackle advanced analytics workloads that are central to the development of intelligent data applications such as reasoning, ML, and optimisation. To overcome those hurdles, developers are forced to abandon cloud-native systems and move data and logic outside of them onto traditional systems.
What’s needed, what’s missing, is a performant system that enables reasoning and machine learning to happen directly on cloud-native databases. Relational knowledge graphs are ideal candidates to solve that challenge. They model business concepts with their interdependent relationships and application logic, bringing knowledge into the database itself.
This new application development paradigm in which data and knowledge are the focus and applications are built around it is what I call “the knowledge-centric application development paradigm” and what I believe over the next five years will separate the leader from the laggers.