O que são dados?
Os dados são uma coleção de uma pequena unidade distinta de informações. Ele pode ser usado em uma variedade de formas, como texto, números, mídia, bytes, etc., pode ser armazenado em pedaços de papel ou memória eletrônica, etc.
A palavra 'Dados' é originada da palavra 'dado' que significa 'peça única de informação'. É plural da palavra dado.
Na computação, dados são informações que podem ser traduzidas em um formato para movimentação e processamento eficientes. Os dados são intercambiáveis.
O que é banco de dados?
A base de dados é uma coleção organizada de dados, para que possam ser facilmente acessados e gerenciados.
Você pode organizar os dados em tabelas, linhas, colunas e indexá-los para facilitar a localização de informações relevantes.
Manipuladores de banco de dados criar um banco de dados de forma que apenas um conjunto de programas de software forneça acesso aos dados a todos os usuários.
O Propósito principal do banco de dados é operar uma grande quantidade de informações armazenando, recuperando e gerenciando dados.
Existem muitos sites dinâmicos na World Wide Web hoje em dia, que são tratados através de bancos de dados. Por exemplo, um modelo que verifica a disponibilidade de quartos de um hotel. É um exemplo de site dinâmico que utiliza um banco de dados.
Existem muitos bancos de dados disponíveis como MySQL, Sybase, Oracle, MongoDB, Informix, PostgreSQL, SQL Server, etc.
Os bancos de dados modernos são gerenciados pelo sistema de gerenciamento de banco de dados (SGBD).
SQL ou Structured Query Language é usada para operar nos dados armazenados em um banco de dados. SQL depende de álgebra relacional e cálculo relacional de tupla.
Uma estrutura cilíndrica é usada para exibir a imagem de um banco de dados.
Evolução dos bancos de dados
O banco de dados completou mais de 50 anos de jornada de sua evolução, desde sistemas de arquivos simples até sistemas relacionais e relacionais de objetos. Atravessou várias gerações.
A evolução
Baseado em arquivo
1968 foi o ano em que o banco de dados baseado em arquivo foi introduzido. Em bancos de dados baseados em arquivos, os dados eram mantidos em um arquivo simples. Embora os arquivos tenham muitas vantagens, existem várias limitações.
Uma das principais vantagens é que o sistema de arquivos possui vários métodos de acesso, por exemplo, sequencial, indexado e aleatório.
Requer programação extensa em uma linguagem de terceira geração, como COBOL, BASIC.
Modelo de dados hierárquico
1968-1980 foi a era do Banco de Dados Hierárquico. O modelo de banco de dados hierárquico proeminente foi o primeiro SGBD da IBM. Chamava-se IMS (Sistema de Gerenciamento de Informações).
Neste modelo, os arquivos são relacionados de maneira pai/filho.
O diagrama abaixo representa o modelo de dados hierárquico. O pequeno círculo representa objetos.
Assim como o sistema de arquivos, este modelo também tinha algumas limitações, como implementação complexa, falta de independência estrutural, não consegue lidar facilmente com relacionamentos muitos-muitos, etc.
Modelo de dados de rede
Carlos Bachman desenvolveu o primeiro SGBD na Honeywell chamado Integrated Data Store (IDS). Foi desenvolvido no início da década de 1960, mas foi padronizado em 1971 pelo grupo CODASYL (Conference on Data Systems Languages).
Neste modelo, os arquivos são relacionados como proprietários e membros, como no modelo de rede comum.
O modelo de dados de rede identificou os seguintes componentes:
- Esquema de rede (organização de banco de dados)
- Subesquema (visualizações do banco de dados por usuário)
- Linguagem de gerenciamento de dados (procedural)
Este modelo também tinha algumas limitações como complexidade do sistema e dificuldade de projetar e manter.
Banco de dados relacional
1970 - Presente: É a era do banco de dados relacional e do gerenciamento de banco de dados. Em 1970, o modelo relacional foi proposto por EF Codd.
O modelo de banco de dados relacional possui duas terminologias principais chamadas instância e esquema.
opacidade de transição css
A instância é uma tabela com linhas ou colunas
O esquema especifica a estrutura como nome da relação, tipo de cada coluna e nome.
Este modelo usa alguns conceitos matemáticos como teoria dos conjuntos e lógica de predicados.
O primeiro aplicativo de banco de dados da Internet foi criado em 1995.
Durante a era do banco de dados relacional, muitos outros modelos foram introduzidos, como modelo orientado a objetos, modelo relacional a objetos, etc.
Banco de dados em nuvem
O banco de dados em nuvem facilita o armazenamento, o gerenciamento e a recuperação de dados estruturados e não estruturados por meio de uma plataforma em nuvem. Esses dados são acessíveis pela Internet. Os bancos de dados em nuvem também são chamados de banco de dados como serviço (DBaaS) porque são oferecidos como um serviço gerenciado.
Algumas das melhores opções de nuvem são:
- AWS (Amazon Web Services)
- Computação Floco de Neve
- Serviços em nuvem do banco de dados Oracle
- Servidor Microsoft SQL
- Chave inglesa de nuvem do Google
Vantagens do banco de dados em nuvem
Custos mais baixos
Geralmente, a empresa fornecedora não precisa investir em bancos de dados. Pode manter e dar suporte a um ou mais data centers.
Automatizado
Os bancos de dados em nuvem são enriquecidos com uma variedade de processos automatizados, como recuperação, failover e escalonamento automático.
Maior acessibilidade
Você pode acessar seu banco de dados baseado em nuvem de qualquer local, a qualquer hora. Tudo que você precisa é apenas uma conexão com a internet.
Banco de dados NoSQL
Um banco de dados NoSQL é uma abordagem para projetar bancos de dados que podem acomodar uma ampla variedade de modelos de dados. NoSQL significa 'não apenas SQL'. É uma alternativa aos bancos de dados relacionais tradicionais nos quais os dados são colocados em tabelas e o esquema de dados é perfeitamente projetado antes da construção do banco de dados.
Os bancos de dados NoSQL são úteis para um grande conjunto de dados distribuídos.
Alguns exemplos de sistema de banco de dados NoSQL com sua categoria são:
- MongoDB, CouchDB, Cloudant (Baseado em documento)
- Memcached, Redis, Coerência (armazenamento de valores-chave)
- HBase, Tabela Grande, Acumulação (Tabular)
Vantagem do NoSQL
Alta escalabilidade
O NoSQL pode lidar com uma grande quantidade de dados devido à escalabilidade. Se os dados crescerem, o banco de dados NoSQL os dimensionará para lidar com esses dados de maneira eficiente.
Alta disponibilidade
NoSQL oferece suporte à replicação automática. A replicação automática torna-a altamente disponível porque, em caso de falha, os dados se replicam para o estado consistente anterior.
Desvantagem do NoSQL
Código aberto
NoSQL é um banco de dados de código aberto, portanto ainda não existe um padrão confiável para NoSQL.
Desafio de gestão
O gerenciamento de dados em NoSQL é muito mais complicado do que em bancos de dados relacionais. É muito desafiador instalar e ainda mais agitado gerenciar diariamente.
GUI não está disponível
Ferramentas GUI para banco de dados NoSQL não estão facilmente disponíveis no mercado.
Cópia de segurança
O backup é um grande ponto fraco para bancos de dados NoSQL. Alguns bancos de dados, como o MongoDB, não possuem abordagens poderosas para backup de dados.
Os bancos de dados orientados a objetos
Os bancos de dados orientados a objetos contêm dados na forma de objetos e classes. Os objetos são a entidade do mundo real e os tipos são a coleção de objetos. Um banco de dados orientado a objetos é uma combinação de recursos de modelo relacional com princípios orientados a objetos. É uma implementação alternativa ao modelo relacional.
Os bancos de dados orientados a objetos contêm as regras da programação orientada a objetos. Um sistema de gerenciamento de banco de dados orientado a objetos é um aplicativo híbrido.
O modelo de banco de dados orientado a objetos contém as seguintes propriedades.
Propriedades de programação orientada a objetos
- Objetos
- Aulas
- Herança
- Polimorfismo
- Encapsulamento
Propriedades do banco de dados relacional
- Atomicidade
- Consistência
- Integridade
- Durabilidade
- Simultaneidade
- Processamento de consulta
Bancos de dados gráficos
Um banco de dados gráfico é um banco de dados NoSQL. É uma representação gráfica de dados. Ele contém nós e arestas. Um nó representa uma entidade e cada aresta representa um relacionamento entre duas arestas. Cada nó em um banco de dados gráfico representa um identificador exclusivo.
Os bancos de dados gráficos são benéficos para pesquisar a relação entre os dados porque destacam a relação entre os dados relevantes.
Os bancos de dados gráficos são muito úteis quando o banco de dados contém um relacionamento complexo e um esquema dinâmico.
É usado principalmente em gestão da cadeia de abastecimento , identificando a fonte de Telefonia IP .
SGBD (sistema de gerenciamento de banco de dados)
Sistema de gerenciamento de banco de dados é um software usado para armazenar e recuperar o banco de dados. Por exemplo, Oracle, MySQL, etc.; estas são algumas ferramentas populares de DBMS.
- DBMS fornece a interface para realizar várias operações como criação, exclusão, modificação, etc.
- DBMS permite ao usuário criar seus bancos de dados conforme sua necessidade.
- O SGBD aceita a solicitação do aplicativo e fornece dados específicos por meio do sistema operacional.
- SGBD contém o grupo de programas que atuam de acordo com as instruções do usuário.
- Ele fornece segurança ao banco de dados.
Vantagem do SGBD
Controla a redundância
Ele armazena todos os dados em um único arquivo de banco de dados, para poder controlar a redundância de dados.
Compartilhamento de dados
Um usuário autorizado pode compartilhar os dados entre vários usuários.
Cópia de segurança
Ele fornece subsistema de backup e recuperação. Este sistema de recuperação cria dados automáticos de falhas do sistema e restaura os dados, se necessário.
Múltiplas interfaces de usuário
Ele fornece um tipo diferente de interfaces de usuário, como GUI e interfaces de aplicativos.
Desvantagem do SGBD
Tamanho
int para string c++
Ocupa grande espaço em disco e grande memória para funcionar com eficiência.
Custo
O SGBD requer um processador de dados de alta velocidade e maior memória para executar o software SGBD, por isso é caro.
Complexidade
O DBMS cria complexidade e requisitos adicionais.
RDBMS (sistema de gerenciamento de banco de dados relacional)
A palavra RDBMS é denominada 'Sistema de gerenciamento de banco de dados relacional'. É representado como uma tabela que contém linhas e colunas.
O RDBMS é baseado no modelo Relacional; foi apresentado por EF Codd.
Um banco de dados relacional contém os seguintes componentes:
- Mesa
- Registro/Tupla
- Nome do campo/coluna/Atributo
- Instância
- Esquema
- Chaves
Um RDBMS é um SGBD tabular que mantém a segurança, integridade, precisão e consistência dos dados.