Warning alert:We're building our new website - with more examples, tips and docs! Some sections though might still be incomplete or under review. When browsing, keep an eye for progress notes and ways to get updated on particular topics.

What is mishmash io?

mishmash io is a distributed database (DBMS) of a new kind - specifically designed to handle complex, algorithmic queries with speed.

It scales easily to thousands of computers and the more data-driven logic you push to it, the more it will speed up your app.

As a starting point in learning how mishmash io achieves this - take a look at the architecture.

Warning alert:Section under development

This part of our website is still under development and major parts of its content are not published yet.

Follow us on social media to get notified when new content is released.

Data Model

Data stored in mishmash io is not organized into keys, values, tables, graphs, etc. It is broken down into seemingly unrelated chunks (also called 'mishmashes') whose purpose is to allow maximum parallelism for the code that will operate on them.

The mishmashes are scattered around cluster nodes so that more of these nodes can work simultaneously on a given algorithm.

Most importantly, this way of organizing data gives mishmash io the ability to perform operations in a time that is independent of the size of the data set, and answer questions such as:

  • which mishmashes sum to the complete set of data objects?
  • which sets split the data into parts nearly equal in size?
  • ...or into sets that do not overlap?

and many more...

Auto-parallel

When application code is pushed to mishmash io:

  • Its syntax is analyzed to determine how input data affects its branches, states and outcomes. This forms an understanding of all possible alternative ways of solving the same problem.
  • Advanced logic then chooses the combination of input mishmashes that allows the greatest degree of parallel processing.
  • The original code is transformed into 'parallel' pieces for each of the input mishmashes.
  • These pieces of code are distributed to nodes where the code is executed on the corresponding mishmashes in parallel.

Take a look at this very simple example on how mishmash io parallelizes automatically.

© 2024, Mishmash I O UK Ltd. or its affiliates. All rights reserved. | Privacy Policy | Cookies