Architecture of Alinous Elastic DB
Alinous Elastic DB is a kind of distributed relational databases. The database consists of SQL Transaction, Sharding Management Engine, and Data Storage Engine.
You can configure the scalability of database, from local mode with single database server to full scaling mode.
- Engine Components for Distributed Database
- Scaling & Table Partitioning
In addition to 3 parts of database engines, Transaction Monitor Engine is there. These components can be put on the cloud network.
SQL Transaction engine is to handle transaction, SQL, and stored procedure. This component is independent from persistent data. It is transaction independent.
This component is scalable, because it has no persistent data. It works on memory, but it sometimes use volatile disk cache to handle many records. After a transaction ends, the disk cache is cleaned.
Table Region Management Engine is to manage shard Map, which consists of Data Storage Engine Node.
These parts not only manage shard Map, it supports Table Level Lock.
This component is also scalable, because node configuration data is on the Transaction Monitor Engine. So this part fetched the data from it.
Data Storage Engine is to store table & schema data. Sharding is available by using Shard Region Manager.
This component supports Row level lock.
The single point of distributed database. This monitor engine do following tasks.
- Manage Schema & Node Cluster version
- Manage Transaction ID, Commit ID, and Oid
- Store & Transfer node configuration of whole distributed database
In order to handle BigData, Shard Map is essential. In order to handle high transaction, scaling OLTP engine is necessary.
To scale means to increase through-put, but more latency is necessary. That is because it uses network access on scaling.
On this mode, the database works as a single instance without both scaling and table partitioning.
This mode has fastest response time.
This database works as not only distributed database, but high speed local database.
By using table partitioning, the database can handle BigData. If each node has enough small data, parallel query works very fast.
Table Partitioning is done by the partition key. Then table query by using primary key works very fast, because the Data Storage Nodes which have nothing to do does not have to work.
The SQL and Stored Procedure Engine use CPU heavily. But fortunately, these part does not have persistent data, so it is easily scale.
This mode will be the most popular case.
The Table partition can be replicated. By using replication cluster, table query scales.
The Table Region Management Engine is also scalable. In this mode, locate software load balancer component before it.When the number of transaction simultaneously executed is high, please use this mode.
By using it, the cashing data on the Table Region Management Engine is distributed.