Banco de Dados

Introdução

Banco de dados é uma coleção organizada de dados/informações. São os dados em si.
SGBD é um Sistemas Gerenciador de Banco de Dados, por exemplo: MySQL, MariaDB, MongoDB, Oracle, Firebird, etc.
Modelo é a forma como os dados são estruturados.

Modelos de Banco de dados

Modelo Relacional - SQL

O modelo relacional foi proposto por Edgar Codd na década de 60, inicio do uso de computadores no mundo corporativo.
A grosso modo, é uma planilha gigante.
A Linguagem SQL foi desenvolvida por Donald D. Chamberlin and Raymond F. Boyce na IBM na década de 70.
Linguagem de consulta: SQL (Structured Query Language), inicialmente SEQUEL (Structured English Query Language).
Objetivo é manter os dados organizados de forma estruturada e permitir consultas e manipulações de forma simplificada.
Escala: Vertical.
Schema: Rigido e pré-definido.
MER - Modelo entidade relacionamento: Entity-relationship model - ERM
Modelo de entidade-relacionamento descreve coisas inter-relacionadas de interesse em um domínio específico de conhecimento. Um modelo ER básico é composto de tipos de entidade e especifica relacionamentos que podem existir entre as entidades. São diagramas usados para modelar e projetar Bancos de Dados Relacionais.
DER, é a implementação do MER, representação gráfica do modelo MER.

Modelo Não Relacional - NoSQL

Surgiram em 1998, eram relacionais, mas não usavam SQL.
Ressurgiram em 2009, não relacionais, devido ao grande volume de dados.
NoSQL é uma abreviação de Not only SQL, que significa não somente SQL.
Há uma grande variedade de tipos e objetivos diferentes, onde o ponto em comum é não serem relacionais.
Atualmente, ambas as tecnologias são utilizadas, muitas vezes em conjunto.
Linguagem de consulta: Não tem uma forma padrão, há diversas implementações.
Escala: Horizontal.
Schema: Free ou quase free.