Gerenciamento de Banco de Dados: Análise Comparativa de SGBD’S

Este artigo tem por objetivo mostrar a relação e utilizações de sistemas de gerenciamento de banco de dados (SGBD).

SGDB: Gerenciamento de banco de dados

Bancos de dados ou bases de dados são coleções organizadas de dados que se relacionam de forma a criar algum sentido (Informação) e dar mais eficiência durante uma pesquisa ou estudo. São de vital importância para empresas, e há duas décadas se tornaram a principal peça dos sistemas de informação. Normalmente existem por vários anos sem alterações em sua estrutura.

Este trabalho tem por objetivo mostrar a relação e utilizações de sistemas de gerenciamento de banco de dados (SGBD).

O que é SGDB? Como Funciona?

Uma base de dados é um conjunto organizado de dados (segundo um modelo de dados) existentes num sistema informático, disponíveis a todos os utilizadores ou processamentos da organização em que o acesso e atualização são realizados através de software específico. O Sistema de Gestão de Bases de Dados (SGBD) ou Data Base Management System (DBMS) e software utilizado para gerir Bases de Dados, permitindo criar base de dados, modificar Base de dados, eliminar bases de dados, inserir dados na Base de Dados e Eliminar dados da base de dados.

Os SGBD (Sistemas de Gestão de Bases de Dados) têm um conjunto de requisitos funcionais: a Segurança, a Integridade (só inclui dados válidos relativamente à realidade), o Controlo de Concorrência (Locking, Etiquetagem ou Optimista), e recuperação e tolerância a falhas (Backup e Transactionlogging).

Um SGBD (Sistemas de Gestão de Bases de Dados) tem tipicamente como elementos, o motor de base de dados, o subsistema de definição de dados, o subsistema de manipulação de dados, o subsistema de administração de dados e o subsistema de geração de aplicações.

Os SGBDs (Sistemas de Gestão de Bases de Dados) têm as sistemas de gestão utilizados e da repartição geográfica dos dados.

Ao nível conceitual de análise, a preocupação essencial reside na semântica dos dados que representa o nível de invariante o mais elevado.

Neste contexto podem ser utilizadas várias ferramentas conceituais, nomeadamente a Entidade Associação (também chamado Entidade Relacionamento) ou o diagrama de classes do UML.

Um esquema lógico é um modelo de dados específico a um domínio de problema expresso em termos de uma tecnologia específica de bases de dados. O esquema lógico não deve ser específico a um produto específico (ou SGBD concreto). Por exemplo, deve indicar quais as tabelas, colunas e relacionamento (se o esquema seguir o modelo relacional), classes (se seguir o modelo de objetos) ou XML.

Na concepção do esquema lógico, o modelo relacional é dos mais utilizados.

O esquema físico descreve os meios físicos através dos quais os dados são armazenados.

Um modelo de base de dados é uma teoria ou especificação que descreve como a base de dados é estruturada e utilizada.

Função de um SGBD

Controle de Concorrência

Nas bases de dados multi-utilizadores (que serão a maioria), pode haver uma tentativa de acesso aos mesmos dados por mais de que um utilizador em simultâneo. O SGBD fornece mecanismo que asseguram que a base de dados é atualizada corretamente, este mecanismo recebe o nome de mecanismo de controlo de concorrência.

Modelos de Base de Dados

Têm sido propostos diversos modelos de bases de dados, nomeadamente:


Figura 1. Representação de um modelo hierárquico

Figura 2. Representação de um modelo de Rede

Figura 3. Representação de um modelo Relacional

Figura 4. Representação de um modelo Dimensional

Figura 5. Representação de um modelo Relacionado

Módulos Componentes de um SGBD

Os principais módulos componentes que integram um SGBD são (Figura 6):


Figura 6. Esquema do SGBD

Exemplos de alguns SGBD’s

Utilização e Comparação entre SGBD’s (SQL-SERVER e ORACLE)

SQL Server

OMS SQL Server é um SGBD desenvolvido pela Microsoft. Foi criado em parceria com a Sybase em 1988 inicialmente para a plataforma OS/2. Esta parceria durou até 1994, com o lançamento da versão para Windows NT e desde então a Microsoft mantém a manutenção do produto. Como um Banco de dados, é um produto de software cuja principal função é a de armazenar e recuperar dados solicitados por outras aplicações de software seja aqueles no mesmo computador ou aqueles em execução em outro computador através de uma rede.

Oracle

Oracle é um SGBD que surgiu no fim dos anos 70 quando Larry Ellison vislumbrou uma oportunidade que outras companhias não haviam percebido, quando encontrou uma descrição de um protótipo funcional de um banco de dados relacional e descobriu que nenhuma empresa tinha se empenhado em comercializar essa tecnologia.

Ou seja:

Ambos são ótimos BDs e cada um tem suas vantagens e desvantagens. O SQL Server tem a principal vantagem de ter um custo menor, aproximadamente metade do preço de um Oracle. No SGBD SQL Server, todas as funcionalidades (Ex.: Particionamento de tabelas) estão inclusas no seu valor de licenciamento inicial, enquanto que, no SGBD Oracle, é necessário adquirir licenças adicionais (chamadas Options), que tornam o produto da Oracle até 10 vezes mais caro que o produto da Microsoft. Outra vantagem do SQL Server é a facilidade de uso e gerenciamento. Eu, particularmente, quando comecei a trabalhar com Oracle, achava tudo muito difícil. As ferramentas do SQL Server eram mais produtivas e mais intuitivas.

O Oracle tem um custo mais alto que o SQL Server e é mais difícil de administrar, porém é um produto que possui mais recursos de segurança e performance, que podem ser muito importantes e cruciais para empresas que possuem aplicações críticas e que possuem muitos dados e muitos usuários concorrentes, em geral

Do ponto de vista técnico, SGBDs podem diferir amplamente. Os termos relacional, rede, plana, e todos hierárquica se referem à forma de um SGBD organiza as informações internamente. A organização interna pode afetar a rapidez e flexibilidade que você pode extrair informações.

Recentes

  • Usabilidade e experiência do usuário em aplicativos sensíveis ao contexto:
    Este artigo trata de questões de usabilidade em aplicativos sensíveis ao contexto, tendo como principal objetivo o aprimoramento da experiência do usuário, exemplificando e conceituando algumas questões que devem ser consideradas.
  • Delphi: Cadastro Orientado a Objetos com FireDAC:
    Neste curso você aprenderá a criar CRUD em Delphi com uma entidade. Trabalhar com manipulação de dados (inserir, editar, deletar e buscar) em Delphi é fundamental para desenvolvermos a maioria das aplicações é de suma importância no desenvolvimento de software.
  • Engenharia de Software para programadores:
    Neste guia você encontrará o conteúdo que precisa, como desenvolvedor, para ter uma boa base dos conceitos e práticas da Engenharia de Software. Tal conhecimento é muito importante para todo programador.

Saiba mais sobre SGBDs ;)

  • Banco de Dados para Programadores:
    Neste guia você encontrará os principais conteúdos que você precisa estudar, como desenvolvedor, para trabalhar com bancos de dados.
  • Guia Completo de MySQL:
    Neste guia de consulta você encontrará diversos conteúdos que podem ser usados ao longo dos seus estudos sobre o banco de dados MySQL. Consulte este guia para aprender mais sobre a administração e uso desse SGBD.
  • Guia Completo de SQL Server:
    Este guia traz uma compilação das melhores publicações e ensina como resolver os mais diferentes problemas que tornam o dia a dia desse profissional tão desafiador.
  • Guia Completo de PostgreSQL:
    Neste guia de consulta você encontrará diversos conteúdos que podem ser usados ao longo dos seus estudos sobre o banco de dados PostgreSQL. Consulte este guia para aprender mais sobre a administração e uso desse SGBD.
  • Guia Completo de NoSQL e MongoDB:
    Neste guia de consulta você encontrará diversos conteúdos sobre bancos de dados NoSQL, principalmente sobre o MongoDB, que é um dos mais utilizados na atualidade. Encontre também conteúdo sobre Cassandra, Redis, entre outros.

Referências Bibliográficas: ;)

Artigos relacionados