Os DBMS, sigla inglesa de Database Management Systems, que em português significa literalmente Sistemas de Gestão de Bases de Dados, são sistemas concebidos em simultâneo com os MIS (Management Information Systems) e que, tal como o próprio nome indica, fazem a gestão dos dados armazenados em bases de dados electrónicas. Os DBMS podem ser suportados por diferentes tipo de arquitecturas informáticas e que vão desde as pequenas redes locais até aos grandes sistemas distribuídos.
Um DBMS é um software de sistema para criar e gerir bases de dados. Ele fornece aos utilizadores e programadores uma forma sistemática para criar, recuperar, atualizar e gerir dados.
Um DBMS torna possível para os utilizadores finais conseguirem criar, ler, atualizar e excluir dados de uma base de dados. Ele serve essencialmente como uma interface entre as bases de dados e os utilizadores finais ou programas, e garantem que os dados são consistentemente organizados e permanecem facilmente acessíveis.
O DBMS administra três coisas importantes: os dados, a base de dados que permite que os dados sejam acedidos e modificados e o esquema da base de dados, que define a estrutura lógica da base de dados. Estes três elementos fundamentais ajudam a fornecer simultaneidade, segurança, integridade de dados e procedimentos de administração uniformes. As tarefas de administração de uma base de dados típica suportadas pelo DBMS incluem a gestão de mudanças, monitorização do desempenho, e backup e recuperação. Muitos sistemas de gestão de base de dados também são responsáveis por restauros automáticos e recuperação, bem como a auditoria de uma atividade.
O DBMS é, talvez, mais útil para fornecer uma visão centralizada dos dados que podem ser acedidos por vários utilizadores, a partir de vários locais, de forma controlada. Ele pode limitar os dados que o utilizador final vê, bem como a forma que ele pode visualizar os dados, fornecendo muitos pontos de vista de um único esquema de base de dados. Os utilizadores finais e programas de software são livres de entender onde os dados estão fisicamente localizados ou em que tipo de armazenamento reside porque o DBMS lida com todas as solicitações.
O DBMS pode oferecer independência de dados lógicos e físicos. Isso significa que pode proteger os utilizadores e aplicações da necessidade de saber onde os dados são armazenados ou ter que se preocupar com mudanças na estrutura física dos dados. Enquanto os programas usam a interface de programação de aplicações (API) para a base de dados que é fornecida pelo DBMS, os programadores não terão de modificar os programas só porque as alterações foram feitas na base de dados.
Com os DBMS relacionais (RDBMS), este API é o SQL (Structured Query Language ou Linguagem de Consulta Estruturada ), uma linguagem de programação padrão para definir, proteger e aceder aos dados num RDBMS.
Vantagens de um DBMS
Ao usar um DBMS para armazenar e gerir dados vem com vantagens. Uma das maiores vantagens da sua utilização é que ele permite que os utilizadores finais e programadores de aplicativos possam aceder e usar os mesmos dados enquanto controlam a integridade dos dados. Os dados são melhor protegidos e mantidos quando eles podem ser partilhados ao usar um DBMS em vez de criar novas iterações dos mesmos dados armazenados nos novos ficheiros para cada nova aplicação. Ele fornece um armazenamento central de dados que pode ser acedido por vários utilizadores de uma maneira controlada.
O armazenamento e gestão de dados dentro do DBMS fornece:
- Abstração e independência de dados
- Segurança dos dados
- Um mecanismo de bloqueio para o acesso em simultâneo
- Um manipulador eficiente para equilibrar as necessidades de vários aplicativos que usam os mesmos dados
- A capacidade de recuperar rapidamente de falhas e erros, incluindo a reinicialização e a recuperação
- Capacidade de integridade dos dados
- Registo e auditoria da atividade
- Acesso simples ao utilizar uma API
- Procedimentos administrativos uniformes para os dados
Outra vantagem de um DBMS é que ele pode ser utilizado para impor uma lógica e organização estruturada dos dados. Ele proporciona uma economia de tempo para processar grandes quantidades de dados porque ele é otimizado para essas operações.
O DBMS fornece um nível de abstração entre o esquema que define a estrutura lógica da base de dados e o esquema físico que descreve os ficheiros, índices e outros mecanismos físicos utilizados pela base de dados. Quando um DBMS é usado, os sistemas podem ser modificados muito mais facilmente quando as necessidades de negócio mudam. As novas categorias de dados podem ser adicionados à base de dados sem interromper o sistema existente, e os aplicativos podem ser isolados a partir de como os dados são estruturados e armazenados.
Um DBMS deve realizar um trabalho adicional para fornecer estas vantagens. Ele vai usar mais memória e CPU do que um sistema de armazenamento de ficheiros simples. E, claro, diferentes tipos de DBMS irão requerer diferentes tipos e níveis de recursos do sistema.