Cloud Databases 101

This post explores the function, purpose, and utility of cloud databases. There are many advantages of cloud databases and this article will help you to identify the criteria for determining the database service that will best suite your needs.

TABLE OF CONTENTS
  1. Why have a database?
  2. Why go online for a database?
  3. What features should we check when looking for a cloud database?
  4. Database type used
  5. User access controls
  6. Ability to import data from diverse file formats
  7. Integration
  8. Built-in analytics
  9. Machine learning
  10. Pricing
  11. Customer support
  12. References
Table of contents
Chapter 1
Chapter 2
Chapter 3
  1. Why have a database?
  2. Why go online for a database?
  3. What features should we check when looking for a cloud database?
  4. Database type used
  5. User access controls
  6. Ability to import data from diverse file formats
  7. Integration
  8. Built-in analytics
  9. Machine learning
  10. Pricing
  11. Customer support
  12. References

Cloud? Database? 

You might already have an idea about both of these words, but have you heard of a cloud database

A cloud database combines the accessibility of cloud computing and the robustness of storing data in a database. 

In this article, we talk about cloud databases, why you should seriously consider getting one for your business, and what you should look for when choosing a cloud database service to subscribe to.

Why have a database?

A mainframe containing a database stored in magnetic tapes.
A mainframe containing a database stored in magnetic tapes. Image source

There is a large amount of data that we need to store and process (and store again) once we begin doing digital marketing and e-Commerce for our brand. To solve this, we need to have our own database. 

Nowadays, the word database refers to both the collection of data and the application maintaining it. The word database (as an application) is a shorthand for database management system (DBMS). Databases mainly rose to fulfill the need for a system of storing large amounts of data while being able to retrieve them fairly quickly. 

Databases contain several features that make them distinct from other systems that can also store data such as spreadsheets. Database Design, an open textbook, lists the following features:

  1. Self-describing nature of a database system - a database contains both the data and the description of the stored data, called the metadata. It allows several applications to use and process this information. 
  2. Insulation between program and data - modifying the stored data does not require modifying the programs that access it.
  3. Support for multiple views of data - multiple users can view different portions of the data depending on what they need at that moment
  4. Sharing of data and multiuser system - multiple users can access the same database.
  5. Control of data redundancy - each data item is stored once in one portion of the database, thus preventing duplicates from distorting the data analysis.
  6. Data sharing - the data is integrated, allowing data sharing and even adding new data from several users at the same time.
  7. Enforcement of integrity constraints - databases have built-in tools to validate and ensure consistency of the data before adding them to the system.
  8. Restriction of unauthorized access - databases allow various levels of access to the data among users. This means a user can have read-only access while another one can have read-and-write access.
  9. Data independence - the data is stored separate from the programs used to access it.
  10. Transaction processing - systems are in place to keep the data consistent and valid the whole time, especially during transactions, where several users might be updating the same information over the same period.
  11. Provision for multiple views of data - multiple users can access the database at the same time.
  12. Backup and recovery facilities - a database has tools to regularly and seamlessly back up the data and restore them whenever the database fails. 

Finally, databases can easily be scaled up to handle greater amounts of data, a necessary requirement in data-intensive processes such as data analysis.

Why go online for a database?

Databases are often accessible online.
Databases are often accessible online. Image source

Databases were being developed at the same time as modern computer systems. The earliest databases were stored in mainframes that occupy large rooms and can only be accessed by a specialized computer located in that same room. These systems could only be used by large companies and institutions as they are quite expensive. Eventually, with the development of personal computers, it is now possible to host the database in a separate mainframe in a separate room. The database can then be accessed through the local network.

Today, we have high-speed internet that we can use to access websites hosted on the other side of the world. The question is, why not access the database online? It is now possible. There are tools that allow you to give the database an IP address or a URL that you can access from your home. However, these tools still require you to buy a computer system that will host your database, not to mention the need to configure the system to keep it secure from hackers. 

Why not...subscribe to an online database service? 

Fortunately, these services now exist!

You can now subscribe to online databases where you do not even need to pay for the computer system to host them, with the additional benefit of being able to access them from anywhere in the world. Your database is then hosted in a cloud. Thus, they are called cloud databases.

IBM lists the following key features of cloud databases:

  • 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

Cloud databases have three advantages:

  1. Ease of access - users can access the database from anywhere
  2. Scalability - cloud databases can be scaled up depending on the need
  3. Disaster recovery - cloud databases have robust backup and recovery systems in place in case disaster hits the data center

What features should we check when looking for a cloud database?

Modern databases can be set up in the cloud services.
Modern databases can be set up in the cloud services. Image source

If you start looking for a suitable cloud database, you may be overwhelmed with the diversity of features being marketed by different cloud database services. We list here eight considerations that you need to check when looking for a suitable cloud database service.

Database type used

Several types of databases were developed throughout the decades to suit different needs of various organizations. There are two main types of databases: relational and non-relational databases.

Relational databases are used to store structured data. This means that the structure of the data stored must be well-defined and cannot be easily altered. Relational databases are best for quickly accessing well-structured data such as sales records that are often stored in spreadsheets. The most popular example of a relational database is SQL.

Non-relational databases are used to store unstructured data. Unstructured data include files and documents. Non-relational databases have a more flexible format, and are suited for storing documents and other information that does not have a well-defined structure. Non-relational databases come in several subtypes, and that is better discussed in depth in a separate article.

You need to establish the type of data that you want to store in the database so that you can maximize the advantages of the given database type.

User access controls and security

Of course, you need to have a way of defining your users and their levels of access. You should also check the security protocols in place to keep your data safe. 

According to Data Sunrise, there are two layers of access control: authentication and authorization. Authentication involves verifying the identity of the user trying to access the database while authorization involves determining whether the user can access certain data and/or write new data on it.

A common way data is hacked involves faking the authentication and authorization to access the data stored in a database. You should check whether the user access control and security protocols being used are up-to-date and in accordance with industry standards.

Ability to import data from diverse file formats

If you have stored data in several Excel files before you move to a cloud database, chances are you had a really hard time checking the data for something you needed to find. A good cloud database will let you easily import the data from your Excel files and automatically process them to fit the structure you added to the database.

Integration

One of the most important features a cloud database must have is the ability to integrate with other cloud services such as e-Commerce and marketing platforms. A database is an integral part of any data pipeline (you can check our article on data munging). You need to check if the cloud database service enables integration with the other platforms you use, and how it is implemented. 

There are several ways to achieve integration, and we have demonstrated these in a few past tutorials:

Built-in analytics

Some cloud database services, especially those optimized for business applications, have built-in analytics that can process the data just as they are stored in the database. This is a huge boost for businesses because you can get the metrics faster than when processing them using a separate application or service such as Google Sheets. 

No-Code or Low-Code

In the age of No-Code, some cloud database services allow you to build your own database application for accessing the cloud database. This comes handy nowadays as it not only lets you build the database without requiring the skills needed in making a database, but you can also design the resulting interface to fit with your business needs.

Pricing and Customer support

Finally you need to check if they offer reasonable services and capabilities for the price given. Additionally, you should check if the cloud database in question  offers quality customer support that is easily accessible and maintains an excellent reputation.  

References

Chapter 3 Characteristics and Benefits of a Database – Database Design – 2nd Edition

Databases: Evolution and Change. A history of databases, the impact of… | by Robert Polding, PhD

Ch8-2

How to choose the right database for your enterprise

DBMS | Types of Databases - javatpoint

The Types of Modern Databases

What is Access Control in Database Security?

What Is Data Munging?


Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
SECTIONS
  1. Why have a database?
  2. Why go online for a database?
  3. What features should we check when looking for a cloud database?
  4. Database type used
  5. User access controls
  6. Ability to import data from diverse file formats
  7. Integration
  8. Built-in analytics
  9. Machine learning
  10. Pricing
  11. Customer support
  12. References