Olá, aluno(a)! Aprendemos em lições anteriores que um Sistema de Gerenciamento de Banco de Dados, ou SGBD, é um software que se comunica com esse banco, aplicativos e interfaces de usuário para obter dados e, assim, poder analisá-los. O SGBD também contém os principais instrumentos para controlar e gerenciar o banco de dados (DIAS, 2021).
Para entender a gestão desse banco, precisamos relembrar alguns conceitos já estudados e conhecer novos. Definiremos o que são dados, o que é um banco de dados, o que é o gerenciador desse banco, os seus benefícios e importância. Dessa forma, o objetivo desta lição é proporcionar a você uma introdução sobre a gestão de banco de dados, por meio da compreensão dos conceitos relativos a dados e à necessidade de gerenciamento deles. Também examinaremos as funcionalidades de um SGBD.
Nesse momento, pense que você está construindo um aplicativo (app) e começa a surgir os primeiros problemas a serem resolvidos: como armazenar seus dados? Qual banco será escolhido? Como gerenciar esses dados?
Para solucionar esses problemas, você deve pensar em um SGBD, que é um Sistema de Gerenciamento de Banco de Dados ou Sistema de Gestão de Bases de Dados (SGBD) ou, em inglês, Data Base Management System (DBMS). Ele serve para que ocorra a comunicação com o próprio banco de dados, aplicativos (apps) e interfaces de usuário e, com isso, coletar dados e analisá-los.
Para dar início, precisamos fazer uma introdução sobre a gestão de banco de dados, como ela funciona e como é usada. Preparado(a)? Então, te convido a se aprofundar neste conteúdo.
De acordo com Dias (2021, p. 8), os “dados são fatos e estatísticas armazenados ou fluindo livremente em uma rede ou sistema computacional, geralmente, são brutos e não processados”. Como exemplos, imagine um site qualquer. Quando você o visita, o seu endereço de IP pode ser armazenado, ou seja, dados, em troca, é adicionado um cookie no navegador, indicando que você visitou esse site, isso significa: dados. O site pode, também, coletar outras informações, como: nome, endereço, idade, localização, preferências, ou seja, mais dados.
Quando os dados são processados, tornam-se informações e são transformados em algo significativo às empresas. Imagine que um site é capaz de analisar esses dados com base nos dados de cookies salvos no navegador do usuário, obtendo, assim, informações úteis, por exemplo, que a maior parte das pessoas que visitam o site são mulheres solteiras de 25 a 38 anos, portanto, são informações derivadas dos dados coletados. Eles são considerados tesouros preciosos para as empresas (DIAS, 2021).
Para Dias (2021, p. 8) “por meio de uma análise profunda, é possível tirar diversas conclusões sobre os dados. Como no exemplo acima, onde a empresa, conhecendo seu público principal, pode redirecionar propagandas ou produtos que atendam ao interesse de mulheres solteiras, de 26 a 40 anos”. Isso significa que os dados são considerados verdadeiros tesouros para as empresas, pois, quando bem utilizados, geram grandes oportunidades estratégicas e sucesso nos negócios.
Você viu, anteriormente, que os dados são considerados verdadeiros tesouros para as empresas, pois eles impulsionam as tomadas de decisões diárias bem como auxiliam as empresas a concluir as suas tarefas e, principalmente, a atingir as suas metas de sucesso. Mas, para isso, é necessário ter uma gestão de banco de dados adequada.
A empresa usa um sistema de gestão de banco de dados (DBMS – Data Base Management System) que ajuda a armazenar e organizar os dados. Ele é usado para os definir e os processar e extrai-los de sistemas, aplicativos e outras ferramentas as quais a empresa usa no dia a dia (RAMAKRISHNAN; GEHRKE, 2008).
O sistema de gestão de banco de dados é um sistema de software que utiliza um método padrão para armazenar, catalogar, recuperar dados e executar as consultas deles, isto é, esse sistema gerencia e organiza todos os dados recebidos, em seguida, ajuda a eliminar riscos causados pela perda de dados ou pelos atrasos que interrompem os fluxos de trabalho.
Por ser uma plataforma, além de armazenar e organizar os dados, esse sistema cria uma única fonte de dados centralizada e que pode ser usada por todos dentro da empresa. Com os dados agrupados, fica mais fácil a combinação dos recursos de manipulação deles para realizar análises e gerar relatórios destinados a garantir o melhor uso dos dados (RAMAKRISHNAN; GEHRKE, 2008).
O gerenciamento de banco de dados continua a ganhar importância conforme mais e mais dados tornam-se disponíveis on-line e ainda mais acessíveis através da rede de computadores. Atualmente, a área está sendo impulsionada por ideais excitantes. Entre eles temos: banco de dados multimídia, vídeo interativo, fluxos de dados, bibliotecas digitais, um hospedeiro de projetos científicos, como o esforço de mapeamento do genoma humano, e o projeto de Sistema de Observação Terrestre da NASA, além do desejo das empresas de consolidar seus processos de tomada de decisão e minerar seus repositórios de dados por informações úteis sobre seus negócios. Comercialmente, os sistemas de gerenciamento de banco de dados representam um dos maiores e mais ativos segmentos de mercado (RAMAKRISHNAN; GEHRKE, 2008, p. 31).
Para você entender a necessidade e a importância de um gerenciamento de banco de dados, considere o cenário, a seguir: uma empresa possui uma grande coleção de dados, em torno de 500 TB (terabyte) armazenados sobre departamentos, produtos, vendas, funcionários, entre outros. Esses dados podem ser acessados por diversos departamentos da empresa ou pessoas interessadas, ao mesmo tempo bem como podem ser consultados de forma rápida, e as alterações realizadas neles pelos diferentes usuários devem ser aplicadas consistentemente. O acesso a determinadas partes dos dados (por exemplo, salários) precisa ser restrito (RAMAKRISHNAN; GEHRKE, 2008).
Se tentarmos gerenciar esses dados armazenando-os em arquivos do sistema operacional, teremos várias desvantagens, as quais incluem:
Agora, pensaremos no mesmo cenário, mas usando um Sistema Gerenciador de Banco de Dados. Como ele é um pacote de software projetado, ele executará mais facilmente as tarefas mencionadas no Quadro 1.
De acordo com Ramakrishnan e Gehrke (2008, p. 32), “armazenando-se dados em um SGBD em vez de em uma coleção de arquivos do sistema operacional, é possível utilizar os recursos do SGBD para gerenciar os dados de uma forma robusta e eficiente”. Pois conforme aumenta o volume de dados e o números de usuários, o suporte de um Sistema Gerenciador de Banco de Dados torna-se indispensável à empresa.
A seguir, as vantagens de usar um Sistema Gerenciador de Banco De Dados:
O SGBD provê uma visão abstrata dos dados que oculta os detalhes, pois os sistemas e aplicativos, assim como os usuários, não devem ser expostos aos detalhes de representação e armazenamento de dados.
O SGBD utiliza uma variedade de técnicas que são usadas para armazenar e recuperar dados com eficiência.
Se os dados são sempre acessados pelo SGBD, ele pode forçar restrições de integridade. No exemplo citado por Ramakrishnan e Gehrke (2008, p. 32), “antes de inserir informações sobre o salário de um funcionário, o SGBD pode verificar se o orçamento do departamento não está se excedendo”. Sendo que ele pode forçar o controle de acesso que governa quais dados estão visíveis a diferentes classes de usuários.
Quando há muitos usuários que compartilham dados, centralizar a administração destes últimos oferece, muitas vezes, melhorias significativas à organização da empresa. Para Ramakrishnan e Gehrke (2008, p. 33), compreender a “natureza dos dados sendo gerenciados, e como os diferentes grupos de usuários os utilizam, podem ser responsáveis por organizar a representação dos dados para minimizar a redundância e para realizar as sintonizações finas do armazenamento dos dados para garantir uma eficiente recuperação”.
Um SGBD tem opções para planejar o acesso concorrente aos dados de forma que os usuários achem que os dados estão sendo acessados por apenas um único usuário de cada vez. O SGBD também protege os usuários dos efeitos de falhas de sistema as quais podem ocorrer durante o uso.
Um Sistema Gerenciador de Banco de Dados suporta funções importantes comuns a vários sistemas, além de aplicativos que acessam os dados no banco.
As funções de um Sistema Gerenciador de Banco de Dados podem variar, mas os recursos e capacidades são de uso geral e, normalmente, incluem (DIAS, 2021):
Um catálogo acessível ao usuário que descreva os metadados.
Um sistema de gerenciamento de biblioteca SGBD.
Abstração e independência de dados.
Opções para a segurança de dados.
Registro e auditoria das atividades realizadas.
Suporte para simultaneidade e transações.
Suporte para autorização de acesso.
Suporte de acesso de locais remotos.
Suporte de recuperação de dados SGBD, em caso de danos.
Aplicação de restrições com o objetivo de garantir que os dados sigam certas regras.
Além disso, um SGBD fornece proteção e segurança aos bancos de dados, mantendo a consistência dos dados no caso de haver vários usuários conectados.
A Figura 1 mostra a organização de um banco de dados sendo gerenciado por um SGBD:
Agora, te convido a pensar: há alguma razão para não utilizar um Sistema Gerenciador de Banco de Dados? Após apresentar todas essas vantagens e funções, acredito que não. Mas é importante você saber que um Sistema Gerenciador de Banco de Dados é um software considerado complexo, otimizado para alguns tipos de processamento e o seu desempenho pode não ser adequado para determinados aplicativos especializados. Ramakrishnan e Gehrke (2008, p. 33) citam, como exemplos, os aplicativos “com restrições rígidas de tempo real ou algumas operações críticas bem definidas para as quais um códigos customizado eficiente deve ser escrito”.
Outra razão para não utilizar um Sistema Gerenciador de Banco de Dados é: alguns aplicativos talvez precisem manipular os dados de maneiras não suportadas pela linguagem de consulta. Neste caso, a visualização abstrata dos dados apresentada por um SGBD pode não corresponder às necessidades do aplicativo, impossibilitando, assim, o seu uso. Na maioria das situações em que é necessário um gerenciamento de dados em grande escala, um SGBD é uma ferramenta indispensável.
Provavelmente, você está se perguntando como aplicar essa teoria ou como ela funciona na prática. Vamos pensar nas funções de um Sistema Gerenciador de Banco de Dados? Imagine você dentro de uma biblioteca com milhares de livros e precisa buscar um único livro. Se ela não estiver organizada e não possuir um catálogo, você demorará muito tempo para realizar a busca manual. Entretanto se a biblioteca tiver um Sistema Gerenciador de Banco de Dados, ela conseguirá controlar os dados dos livros e, com isso, operacionalizará as tarefas trabalhosas (busca manual pelo livro) para serem feitas automaticamente. Seria como usar uma busca no Google, capaz de localizar um arquivo em milissegundos entre milhões de possibilidades, em seguida, trazer a localização do exemplar (corredor, prateleira, seção etc.) de onde ele se encontra dentro da biblioteca.
Agora que você já conhece um pouco a gestão de banco de dados, pode pesquisar mais sobre o SGBD via buscas no Google. Quer uma dica? Busque: “Qual o papel da tecnologia no tratamento de dados”? Agora, é com você!
DIAS, A. S. Administração de Bancos de Dados. São Paulo: Saraiva, 2021.
RAMAKRISHNAN, R.; GEHRKE, J. Sistemas de Gerenciamento de Bancos de Dados. 3. ed. Porto Alegre: AMGH, 2008.