Future of databases.
The relation database model began to emerge in the 1970s and quickly gained traction. Over time, database expectations have stretched beyond relational models to include non-relational database technology. Over the past few years, alternative database technologies such as NoSQL and Cloud databases have surfaced.
NoSQL Database.
NoSQL Database is a non-relational Data Management System, that does not require a fixed schema. It avoids joins, and is easy to scale. The major purpose of using a NoSQL database is for distributed data stores with humongous data storage needs. NoSQL is used for Big data and real-time web apps. For example, companies like Twitter, Facebook and Google collect terabytes of user data every single day.
Cloud Database.
A cloud database is a database that typically runs on a cloud computing platform, and access to the database is provided as-a-service. It serves many of the same functions as a traditional database with the added flexibility of cloud computing. Users install software on a cloud infrastructure to implement the database.
Key features:
- A database service built and accessed through a cloud platform.
- Enables enterprise users to host databases without buying dedicated hardware.
- Can be managed by the user or offered as a service and managed by a provider.
- Can support relational databases (including MySQL and PostgreSQL) and NoSQL databases (including MongoDB and Apache CouchDB).
- Accessed through a web interface or vendor-provided API.
Top 7 cloud databases:
- Amazon Web Service (AWS)
- Oracle Database
- Microsoft Azure
- Google Cloud Platform
- IBM DB2
- MongoDB Atlas
- OpenStack
Distributed databases.
A distributed database is a database in which data is stored across different physical locations. It may be stored in multiple computers located in the same physical location (e.g. a data Centre) or maybe dispersed over a network of interconnected computers. There are two types of distributed databases.
1.Homogeneous Database:
In a homogeneous database, all different sites store database identically. The operating system, database management system and the data structures used all are same at all sites. Hence, they’re easy to manage.
2. Heterogeneous Database:
In a heterogeneous distributed database, different sites can use different schema and software that can lead to problems in query processing and transactions. Also, a particular site might be completely unaware of the other sites. Different computers may use a different operating system, different database application. They may even use different data models for the database. Hence, translations are required for different sites to communicate.
Key features:
- Databases in the collection are logically interrelated with each other. Often they represent a single logical database.
- Data is physically stored across multiple sites. Data in each site can be managed by a DBMS independent of the other sites.
- The processors in the sites are connected via a network. They do not have any multiprocessor configuration.
- A distributed database is not a loosely connected file system.
- A distributed database incorporates transaction processing, but it is not synonymous with a transaction processing system.