3. Ultra-Scalable Cloud Database

Author(s): 
Ricardo Jimenez-Peris (tech. coord.), Marta Patiño (coord.) & CoherentPaaS consortium
Focus area: 
CoherentPaaS is creating an ultra-scalable cloud database. This is a cloud service for business. It provides the full functionality of an OLTP (On Line Transactional Processing) database with full SQL full ACID support scaling from 1 to 100s of nodes. It also provides integration with NoSQL technologies such as key-value data stores, document-oriented data stores and graph databases. The integration lies in providing global transactions and queries across SQL and all these NoSQL data stores.
Who stands to benefit and how: 
The end users of the resulting technology are businesses (B2B) that need to have a scalable cloud database or need to integrate SQL and NoSQL technologies. They can be large enterprises or technological SMEs.
Focus of your position paper: 
One of the main issues for companies deploying their applications in the cloud is the lack of a scalable database. This situation forces them into relying on sharding, a technique that lies in using multiple independent database instances and storing a fraction (shard) of the data on each of them. Unfortunately, sharding is extremely expensive for most applications requiring a lot of coding effort and expertise. With CoherentPaaS this problem is solved thanks to the LeanXcale ultra-scalable database that enables to scale transparently applications deployed in the cloud. Sharding is not needed anymore. Another common issue among companies using cloud databases and data stores is that they need to resort to a combination of data management technologies SQL and NoSQL. They use SQL for their operational data and resort to NoSQL data stores for specific needs on the flexibility of the data model and the appropriate query language/API. This is what is so-called Polyglot Persistence, term coined by Martin Fowler in his bestseller NoSQL Distilled. In this Polyglot world there are two main pains. The first one is related to the updates. If a business operation requires updating more than one data store, today, there are no data consistency guarantees. If there is a failure, the “logical database” consisting of all data stores will get inconsistent with some partial updates on only a fraction of the data stores being updated. CoherentPaaS solves this problem firstly, providing transactional semantics to NoSQL data stores lacking it. And secondly, by providing global transactions across data stores. In this way, applications can get the same transactional data consistency guarantees across data stores as they had in old SQL world. The second pain found in the Polyglot world is that when companies want to correlate data across data stores, since they speak different query languages/APIs it becomes impossible. CoherentPaaS has adopted a unique approach that enables to combine SQL and the native query languages of the different NoSQL data stores to support queries across them.