Enable Nosql Database Transactionability By Incorporating Relational Database For Transaction Control
Publication Date: 2016-Jun-13
The IP.com Prior Art Database
This disclosure describes a low cost way of enabling the transactionability of NoSQL database. One of the major hurdles of applying general NoSQL in mission-critical use is the lack of the support of ACID. The general SQL databases provide the critical ACID function. We suggest a practical system and a new algorithm of joining SQL database with NoSQL database so that NoSQL database can be used in mission-critical situations. By doing this, users can also use free open source databases to replace the expensive commercial products to support transactionability.
Page 01 of 3
Enable Nosql Database Transactionability By Incorporating Relational Database
For Transaction Control
NoSQL databases are used in more and more applications in the recent years. Their popularity largely comes from the superb scalability, easy use, and schema-less. They are normally free, with many open sources and large use base. However most NoSQL databases suffer from the lack of the support of transactionability. For example, multiple users can not concurrently reliably update the same documents in the same database. The shortage of the support to transactionability (or ACID) largely limits most NoSQL from the business critical applications.
We suggest to incorporate traditional relational database to enable the transactionability of NoSQL store.
Nowadays, most relational databases support ACID. We only use the simple table in the relational database to control the transaction of NoSQL database. The simple table can also provides high scalability for the relational database.
The strengths of our invention are: 1) Users can make their own choices of what NoSQL will be used, based on the use cases and environments. The users won't be locked to a specific NoSQL vendor.
2) Businesses can reuse their own existing relational database assets and skills without immediately getting rid of them.
3) ACID is a big issue and needs much knowledge and large efforts to implement. We just transform the issue of NoSQL ACID to that of relational database ACID. Modern relational databases have solved ACID problems quite
well. We just don't reinvent the wheel, but take the advantage of the existing wheel. So our implementation of NoSQL ACID is simple and easy.
4) Our invention can be applied to generic relational databases as well generic NoSQL.
Thanks to high scalability, low cost, and easy use, more and more people are starting to use NoSQL databases to store their large schema-less data. However, normal NoSQL can not be widely used in business transactions due to their lack of ACID support.
As the general knowledge, the basic requirements of business critical applications are ACID: Atomicity, Consistency, Isolation, Durability. Without ACID, business transactions can not be reliable. For example, when some money is being
transferred from one account to another and the destination database fails during the transferring, the money will be lost without the atomicity support.
Some commercial NoSQL vendors try to build their own proprietary transactional data store. Users have to pay to be locked on the specific vendor
without enjoying the benefits of what many other NoSQL databases can provide.
As we know, traditional relational databases work well in transaction processing. Our invention provides a simple solution to use relational databases to handle the transactions of the NoSQL datastore. As we also know, scalability is a problem when relational databases handle big and complex data. For example, normal relational databases use memory for the t...