Open

Tecnology inspired by
nature

Mithikǝl has self-financed research, design and development of specialized technologies in mission-critical and high availability systems.

Hero

We are ready for the next step

Mithikǝl has self-financed research, design and development of specialized technologies in mission-critical and high availability systems. MattDB is one of the technological tools obtained from the effort of more than 20 years of hard work. ADITI is our main project, it is currently in the 3.0.0 version. It is the evolution of a platform that we previously developed and where critical financial systems are operated for a very important institution in Mexico. This is the only platform in the world for highly decentralized systems without using orchestrators (coordinators), it was specifically designed to manage mission-critical systems with requirements for high availability, real-time, online maintenance, among other characteristics. It uses MattDB as its database manager. The technologies developed by Mithikǝl are ready to be commercialized. We are looking for one of the biggest software companies in the world that creates infrastructure technology to show our technological potential by their side.

Our innovations

Aditi platform

It is the only platform in the world for highly decentralized systems without using orchestrators (coordinators), it was specifically designed to manage mission-critical systems with requirements for high availability, real-time, online maintenance, among other characteristics

MattDB

It is an embedded key-value database, object-oriented, high-performance, ACID transactional and agile development database manager, it is written entirely in Java

Serializer

It is high performance library for translating Java Objects into byte arrays and vice versa, reduce the execution time and the array bytes size

Parallels

It is a library to manage the Java threads

Network

It is a library that simplifies the sending and receiving of data packages through sockets

Autonomous Decentralized IT Infrastructure - ADITI

The systems that run on ADITI increase its survival level: downtime risk is reduced in case of external failures, such as memory, data storage or CPU problems. Also, in the case of the loss of a server or network failures, operational continuity can be achieved. ADITI is prepared for the evolution of the requirements. It was designed for the interconnected world of tomorrow, where stopping a moment will be much more expensive than is now.

Main component

Cell

Cell is the software component that provides microservices to other of its same type, in applications developed with Aditi technology. It is inspired by the functioning of living organisms. The functionality of an Aditi application takes place in the Aditi-Cell core: the internal logic of each microservice is implemented into the DNA of the component. It also contains a communication module to enable the sending and receiving service requests through Aditi-Net. Aditi-Cell uses a high-performance object-oriented database called MattDB that allows the component to persist the critical information of the stateless microservices. Nonetheless, Aditi-Cell is able to manage external resources such as Hibernate, web services, DBMS, among others, using the add-ons built in the Aditi infrastructure. Underneath all these features, Aditi-Cell deals with information security, providing an integrated mechanism for deploying different protection levels in the sending of information and authentication mechanisms between the components of Aditi infrastructure.

Features

— High performance

— High functional availability

— Online maintenance and updates

— Maximum efficiency in the use of computational resources

— Parallel execution of microservices inside cell components

— Transactional handling of the data persistence

— Priority levels in the execution of microservices

— Self-recovery in case of failure

— Reduction of development times for specific functionalities and elimination of regression testing

— Selective security mechanisms

— Integration with other technologies

Middleware

Bloodstream-Node

Bloodstream-Node is the infrastructure that allows the sending and receiving of messages between distributed applications developed with Aditi technology. Aditi-Net is inspired by the endocrine communication of the living cells, where the messages are transmitted through hormones poured into the bloodstream. Once in the blood, hormones circulate throughout the body, being taken only by the cells that must receive the message. Aditi-Net is the technological analog of the bloodstream.

Features

— High reliability

— High availability

— Asynchronous communication

— High elasticity

— Bi-modal communication (point-to-point and publish-subscriber)

— Timeliness comunication (2 steps)

— Secure authentication (3 different mechanisms)

Manager

Cellman

Cellman is the component that allows controlling the Aditi platform. Through it, it is possible to model Aditi-Cells; to manage microservices and computational resources (installing, uninstalling, monitoring); to put online systems built with Aditi technology and tostablish their security levels and mechanisms. Like the other components of the platform, its design is completely decentralized. Aditi-Manager consists of three software elements that are independent of each other but work collaboratively: a client or graphic user interface to indicate the actions of the platform; a server, where the information of the Aditi-Cells, systems and microservices is stored and managed;an agent that gives direct access to computational resources for the platform.

Features

— Decentralization of control services

— High availability of intent components

— Control and monitoring of computational resources

— Creación e instalación de instancias de Aditi-Cell

— Modificación del ADN de las Aditi -Cell

— Built with Aditi technology

Ready to do more

Cell add ons

Adhered to the ideals of ADITI, we want to facilitate the work of those who develop in our technology, so that they focus in exploiting the potential that ADITI offers and do not worry about how to integrate basic technologies to their applications. For this reason, a group of add-ons that allow a better way of collaborating between ADITI and external resources has been included in the platform. The first series of add-ons focuses on database management, with complements for Hibernate and DBMS. In addition to an add-on for web services.

Features

— Compatibility assured with ADITI

— Time saving during the development of ADITI applications

MattDB, transacctions like no other database

MattDB is an embedded key-value database, object-oriented, high-performance, ACID transactional and agile development database manager. It is written entirely in Java.

Multiple Databases

Data Access

Allows managing multiple databases from a single MattDB instance

Transactions at memory speed

Only Memory Technology

If the milliseconds are important in your business, MattDB could execute all the transactions at memory speed

Locks

Secure Transaction

Controls database locks and allows to execute actions after closing the transaction

Backups

Hot snapshots

Generates hot snapshots of the database and load them without stopping

Improve transactions

Background Transaction

It considerably reduces the execution time of transactions, fulfilling all the ACID properties

Agile development

Agile development

MattDB was designed to (i)generate the database models in a few steps, and (ii)be able to mutate them even when already running

Improve searches

Secondary Key

Optimizes searches on the database

Comparison, MattDB against BerkeleyDB

The execution time, the storage size and the memory consumed was measured when processing 100,000 transactions on a database model comprised of 20 tables with different data types (Integer, Short, String, Character, byte [], Long, Double, etc). Each transaction had from 1 to 20 random movements. A movement corresponds to a data reading, updating or deleting.

Loading Chart

MattDB was 27.2 times faster than BerkeleyDB

Loading Chart

MattDB was 1.5 times faster than BerkeleyDB

Loading Chart

MattDB used 266.90 MB fewer

Loading Chart

MattDB used 47.68 MB fewer