Pesquisa · Mapa mental

Banco de dados

Na informática, banco de dados (português brasileiro) ou base de dados (português europeu) é um conjunto de arquivos ou dados relacionados, contendo registros sobre pessoas, lugares ou informações em geral, normalmente acessíveis de maneira eletrônica. É um tipo de armazenamento de dados baseado no uso de um sistema de gerenciamento de banco de dados (DBMS) - um software que interage com usuários finais, aplicativos e com o próprio banco de dados, para captura e análise. O DBMS também abrange os recursos essenciais fornecidos para administrar o banco de dados. A soma total do banco de dados, do DBMS e dos aplicativos associados pode ser chamada de sistema de banco de dados. Muitas vezes, o termo "banco de dados" também é usado de forma vaga para se referir a qualquer DBMS, sistema de banco de dados ou um aplicativo associado ao banco de dados.

Fonte: Wikipédia (pt)Atualizado em 10/07/2026
01

História

Diante da necessidade humana de registrar os eventos e informações relevantes, foram criadas diversas técnicas com esse fim. Técnicas, como pinturas pré-históricas, hieróglifos, escrita cuneiforme e, posteriormente, a própria escrita alfabética, foram usadas como meios para registrar dados. Com a invenção do papel em meados de 105 d.C. e, posteriormente, no âmbito ocidental, da prensa móvel de Gutenberg, as tecnologias de impressão evoluíram muito, especialmente a partir do século XV, quando o papel passou a ser o meio físico mais comum de registro de informações. Essa herança fez com que no início da era computacional, se usasse o papel perfurado e, depois, o cartão perfurado em máquinas, ambos idealizados por Herman Hollerith, fundador da International Business Machines (IBM). O uso do papel como um meio indispensável de armazenamento pode ser encontrado em bancos de dados não computadorizados, como ocorre com arquivos de aço, fichas e pastas.

02

Sistemas Gerenciadores de Banco de Dados (SGBDs) e seus modelos

Existem vários modelos de bases de dados: Modelo Plano (ou tabular), Modelo de Memória Transacional, Modelo em Rede, Modelo Hierárquico, Modelo Relacional, Orientado a objetos e Objeto Relacional.

03

Bases de dados relacionais

Diferentemente dos modelos hierárquico e de rede, não existem quaisquer apontadores, de acordo com o Princípio da Informação: toda a informação deve ser representada como dados; qualquer tipo de atributo representa relações entre conjuntos de dados. As bases de dados relacionais permitem aos utilizadores (incluindo programadores) escrever consultas (queries) que não foram antecipadas por quem projetou a base de dados. Como resultado, bases de dados relacionais podem ser utilizadas por várias aplicações em formas que os projetistas originais não previram, o que é especialmente importante em bases de dados que são utilizadas por longos períodos. Isto torna as bases de dados relacionais muito populares no meio empresarial. O modelo relacional é uma teoria matemática desenvolvida por Edgar Frank Codd para descrever como as bases de dados devem funcionar. Embora esta teoria seja a base para o software de bases de dados relacionais, poucos sistemas de gestão de bases de dados seguem integralmente as 12 leis do modelo relacional. Todos têm funcionalidades que violam a teoria, desta forma variando a complexidade e o poder.

04

Aplicações de bancos de dados

Imagem: Teles Maciel · BY · Openverse

Sistemas Gerenciadores de Bancos de Dados são usados em muitas aplicações, abrangendo virtualmente a gama inteira de software de computador. Os Sistemas Gerenciadores de Bancos de Dados são o método preferido de armazenamento e recuperação de dados/informações para aplicações multiusuários grandes, onde a coordenação entre os usuários é necessária. Até mesmo usuários individuais os consideram convenientes, entretanto, muitos programas de correio eletrônico e organizadores pessoais estão baseados em tecnologia de banco de dados padrão.

05

Transação

Imagem: Improve It · BY-SA · Openverse

Uma transação é um conjunto de procedimentos, executados num banco de dados, que o usuário percebe como uma única ação. A integridade de uma transação depende de quatro propriedades, conhecidas como ACID: A transação possui os seguintes estados:

06

Controle de concorrência

Imagem: Improve It · BY-SA · Openverse

Controle de concorrência é um método usado para garantir que as transações sejam executadas de forma segura e sigam as regras ACID. Os SGBD devem ser capazes de assegurar que nenhuma ação de transações completadas com sucesso (committed transactions) seja perdida ao desfazer transações abortadas (rollback). Uma transação é uma unidade que preserva consistência. Requer-se, portanto, que qualquer escalonamento produzido ao processar um conjunto de transações concorrentemente seja computacionalmente equivalente a um escalonamento produzido executando essas transações serialmente em alguma ordem. Um sistema que garante esta propriedade assegura a serialização.

07

Bloqueio

Imagem: Tribunal de Justiça do Estado do Amapá - TJAP · BY-SA · Openverse

Em vez de bloquear (blocking) um banco de dados inteiro, uma transação pode bloquear apenas os itens de dados que ela acessa. Sobre tal política, a transação precisa manter bloqueios por tempo suficiente para garantir a serialização, mas por um período curto o suficiente para não prejudicar o desempenho excessivamente.

08

Segurança

Imagem: Tribunal de Justiça do Estado do Amapá - TJAP · BY-SA · Openverse

Os bancos de dados são utilizados para armazenar diversos tipos de informações, desde dados sobre uma conta de e-mail até dados importantes da Receita Federal. A segurança do banco de dados enfrenta as mesmas dificuldades que a segurança da informação enfrenta, que é garantir a integridade, a disponibilidade e a confidencialidade. Um sistema gerenciador de banco de dados deve fornecer mecanismos que auxiliem nesta tarefa. Uma forma comum de ataque à segurança do banco de dados é injeção de SQL, em bancos de dados que utilizam essa linguagem, mas bancos de dados NoSQL também podem ser vítimas. Para evitar estes ataques, o desenvolvedor de aplicações deve garantir que nenhuma entrada possa alterar a estrutura da consulta enviada ao sistema. Bancos de dados SQL implementam mecanismos que restringem ou permitem acesso aos dados de acordo com papéis (roles) fornecidos pelo administrador. O comando GRANT concede privilégios específicos para um objeto (tabela, visão, banco de dados, função, linguagem procedimental, esquema ou espaço de tabelas) para um ou mais usuários ou grupos de usuários.

09

Falhas

Imagem: Tribunal de Justiça do Estado do Amapá - TJAP · BY-SA · Openverse

Em um banco de dados podem ocorrer falhas: de transação, de sistema ou de mídia. A falha de transação, que é a mais comum, é aquela em que a transação é finalizada irregularmente (abruptamente), normalmente por falta de dados necessários ou programação equivocada. A falha de sistema, que tem probabilidade de ocorrência mediana, ocorre quando a execução do sistema é interrompida por causa de problemas como falta de energia, falha no hardware ou mau funcionamento do sistema operacional. Em uma falha de mídia, o banco de dados não fica plenamente acessível, fazendo com que parte do disco perca dados. Normalmente, ocorre devido a disfunções na leitura ou a partes do disco danificadas.

10

Recuperação

Imagem: Tribunal de Justiça do Estado do Amapá - TJAP · BY-SA · Openverse

Existem alguns mecanismos capazes de permitir a recuperação de um banco de dados de algumas inconsistências causadas por falhas internas (erros de consistência, como recuperação de um estado anterior a uma transação que deu erro) e externas (queda de energia, catástrofe ambiental). Entretanto, não é um método 100% seguro. Os mecanismos mais comuns são o Log de dados, que é usado em conjunto com outros métodos; utilização de Buffer no qual, apesar de normalmente ser feito pelo próprio sistema operacional, é controle por rotinas de baixo nível pelo Sistema de gerenciamento de banco de dados. Possui também as possibilidades de Write-ahead logging (WAL) e informações das transações possibilitando o REDO (refazer) e o UNDO (desfazer), assim sempre possibilitando a volta do banco de dados a um estado anterior consistente, além de cópias de sombra dos logs e dos últimos dados alterados do banco de dados.

Vídeos recomendados

Fontes consultadas

Continue pesquisando