O que são banco de dados ?
Resposta Completa
Vários motivos levaram ao surgimento de bancos de dados, como eficiência, praticidade, rapidez de consulta e confiabilidade. Banco de dados é uma coleção de dados inter-relacionados, armazenados de forma organizada, que descrevem um domínio, sendo que um domínio poderia ser por exemplo os dados de uma empresa. Em outras palavras um banco de dados pode ser descrito como um conjunto lógico e ordenado de dados que possuem algum significado e que são armazenadas em um ou mais arquivos em algum dispositivo de armazenamento como pendrives, DVD's, Hard Disk, etc.
Atualmente o modelo de banco de dados mais usado é o relacional e o NoSQL, mas abaixo estão listados outros modelos que também existem ou existiram ao longo do tempo.
- Modelo de rede
- Modelo hierárquico
- Modelo relacional
- Modelo orientado a objetos
- NoSQL
Existem formas distintas de se classificar bancos de dados. Eles podem ser classificados quanto ao tipo de conteúdo, área de aplicação, estrutura, etc. Veja abaixo algumas das classificações mais comuns:
- Banco de dados em memória
- Banco de dados em nuvem
- Data warehouses ou armazém de dados
- Banco de dados distribuído
- Banco de dados orientado a documentos
- Banco de dados embarcado
- Banco de dados de grafos
- Banco de dados mobile
- Banco de dados de tempo real
- Etc.
Conceitualmente é importante saber que um banco de dados não é um sistema gerenciador de banco de dados, pois na literatura pode haver confusão entre os termos. Um SGBD é um conjunto de ferramentas e programas que tem por objetivo manipular um ou mais bancos de dados, ou seja, por meio dele bancos de dados podem ser consultados, deletados, criados, atualizados e otimizados.
Serviços comumente oferecidos por SGBD's para manipulação de banco de dados, podem ser:
- Persistência
- Linguagem de consulta SQL ou outras
- Armazenamento de metadados
- Gerenciamento de estados
- Conexão de vários usuários
- Backup de dados
- Controle de acesso
- Importação e exportação de dados
- Log de acesso
- Controle de transações e concorrência
- Análise estatística
- Otimização de query's
Resumo
Bancos de dados são coleções de dados organizadas logicamente em uma ou mais arquivos. Ao longo dos anos vários modelos como o de rede, hierárquico, NoSql, orientado a objetos e relacional surgiram, mas os mais usados são o NoSQL e relacional. Bancos de dados podem ser classificados de maneiras distintas quanto ao tipo de conteúdo, estrutura e área de aplicação e são manipulados por sistemas gerenciadores de banco de dados(SGBD's) que oferecem diversos serviços como: controle de acesso, linguagem de manipulação de dados, log de acesso, etc.