Five Features of a Relational Cloud and Database-as-a-Service
With the advent of cloud computing, Relational Cloud systems have become an important feature of modern computing environments. For introductory purposes it’s important to take look at the history behind the technology. Database-as-a-service (DaaS) and its offspring Relational Clouds emerged as an IT concept promising to shift much of the operational burden, scaling, configuration, performance tuning, access control, privacy and backup from database users to service providers; in the end effecting cost reduction to users.
Initially, a few providers introduced DaaS efforts into the market; which scored high in establishing the market need for this type of service.
However, they did not address three pertinent issues: elastic scalability, efficient multi-tenancy, and database privacy. This formed the basis for the Relational Cloud project in MIT to investigate technologies and setbacks related to DaaS within the sphere of cloud computing. Some of the technical aspects of relational cloud model include:
-
- Workload Awareness
The design and development of Relational Cloud components is based on the concept of workload awareness. The workload approach is adapted to multi-tenancy, which involves identifying functions, and workloads that can be easily co-located on the server, resulting in high consolidation and better performance. In the long run this reduces configuration efforts for both service providers and users.
-
- Database Security
The model boasts an adjustable security framework that is capable of integrating SQL queries (encrypted) capable of ordering operations, joins and aggregates. The work awareness approach also assists in monitoring data accesses and query patterns to gain useful insights applicable when optimizing or operationalizing security functions.
-
- Elastic Scalability
The adoption of a graph based data partitioning algorithm assists to achieve near linear elastic scale out, even when carrying out complex operations. This enables the system to support workloads and databases of different sizes since the number of multi-node transactions are minimized.
-
- Efficient Multi-Tenancy
The ultimate goal of any database developer is to design a system that minimizes the set of machines required while still meeting application level performance goals. In regards to this, Relational Cloud archives scalability in the sense that it requires the developer to predetermine the resource requirements of individual workloads, how they will co-locate on one machine, and how to benefit from temporal variations of individual workloads to optimize hardware utilization efficiency.
-
- Placement and Migration
Resource migration and placement is obviously a major challenge when designing multi-tenant services such as Relational Cloud. Nevertheless, Relational Cloud overcomes this hurdle as it allows arbitrary placement of new database or workloads on some designated nodes for applications.