Technical Topics about Distributed Database

This category is about Technical Topics About Distributed Database. Writing about architecture & inside information about Alinous Elastic DB.

About recent development status, please take a look at Development Status.

Avoid Lock Escalation by Disk Swap

Lock Escalation is to change row locks into table lock. This method is dangerous and not effective. That is because it makes dead lock. In addition to that, vacancy of lock occurs.

Memory Manager of Database

Huge Row Locks Occurs

Sometimes a lot of row locks are necessary, in order to execute application. That is inevitable to keep data consistency.

On handling big data, number of records depends on master table's one also becomes big.

Batch Process

Batch process cases this problem most often. It is to collect data, and calculate the result. Then transaction have to lock a lot of records.

Read "Avoid Lock Escalation by Disk Swap" more


Created time: 2017-02-17 Last updated time: 2017-02-17

Distributed Transaction Performance for Scalability & Response

In order to make Distributed Database, especially Transactional RDBMS (Relational Database) supports remote transaction, fast, there are some points to solve.

Why Distributed Database is High Speed

Generally, distributed database is good at high scalability & high throughput. That is because it has some network nodes, and the CPUs in them works simultaneously.

The query benchmark is very fast, if it is independent task. As you add nodes, the number of transactions executed is linearly increases.

Weak Points of Distributed Database

But in actual use, it does not work like benchmark. It has some weak points.

The distributed database is good at throughput, but week at response speed. That is because there are some slow points, because it uses network.

Read "Distributed Transaction Performance for Scalability & Speed" more


Created time: 2017-02-10 Last updated time: 2017-02-10

Internal Lock Types of Alinous Elastic DB

In order to keep data consistency by transaction supporting ACID, locks are essential. Mainly READ COMMITTED isolation level uses them.

Transaction Isolation Level & Lock

Most of locks are done in READ COMMITTED isolation level. , because it often fails at COMMIT phase.SERIALIZABLE level is almost for lock free and read only transactions

Explicit Locks

Explicit Locks are done by following SQL statements explicitly.

  • SELECT .. FOR UPDATE
  • SELECT .. FOR SHARE
  • LOCK TABLE

Table Lock

Table Locks are done by "LOCK TABLE" SQL statements. It locks entire table by either UPDATE or SHARE mode.

The lock remains until the transaction ends.

Read "Internal Lock Architecture of Alinous Elastic DB" more


Created time: 2017-02-09 Last updated time: 2017-02-10

Feature of Serializable & Read Committed Isolation Level

Relational Database Management System has isolation levels. Alinous Elastic DB has 2 isolation levels, SERIALIZABLE and READ COMMITTED. They are different feature, and suitable usage.

Feature of Isolation Levels

The transaction of each isolation level executed different way in locking. Therefore their performance and way to keep consistency is different.

Transaction Isolation Level & Speed

READ COMMITTED

READ COMMITTED is the default isolation level, and it is best way to OLTP applications.

Main Transaction Phase

The main phase of a transaction starts from BEGIN SQL statement.

Read "Feature of Serializable & Read Committed Isolation Level" more


Created time: 2017-02-09 Last updated time: 2017-02-10
1