Sistemas de Banco de Dados: quais são e principais componentes

Sistemas de Banco de Dados: quais são e principais componentes

Seja na Programação ou na área de dados, como na Engenharia de Dados e na Ciência de Dados, o uso de bancos de dados é fundamental. Tanto que, sem eles, tais campos nem existiriam.

Para lidar com essa peça-chave na tecnologia, dependemos de Sistemas de Bancos de Dados. Neste artigo, vamos entender melhor o que isso significa e conhecer os sistemas de bancos de dados mais utilizados no mercado. Vamos lá?

O que é um Sistema de Banco de Dados?

A expressão “Sistema de Banco de Dados” costuma remeter a marcas de softwares gratuitos ou comerciais, que nos permitem armazenar e gerir dados. Exemplos: MySQL, PostgreSQL, Oracle, MongoDB, Elasticsearch, Redis, entre outros.

Tecnicamente, porém, o conceito refere-se a coisas diferentes com nomes parecidos:

  • Banco de dados: qualquer conjunto de dados e metadados inter-relacionados. Formam bancos de dados desde uma lista de contatos simples ou o acervo de uma biblioteca até os registros de movimentações financeiras de uma empresa.
  • Sistema de Banco de Dados: é a interação entre dados, humanos, hardware e software, o que permite dar “sentido” e tornar os dados acessíveis, compreensíveis e utilizáveis.
  • Sistema de Gerenciamento de Banco de Dados (SGBD): é um software ou conjunto de softwares que permite manipular os dados nos dispositivos onde são armazenados, como memórias ou discos rígidos.

A imagem a seguir ilustra tais conceitos de uma forma mais organizada:

Imagem mostra a hierarquia de um sistema de banco de dados. No alto, há os usuários/programadores e linguagens que permitem que estes se comuniquem com uma camada intermediária, onde está o Sistema de Gerenciamento de Banco de Dados (SGBD). O SGDB é formado por softwares (programas) que permitem manipular dados. Mais abaixo, na última camada, estão os dados e metadados armazenados no hardware, de fato, que compõem o banco de dados em si.
Legenda: Fonte: cooperati.com.br

Neste artigo, vamos tratar de SGBDs populares do mercado, suas características, componentes e funções e como se relacionam aos profissionais de programação e dados.

Componentes de um SGDB

Um SGDB é formado por diferentes partes, com nomes bem técnicos. Quando usamos um SGDB como programador, engenheiro ou cientista de dados, normalmente interagimos com essas partes, mas raramente precisamos entender essa “maquinaria interna” a fundo:

  • Storage engine: é o “motor” do banco de dados, o que vai determinar como o banco de dados organiza seus dados, a eficiência dessa organização, consumo de recursos, entre outros fatores.
  • Query language: “linguagem de consulta”, em português, é a linguagem de programação que o SGBD fornece para consultarmos e manipularmos os dados. SQL (Structure Query Language) é uma das query languages mais populares.
  • Query processor: é um software de “bastidor”, que transforma as instruções da query language em operações no banco de dados.
  • Optimization engine: outro software de “bastidor”, que tem como função encontrar a maneira mais eficiente de executar uma ação no banco de dados.
  • Metadata catalog: metadados (metadata) são dados que descrevem outros dados; assim, metadata catalog ou “catálogo de metadados” é um mecanismo que o banco de dados usa para traduzir e entender dados armazenados.
  • Log manager: gerenciador de eventos que ocorrem no banco de dados, os quais permitem entender ocorrências como erros ou falhas em transação de dados.
  • Reporting and monitoring tools: ferramentas de monitoramento do desempenho do próprio banco de dados, como volume e frequência de transações.
  • Data utilities: ferramentas que permitem realizar modificações na organização dos dados em um banco de dados.

Funções de um SGBD

Entre as principais funções de um SGDB, estão:

  • criar, ler, alterar e excluir dados armazenados — essas quatro operações formam uma sigla muito popular na área, chamada CRUD (de create, read, update e delete);
  • criar, alterar e excluir formas de organizar e armazenar os dados, como tabelas;
  • alterar as estruturas das tabelas e outros meios de organizar e armazenar dados;
  • manipular relações entre diferentes tabelas ou outros meios;
  • extrair relatórios dos dados armazenados;
  • criar, conceder e retirar permissões para que usuários (programadores, data scientists etc.) possam acessar e realizar operações no banco de dados.

Principais SGBDs do mercado

Como há centenas de SGBDs disponíveis, qualquer ranking sem base seria arbitrário. Então, vamos nos basear em um ranking popular, que todos os meses classifica SGBDs mais usados no mundo . 

O ranking se chama db-engines.com. Os SGBDs que comentaremos abaixo são os 10 sistemas mais usados em julho de 2022. Se você acessar o ranking em outro momento, a lista poderá ser diferente.

1. Oracle

Oracle
Oracle

A Oracle é uma grande corporação de tecnologia que hoje oferece diversos serviços em nuvem, desde Inteligência Artificial até Analytics e BI. Porém, começou e ficou famosa por causa do Oracle Autonomous Database ou apenas Oracle Database, o banco de dados mais usado do mundo.

Lançado em 1979 e em aprimoramento até a atualidade, é um banco de dados que cresceu e é muito utilizado em conjunto com a linguagem de programação Java, para aplicações robustas, como bancárias e financeiras. 

É um banco de dados relacional em sua origem (baseado em tabelas)mas que hoje já é multi-modelo. Utiliza uma linguagem chamada PL/SQL (linguagem procedural projetada para incluir instruções SQL em sua sintaxe) como linguagem de consulta e manipulação de dados.

2. MySQL

MySQL
MySQL

MySQL é um SGBD muito famoso e usado por causa de sua integração fácil com a linguagem de programação PHP por esta dupla, MySQL e PHP, estar na origem do WordPress, o sistema de gerenciamento de conteúdo mais popular do mundo.

É um banco de dados relacional gratuito e fácil de usar, que usa SQL, porém com um ótima capacidade e desempenho para muitas aplicações de websites e webapps. MySQL nasceu como uma solução de código aberto e que hoje também pertence à Oracle. 

Um “fork” ou desdobramento seu deu origem a outro banco de dados parecido e popular, chamado MariaDB.

3. Microsoft SQL Server

Microsoft SQL Server
Microsoft SQL Server

Microsoft SQL Server é um banco de dados lançado em 1989 e que se ramificou em diversas versões, as quais atendem diversos públicos. Há desde versões para pequenas aplicações até outras para aplicações escaláveis de Internet das Coisas (IoT), por meio da Azure, a nuvem da Microsoft.

O SGBD usa um dialeto da linguagem SQL, chamado T-SQL. Por ser uma solução corporativa e paga, como o Oracle Database, oferece uma gama de benefícios a empresas, como maior segurança.

4. PostgreSQL

PostgreSQL
PostgreSQL

PostgreSQL é um banco de dados de código aberto e gratuito, mas bastante poderoso. É um banco de dados de modelo objeto-relacional com características como confiabilidade, robustez e desempenho eficiente. 

O SGBD tem mais de 30 anos e surgiu na Universidade da Califórnia, Berkeley. Usa SQL como linguagem de consulta e é o banco de dados padrão do macOS Server. É versátil e robusto tanto para aplicações pequenas como para aquelas que requerem acessos massivos a dados.

5. MongoDB

MongoDB
MongoDB

MongoDB é o banco de dados do tipo NoSQL mais usado no mundo. É NoSQL porque não se baseia no conceito de tabelas para armazenar dados, mas, sim, no modelo de documentos (armazena dados em forma de textos). É de código aberto, gratuito e multiplataforma.

Mais do que isso, MongoDB usa a linguagem de programação Javascript para consultas, a mais utilizada para construir aplicações web. Isso torna MongoDB uma escolha natural, veloz e versátil para aplicativos e sites com acessos massivos, principalmente voltados a conteúdos, como redes sociais, plataformas educacionais, entre outros.

Assinatura Awari | Cursos Data Science

6. Redis

Redis
Redis

Redis é outro banco de dados NoSQL no ranking do db-engines.com. É o banco de dados de modelo chave-valor mais usado atualmente. 

Bancos de dados desse tipo funcionam como dicionários, em que há uma chave e uma série de outros dados (valores) associados a ela. Isso permite muita eficiência na recuperação das informações.

Redis funciona de maneira distribuída (em várias máquinas) e armazena os dados em memória e não em disco, o que o torna extremamente veloz.

7. IBM DB2

IBM DB2
IBM DB2

Outro SGBD corporativo, o IBM DB2 é uma família de produtos de gerenciamento de dados da IBM, outra gigante do setor. O DB2 iniciou como um banco de dados relacional, mas hoje incorpora soluções de outros modelos, como objeto-relacional e NoSQL.

Também tem como diferenciais escalabilidade, segurança, flexibilidade, entre outros atributos. É uma solução paga, normalmente usada por grandes empresas.

8. Elasticsearch

Elasticsearch
Elasticsearch

Elasticsearch é um dos “bancos de dados” mais diferentes entre todos os já vistos. Na verdade, não é como um banco de dados no sentido tradicional, mas um mecanismo de pesquisa de texto completo e em tempo real. Por isso, também é classificado como um SGBD. 

Tem uma grande capacidade de indexar quaisquer tipos de textos, quebrá-los em partes menores chamadas tokens e permitir buscas inteligentes e rápidas neles (como a busca do Google, por exemplo). 

É a solução mais usada do tipo no mundo e oferecida como uma API (Application Interface Programming), um software que pode ser usado em conjunto com outros bancos de dados, por exemplo.

9. Microsoft Access

Microsoft Access
Microsoft Access

Muita gente não consideraria o Microsoft Access um SGDB “de verdade”. No entanto, ele continua sendo uma solução muito utilizada. 

O Access, como é popularmente conhecido, é um aplicativo da família Office, da Microsoft, muito acessível a pessoas de negócios e a leigos, que não precisam saber programar e podem usar a interface gráfica do Office para operá-lo. É por isso que ele é tão popular.

Apesar de não garantir todas as funcionalidades de SGDBs robustos, Access permite criar bancos de dados para pequenas aplicações, úteis para uso interno em times de negócio. 

10. SQLite

logo sqlite
SQLite

SQLite, como o próprio nome revela, é um SGBD simples, enxuto e fácil de usar. É útil para sites e aplicativos leves, sem muitos recursos ou usuários. Também usa SQL para consultas. Uma dica: é um ótimo SGBD para treinos e para aprendizado em programação e na área de dados!

SGDBs na programação e em dados

A pergunta que fica é: como programadores, data engineers, profissionais de data analytics e data scientists usam todos esses SGDBs? A resposta é um grande “depende”. A escolha e uso de um SGDB dependerá da empresa e dos projetos em que o profissional atuará.

Grosso modo, porém, cabe aos desenvolvedores de software saberem como conectar e se comunicar com os bancos de dados por meio dos programas que criam. Isso, normalmente, envolve conhecer a linguagem de consulta do banco de dados, como SQL, por exemplo.

Já engenheiros de dados atuam conectando diferentes bancos de dados em data warehouses (“armazéns de dados”), a fim de fornecerem informações mais otimizadas a ferramentas analíticas, como dashboards e painéis de Business Intelligence (BI).

Para cientistas de dados, a atuação pode ser um pouco diferente. Em grandes corporações, os profissionais já costumam receber dados prontos e tratados de data warehouses, por exemplo. 

Em startups e empresas menores, porém, pode ser que o data scientist tenha de acessar bancos de dados diretamente para análises. Nesse caso, conhecer as ferramentas e a linguagem de consulta, como SQL, será um diferencial e uma necessidade. 

Dominar tudo isso envolve, é claro, muito estudo, muita prática e atualização constante sobre as ferramentas utilizadas no mercado.

Quer ingressar em Programação ou Ciência de Dados? Conheça a Awari!

A Awari é uma plataforma completa com mentorias individuais, cursos com aulas ao vivo e assessoria de carreira nas áreas de Programação e de Dados.

Conheça nossos cursos de Programação, com intensivos de Front-End com React, Back-End com Javascript, DevOps, Desenvolvimento Web e React Native.

Ou confira nossos cursos de Data Science, com intensivos de Ciência de Dados, Machine Learning, Engenharia de Dados e Data Analytics

Saiba mais sobre a nossa jornada personalizada e materiais complementares feitos por especialistas no mercado.

Avance sua carreira

Conheça a Awari

Dê seu próximo passo profissional com nossos cursos e aprenda com mentorias individuais dos melhores profissionais do mercado.

Saiba mais

Escrito por

Avance sua carreira

e cuide do seu futuro

Esse é o momento para investir em seu futuro e dar seu próximo passo profissional. Comece agora e crie sua conta na Awari:

Começar agora