Database as a Service (DBaaS):-Database as a service (DBaaS) is a cloud computing service model that provides users with some form of access to a database without the need for setting up physical hardware, installing software or configuring for performance. All of the administrative tasks and maintenance are taken care of by the service provider so that all the user or application owner needs to do is use the database. Of course, if the customer opts for more control over the database, this option is available and may vary depending on the provider.
A cloud database is a collection of informational content, either structured or unstructured, that resides on a private, public or hybrid cloud computing infrastructure platform. From a structural and design perspective, a cloud database is no different than one that operates on a business’s own on-premises servers. The critical difference lies in where the database resides.
A cloud database resides on servers and storage furnished by a cloud or database as a service (DBaaS) provider and it is accessed solely through the internet. A cloud database may be a traditional database such as Sql server datbase or My SQL . For example:- Amazon SimpleDB , Microsoft SSDS(SQL Server Data Service).
DBaaS consists of a database manager component, which controls all underlying database instances via an API.
This API is accessible to the user via a management console, usually a web application, which the user may use to manage and configure the database and even provision or deprovision database instances.
Data base as services Model
Name of Cloud Database
- Amazon Relational Database Service
- Amazon Aurora, MySQL based service
- Clustrix Database as a Service
- EnterpriseDB Postgres Plus Cloud Database
- Google Cloud SQL
- Heroku PostgreSQL as a Service (shared and dedicated database options)
- Oracle Database Cloud Service
- Microsoft Azure SQL Database (MS SQL)
- Amazon DynamoDB
- Amazon SimpleDB
- Azure Cosmos DB
- Cloudant Data Layer (CouchDB)
- EnterpriseDB Postgres Plus Cloud Database
- Google Cloud Bigtable
- Google Cloud Datastore
- MongoDB Database as a Service (several options)
- Oracle NoSQL Database Cloud Service
Deployment Model of Cloud Database
Cloud databases, like their traditional ancestors, can be divided into two broad categories:
1. Relational Database
2.Non relational Database.
1. Relational Database :-
A relational database is organized based on the relational model of data, as proposed by E.F. Codd in 1970. This model organizes data into one or more tables (or “relations”) of rows and columns, with a unique key for each row.
A relational database, typically written in structured query language (SQL), is composed of a set of interrelated tables that are organized into rows and columns.
The relationship between tables and columns (fields) is specified in a schema. SQL databases, by design, rely on data that is highly consistent in its format , such as banking transactions or a telephone directory. Popular cloud platforms and cloud providers include MySQL, Oracle, IBM DB2 and Microsoft SQL Server.
Some cloud platforms such as MySQL are open sourced.
1) Relational databases, which can also be called relational database management systems (RDBMS) or SQL databases. The most popular of these are Microsoft SQL Server, Oracle Database, MySQL, and IBM DB2. These RDBMS’s are mostly used in large enterprise scenarios, with the exception of MySQL, which is mostly used to store data for web applications, typically as part of the popular LAMP stack (Linux, Apache, MySQL, PHP/ Python/ Perl).
2. Non-relational Database.
Non-relational databases, sometimes called NoSQL, do not employ a table model. Instead, they store content, regardless of its structure, as a single document. This technology is well-suited for unstructured data, such as social media content, photos and videos.
2) Non-relational databases, also called NoSQL databases, the most popular being MongoDB, DocumentDB, Cassandra, Coachbase, HBase, Redis, and Neo4j. These databases are usually grouped into four categories: Key-value stores, Graph stores, Column stores, and Document stores. NoSQL is simply the term that is used to describe a family of databases that are all non-relational. While the technologies, data types, and use cases vary wildly amount them, it is generally agreed that there are four types of NoSQL databases:
1. Key-value stores – These databases pair keys to values. An analogy is a files system where the path acts as the key and the contents act as the file. There are usually no fields to update, instead, the entire value other than the key must be updated if changes are to be made.
2. Graph stores – These excel at dealing with interconnected data. Graph databases consist of connections, or edges, between nodes. Both nodes and their edges can store additional properties such as key-value pairs.
3. Column stores – Relational databases store all the data in a particular table’s rows together on-disk, making retrieval of a particular row fast.
4. Document stores – These databases store records as “documents” where a document can generally be thought of as a grouping of key-value pairs (it has nothing to do with storing actual documents such as a Word document). Keys are always strings, and values can be stored as strings, numeric, Booleans, arrays, and other nested key-value pairs. Values can be nested to arbitrary depths.