Cloud Native:

Cloud native technologies empower organizations to build and run scalable applications in modern, dynamic environments such as public, private, and hybrid clouds. Containers, service meshes, microservices, immutable infrastructure, and declarative APIs exemplify this approach.

These techniques enable loosely coupled systems that are resilient, manageable, and observable. Combined with robust automation, they allow engineers to make high-impact changes frequently and predictable with minimum toil.

When there are this many adjectives in a definition, you know you have entered the realm of marketing. Cloud providers are the creators of all things cloud native in a strange sort of way. They all promise to deliver a solution to a problem. They are quite popular at this time.


Information that is organized in some sort of related manner is a database. This is a loose definition that covers electronic and traditional storage.

In order to have an accurate and reliable data for effective decision making you need to record the various details. These details can be used to model a process that captures the essential properties of the data. It is useful but not always essential to perfectly relate or define the data. This collection of organized data is called a database.

Database Management System (DBMS):

Database Management System is a software system that allows access to data contained in a database. The objective of the DBMS is to provide a convenient and effective method of defining, storing, and retrieving the information contained in the database.

This term refers to software like Oracle DB, MS SQL DB, MySQL DB etc… I think the key qualities are convenient and effective.

Data Manipulation Language (DML)

The language used to manipulate data in the database is called data manipulation language (DML). Data manipulation involves retrieval of data from the database, insertion of the new data into the database, and deletion or modification of existing data.

It is important to understand that these commands are very reliable. Commands that modify the structure of a table or create new objects is not as reliable for different reasons.

I am mentioning this because I often find SQL code that includes creation of indexes followed by large queries. Or creation of some tables in order to reorganize data. These commands fall under the realm of data definition language and can fail for different reasons related to the allocation of physical resources on the machine that are difficult to plan for.

Database System:

A database system is an integrated collection of related files, along with details of the interpretation of the data contained therein.

I think the important part of this definition is “the details of the interpretation”. You can have a database but without some documentation and diagrams it should be considered incomplete.


Entities are the basic unit used in modeling classes of concrete or abstract objects.

Basically an entity can have a concrete existence or be an idea or concept. During the design of a new system it is always difficult to define entities correctly.

%d bloggers like this: