We built a database!

addtoany linkedin

Woman in gold jacket leaning toward a computer monitor. On her right, a man with a bearded sits and views the monitor
The Kinaxis® RapidResponse® concurrent planning platform is underpinned by a database engine that we built from scratch. Building a database engine is a lot of work!

Database technology has proliferated in recent years, and open source options are widely available. Why didn’t we use a pre-existing database engine in our platform? Why did we build our own?

 

We're a simulator, not just a database

For concurrent planning, we don't need just a database – we need a simulator. Our database engine provides a robust and efficient platform for teams of planners to rapidly simulate and share multiple "what-if" scenarios. Planners get safe sandboxes where they can work with real data. They can change planning parameters and get immediate feedback on their impact.

To meet these needs, our database engine has these unique features:

  •          Data branches

  •          Analytics integration

  •          Hybrid data model.

Data branches
Diagram of data branching sequence

Our database engine acts like a version control system for data. It's like Git, but for data instead of code. And just like Git, we can “branch” the database. For example, a "what-if" scenario is a branch. With our database engine, we can create new scenarios (branches) instantly. We can pin a historical view of the data using a scenario. We can compare data across different scenarios. We can sandbox unconfirmed changes using a private scenario. Concurrent data changes can be committed safely using a well-defined procedure for resolving scenario conflicts.

Analytics integration

We integrate analytics algorithms directly into our database. These algorithms have direct memory access to the database data, which enables them to compute at maximum speed without extra data copying costs. Database data is structured in memory for optimal access by algorithms, and we can also work with algorithm output as if it were database data.

Hybrid data model

We use a purpose-built hybrid data model that combines the best of relational, network and graph databases. We can represent all the data and relationships in the supply chain – operations, finance, distribution, etc. – in a cognitive network graph model that allows enterprises of all sizes to replicate their business into multiple digital twins.

Object oriented data model graph

From a performance perspective, our hybrid data model makes following foreign key references virtually free. This enables analytics algorithms to traverse record relationships in a natural, object-oriented way – that also happens to be very fast.

What the future holds

We are constantly investing in our database technology so that we can scale better, perform better, and be more extensible. It’s challenging but rewarding work, and our collaborative team environment means we all work together to dream, plan, and build innovative solutions. 

If you're interested in joining our team, we'd love to hear from you! Visit https://www.kinaxis.com/en/careers to check out open positions. 

Leave a Reply

Get blog updates

Stay up to date with blog posts by email:

Eloqua webform