Quais são os princípios de um sistema de gerenciamento de banco de dados?

Um banco de dados é uma coleção de tabelas relacionadas que são geralmente integradas, vinculadas ou referenciadas a um outro. A vantagem de um banco de dados é que os dados e registros contidos em tabelas diferentes podem ser facilmente organizadas e recuperadas utilizando software de gestão especializado chamado de sistema gerenciador de banco de dados (SGBD) ou gerente de banco de dados.

Depois de ler esta lição, você deve ser capaz de:

  • Definir o sistema de gerenciamento de banco de dados (SGBD).
  • Descrever o propósito e funções básicas de um SGBD.
  • Discutir as vantagens e desvantagens de SGBDs.

Fundamentos SGBD

Um sistema de gerenciamento de banco de dados é um conjunto de programas de software que permite aos usuários criar, editar, atualizar, armazenar e recuperar dados em tabelas de banco de dados. Dados em um banco de dados podem ser acrescentados, apagados, alterados, classificados usando um SGBD. Se você fosse um empregado em uma grande organização, a informação sobre você provavelmente seria armazenadas em diferentes tabelas que estão ligados entre si. Por referência cruzada dessas tabelas, alguém poderia mudar o endereço de uma pessoa em uma tabela e ela seria automaticamente refletida para todas as outras tabelas.

Características Desejáveis numa Database

  • Controle de Redundância;
  • Compartilhamento de Dados;
  • Controle de Acesso aos Dados;
  • Múltiplas Interfaces;
  • Representação de associações complexas;
  • Garantia de restrições de Integridade;
  • Recuperação de falhas.

SGBDs são comumente usados para gerenciar:

  • Sócios e listas de discussão de subscrição
  • Informação contábil e contabilidade
  • Os dados obtidos a partir de pesquisa científica
  • Informações de clientes
  • Informações de inventário
  • Registros pessoais
  • Informações da biblioteca

As vantagens de um SGBD

Maior disponibilidade: Uma das principais vantagens de um SGBD é que a mesma informação pode ser disponibilizada a utilizadores diferentes, ou seja, compartilhamento de dados.

Redundância minimizada: Os dados de um SGBD são mais concisos, porque, como regra geral, a informação nela aparece apenas uma vez. Isto reduz a redundância de dados, ou em outras palavras, a necessidade de repetir os mesmos dados uma e outra vez. Minimizando a redundância pode, portanto, reduzir significativamente o custo de armazenamento de informações em discos rígidos e outros dispositivos de armazenamento.

Precisão: dados precisos, consistentes são um sinal de integridade dos dados. SGBDs fomentam a integridade dos dados, porque as atualizações e alterações dos dados só tem que ser feitas em um só lugar. As chances de se cometer um erro são maiores se você é obrigado a alterar os mesmos dados em vários lugares diferentes do que se você só tem que fazer a mudança em um só lugar.

Programa e arquivo de consistência: Usando um sistema de gerenciamento de banco de dados, formatos de tabelas e programas do sistema são padronizados. Isso faz com que os tabelas de dados sejam mais fáceis de manter, porque as mesmas regras e diretrizes se aplicam a todos os tipos de dados. O nível de consistência entre os tabelas e programas também torna mais fácil de gerenciar dados quando vários programadores estão envolvidos.

User-friendly: Os dados são é mais fáceis de acessar e manipular com um SGBD do que sem ele. Na maioria dos casos, SGBDs também reduzem a dependência de usuários individuais à especialistas em computação para atender às necessidades de seus dados.

Maior segurança: Como afirmado anteriormente, SGBDs permitem que múltiplos usuários acessem os recursos dos mesmos dados. Esta capacidade é geralmente vista como um benefício, mas há riscos potenciais para a organização. Algumas fontes de informação devem ser protegidas ou garantida e vista apenas por indivíduos selecionados. Através do uso de senhas, sistemas de gerenciamento de banco de dados podem ser usado para restringir o acesso aos dados a apenas aqueles que devem vê-lo.

Outros: Tempo de desenvolvimento de aplicações é reduzido, Maior flexibilidade para realizar alterações (independência de dados) e Maior economia, informações atualizadas, menor volume de papel.

Que características distinguem um SGBD ?

Catálogo

  • Um SGBD mantém não apenas o Banco de Dados, mas também uma definição e descrição das estruturas e restrições (catálogo - metadados)
  • A existência do catálogo permite que um mesmo SGBD possa ser utilizado para aplicações distintas (o catálogo indica uma estrutura física utilizada)

Independência de Dados

  • Um SGBD dá aos usuários uma visão abstrata dos dados, encobrindo detalhes não relevantes (o usuário-desenvolvedor não precisa saber como os dados são fisicamente armazenados).

Múltiplas Visões dos Dados

  • Cada usuário pode exigir uma visão diferenciada da base de dados

Compartilhamento e Transações

  • Controle de concorrência

As desvantagens de um SGBD

Existem basicamente duas desvantagens principais em SGBDs. Um deles é o custo, e a outra o perigo para a segurança dos dados.

Custo: A Implementação de um sistema de SGBD pode ser cara e demorada, especialmente em grandes organizações. Requisitos de formação pode ser bastante oneroso.

Segurança: Mesmo com salvaguardas no lugar, pode ser possível para alguns usuários não autorizados acessar o banco de dados. Em geral, o acesso de banco de dados é uma proposição de tudo ou nada. Uma vez que um usuário não autorizado fica no banco de dados, eles têm acesso a todos os tabelas, e não apenas algumas. Dependendo da natureza dos dados envolvidos, essas quebras na segurança também pode representar uma ameaça à privacidade individual. Cuidados também devem ser tomados regularmente para fazer cópias de backup das tabelas e armazená-las por causa da possibilidade de incêndios e terremotos que poderiam destruir o sistema.

Lição de encerramento

Nesta lição, um sistema de gerenciamento de base de dados foi definida, bem como os seus efeitos e funções. Um dos aspectos mais poderosos de um SGBD é a capacidade de organizar e recuperar dados a partir de diferentes, mas relacionadas, tabelas. No entanto, usando Bancos de Dados tem suas vantagens e desvantagens. À medida que avançar com a sua carreira, você deve estar ciente das vantagens e desvantagens que acompanham o uso dessas ferramentas informatizadas. As compensações que temos discutido até agora incluem coisas como a redundância, precisão, acessibilidade e facilidade de utilização de dados em um SGBD. Ser educado sobre os pontos fortes e fracos de SGBDs lhe permitirá tomar decisões mais eficazes sobre como organizar e utilizar os dados.

Agora que você completou esta lição, você deve ser capaz de:

  • Definir o termo sistema de gerenciamento de banco de dados (SGBD).
  • Descrever o propósito e funções básicas de um SGBD.
  • Discutir as vantagens e desvantagens de SGBDs.

Todo agrupamento de bancos de dados possui um conjunto de usuários de banco de dados. Estes usuários são distintos dos usuários gerenciados pelo sistema operacional onde o servidor executa. Os usuários possuem objetos de banco de dados (por exemplo, tabelas), e podem conceder privilégios nestes objetos para outros usuários controlando, assim, quem pode acessar qual objeto.

Depois de ler esta lição, você deve ser capaz de:

  • Definir os tipos de usuários de banco de dados.
  • Descrever o propósito e funções básicas de um usuário.

Administrador de Banco de Dados (DBA)

Em um ambiente de banco de dados, o recurso primário é o banco de dados por si só e o recurso secundário o SGBD e os softwares relacionados. A administração destes recursos cabe ao Administrador de Banco de Dados, o qual é responsável pela autorização de acesso ao banco de dados e pela coordenação e monitoração de seu uso. Ou seja ele coordena todas as atividades do sistema de banco de dados; possui boa compreensão dos recursos de informação da empresa e suas necessidades.

Suas funções incluem:

    • Definição do esquema
    • Estrutura de armazenamento e definição de acesso aos dados
    • Esquema físico e organização
    • Concede acesso aos usuários
    • Cuida da integridade dos dados
    • Atua como elo com os usuários
    • Acompanha a desempenho, e responde as mudanças exigidas
    • Atividades de manutenção (Backups)

Projetista de Banco de Dados

O Projetista de Banco de Dados é responsável pela identificação dos dados que devem ser armazenados no banco de dados, escolhendo a estrutura correta para representar e armazenar dados. Muitas vezes, os projetistas de banco de dados atuam como "staff" do DBA, assumindo outras responsabilidades após a construção do banco de dados. É função do projetista também avaliar as necessidades de cada grupo de usuários para definir as visões que serão necessárias, integrando-as, fazendo com que o banco de dados seja capaz de atender a todas as necessidades dos usuários.

Usuários Finais

Existem basicamente três categorias de usuários finais que são os usuários finais do banco de dados, fazendo consultas, atualizações e gerando documentos:

  • Usuários casuais: acessam o banco de dados casualmente, mas que podem necessitar de diferentes informações a cada acesso; utilizam sofisticadas linguagens de consulta para especificar suas necessidades;
  • Usuários novatos ou paramétricos: utilizam porções pré-definidas do banco de dados,utilizando consultas pre estabelecidas que já foram exaustivamente testadas;
  • Usuários sofisticados: são usuários que estão familiarizados com o SGBD e realizam consultas complexas.

Analistas de Sistemas e Programadores de Aplicações

Os analistas determinam os requisitos dos usuários finais e desenvolvem especificações para transações que atendam estes requisitos, e os programadores implementam estas especificações como programas, testando, depurando, documentando e dando manutenção no mesmo. É importante que, tanto analistas quanto programadores, estejam a par dos recursos oferecidos pelo SGBD.

Quais são os princípios de um sistema de gerenciamento de banco de dados?

SGBDs vêm em muitas formas e tamanhos. Por algumas centenas de dólares ou até mesmo de forma gratuita, você pode comprar um SGBD para o seu computador desktop. Para sistemas maiores os SGBDs podem ser muito mais caros. Muitos SGBDs são baseados em mainframe e alugados por organizações. SGBDs desta escala são altamente sofisticados e seria extremamente caro para desenvolver a partir do zero. Portanto, é mais barato para uma organização alugar um programa que desenvolvê-lo. Uma vez que há uma variedade de SGBDs disponíveis, você deve conhecer algumas das carácterísticas básicas, bem como os pontos fortes e fracos, dos principais tipos.

Tipos estruturais de sistemas de gerenciamento de banco de dados mais utilizados:


Relacional

Os sistemas de gerenciamento de banco de dados relacional (RDBMS) suportam o modelo de dados relacional (= orientado a tabela). O esquema de uma tabela (= esquema de relação) é definido pelo nome da tabela e um número fixo de atributos com tipos de dados fixos. Um registro (= entidade) corresponde a uma linha da tabela e consiste nos valores de cada atributo. Uma relação, portanto, consiste em um conjunto de registros uniformes.

Os esquemas de tabelas são gerados por normalização no processo de modelagem de dados.

Certas operações básicas são definidas nas relações:

  • operações clássicas de conjunto (união, interseção e diferença)
  • Seleção (seleção de um subconjunto de registros de acordo com certos critérios de filtro para os valores de atributo)
  • Projeção (selecionando um subconjunto de atributos / colunas da tabela)
  • Join: conjunção especial de múltiplas tabelas como uma combinação do produto cartesiano com seleção e projeção.

    Essas operações básicas, bem como as operações de criação, modificação e exclusão de esquemas de tabelas, operações de controle de transações e gerenciamento de usuários são realizadas por meio de linguagens de banco de dados, sendo o SQL um padrão bem estabelecido para tais linguagens.

Os primeiros sistemas de gerenciamento de banco de dados relacional surgiram no mercado no início da década de 1980 e, desde então, são o tipo mais comumente usado .

Em bancos de dados relacionais, a relação entre as tabelas de dados é relacional. Bancos de dados relacionais conectam dados em tabelas diferentes, usando elementos comuns de dados ou um campo chave. Dados em bancos de dados relacionais são armazenados em tabelas diferentes, cada uma com um campo chave que identifica cada linha ou registro. Bancos de dados relacionais são muito mais flexíveis do que as próprias estruturas de dados hierárquicos ou rede. Em bancos de dados relacionais a ligação entre as tabelas são chamadas de relações, as tuplas designam uma linha ou registro, e as colunas são referidas como atributos ou campos.

Bancos de dados relacionais trabalham no princípio de que cada tabela tem um campo chave que identifica unicamente cada linha, e que estes campos chave podem ser usados para ligar uma tabela de dados a outra. Deste modo, uma tabela pode ter uma linha formada por um número de conta de cliente, tal como o campo chave, juntamente com o endereço e número de telefone. O número de conta do cliente nesta tabela pode estar ligada a uma outra tabela de dados que inclui também o número de conta do cliente (um campo de chave), mas, neste caso, contém informações sobre a devolução de produtos, incluindo um número de ordem (um outro campo de chave). Este campo chave pode ser ligado a uma outra tabela que contém números de itens e outras informações do produto, tais como local de produção, cor e outros dados. Portanto, usando esse banco de dados, as informações dos clientes podem ser ligadoa a informações específicas do produto.

O banco de dados relacional se tornou bastante popular, por duas razões principais. Em primeiro lugar, os bancos de dados relacionais podem ser usados com pouca ou nenhuma formação. Segundo, as entradas de banco de dados podem ser modificadas sem redefinir a sua estrutura inteira. A desvantagem de usar um banco de dados relacional é que a busca de dados pode levar mais tempo do que se outros métodos são usados.

Ao longo dos anos, muitosSGBDs foram expandidos com conceitos não relacionais, como tipos de dados definidos pelo usuário, não atributos atômicos, herança e hierarquias, motivo pelo qual às vezes são chamados de DBMS objeto-relacional.

Exemplos mais populares:


Banco de dados orientado a Documentos

Os armazenamentos de documentos, também chamados de sistemas de banco de dados orientados a documentos, são caracterizados por sua organização de dados sem esquemas.

Que significa:

  • Os registros não precisam ter uma estrutura uniforme, ou seja, registros diferentes podem ter colunas diferentes.
  • Os tipos de valores de colunas individuais podem ser diferentes para cada registro.
  • As colunas podem ter mais de um valor (matrizes).
  • Os registros podem ter uma estrutura aninhada.

    Os armazenamentos de documentos costumam usar notações internas, que podem ser processadas diretamente em aplicativos, principalmente JSON. Os documentos JSON, também podem ser armazenados como texto puro em armazenamentos de valores-chave ou sistemas de banco de dados relacionais . Isso, no entanto, exigiria o processamento das estruturas do lado do cliente, o que tem a desvantagem de os recursos oferecidos pelos armazenamentos de documentos (como índices secundários) não estarem disponíveis.

Exemplos mais populares

Quais são os princípios de um sistema de gerenciamento de banco de dados?


Armazenamento de valores-chave

Armazenamento de valores-chave são provavelmente a forma mais simples de sistemas de gerenciamento de banco de dados . Eles só podem armazenar pares de chaves e valores, bem como recuperar valores quando uma chave é conhecida.

Esses sistemas simples normalmente não são adequados para aplicativos complexos. Por outro lado, é exatamente essa simplicidade que torna esses sistemas atraentes em certas circunstâncias. Por exemplo, armazenamentos de valores-chave com eficiência de recursos são frequentemente aplicados em sistemas incorporados ou como bancos de dados em processo de alto desempenho.

Formulários Avançados
Uma forma estendida de armazenamentos de valores-chave é capaz de classificar as chaves e, portanto, permite consultas de intervalo, bem como um processamento ordenado de chaves.

Muitos sistemas fornecem extensões adicionais para que possamos ver uma transição razoavelmente contínua para armazenamentos de documentos e grandes armazenamentos de colunas .

Exemplos mais populares

Quais são os princípios de um sistema de gerenciamento de banco de dados?

Lição de encerramento

Como vimos, os SGBDs são de várias formas. As diferentes estruturas de SGBDs foram comparadas e contrastadas num esforço para ajudar a demonstrar seus pontos fortes e fracos. Como um trabalhador do conhecimento, você pode um dia ser convidado a selecionar e tomar decisões sobre um SGBD. Esta lição fornece um ponto de partida para a compreensão das questões envolvidas.

Agora que você completou esta lição, você deve ser capaz de:

  • Comparar e contrastar a estrutura dos diferentes sistemas de gerenciamento de banco de dados.
  • Definir Bancos de Dados relacionais.
  • Definir os Bancso de dados orientado a Documentos.
  • Definir Bancos de Dados de Armazenamento de valores-chave.

Hoje em dia a maioria dos sistemas de base de dados são do tipo relacional.
Databases relacionais têm valiosos atributos que a distinguem como superior. Provavelmente o mais importante é você pode mudar a estrutura de dados sem alterações nas aplicações. Suponha, por exemplo, que você adicione uma ou mais colunas numa tabela. Você não precisa alterar nenhum aplicativo que o sistema vai continuar a processar. Claro, se você remover uma coluna que uma aplicação existente utiliza, você vai ter problemas.

Depois de ler esta lição, você deve ser capaz de:

  • Definir Bancos de Dados relacionais.
  • Discutir as funções e capacidades de uma Base de Dados Relacional
  • Definir os objetos de um Banco de Dados Relacional

Objetos de banco de dados relacional

Veremos agora uma breve descrição dos objetos que compõem um banco de dados do tipo relacional. Eles serão vistos com mais detalhes a medida em que se aprofundaremos no curso.


Tabelas

São os objetos que contém os tipos de dados e os dados reais

Colunas ou Campos

São as partes das tabelas que armazenam os dados. Devem receber um tipo de dados e ter um nome único

Tipos de dados

Há vários tipos de dados para serem utilizados como: caráctere, número, data. Um único tipo de dados é atribuído a uma coluna dentro de uma tabela

Storeds Procedures (procedimentos armazenados)

São como macros em que o código Transact-SQL pode ser escrito e armazenado sob um nome.

Triggers (gatilhos)

São como storeds procedures que são automaticamente ativados quando os dados são inseridos, alterados ou apagados. Asseguram que regras de negócio e de integridade sejam impostas ao banco de dados.

Regras (rules)

São atribuídas a colunas de modo que os dados que estão sendo  inseridos devem se adaptar aos padrões definidos. Por exemplo, pode-se utilizar regras para permitir que um campo que irá armazenar a UF contenha somente Estados válidos.

Chaves Primárias (PK)

Embora não sejam objetos em si, as chaves são essenciais para os bancos de dados relacionais. Promove a carácterística de unicidade das linhas, proporcionando uma maneira de identificar de forma única cada item que você queira armazenar.

Chaves Estrangeiras (FK)

Novamente, não são objetos em si, as chaves estrangeiras são colunas que fazem referências as chaves primárias de outras tabelas.

Padrões (Defaults)

Podem ser configurados em campos de modo que, se nenhum dado for inserido durante uma operação de Insert, os valores padrão serão utilizados.

Views (visualizações)

Consistem basicamente em consultas armazenadas nos bancos de dados que podem fazer referência a uma ou muitas tabelas. Você pode criar e salvar views e utiliza-las no futuro. Normalmente excluem certas colunas de uma tabela e vinculam duas ou mais tabelas entre si. Podem ser utilizadas também como mecanismo de segurança.

Índices

Podem ajudar os dados de modo que as consultas executem mais rápido

Quais são as principais características de um sistema gerenciador de banco de dados?

Um SGBD deve possuir as seguintes características:.
Controle de Redundâncias - Armazenamento em um único local evitando duplicações descontroladas;.
Compartilhamento de Dados;.
Controle de Acesso;.
Interfaceamento - Disponibilizar versões gráficas e não somente modo texto;.

Quais são os sistema de gerenciamento de banco de dados?

Quais os principais sistemas de gerenciamento de banco de dados?.
Oracle Database. O Oracle Database – ou Oracle DB – é um sistema de gerenciamento de banco de dados relacional da Oracle. ... .
SQL Server. O SQL Server é o sistema de gerenciamento de banco de dados da Microsoft. ... .
MySQL. ... .
PostgreSQL. ... .
Firebird DB..

Quais são os principais componentes do sistema de banco de dados?

Um banco de dados, para funcionar, deve possuir um conjunto de quatro componentes básicos, são eles: dados, hardware, software e usuários.

Qual o principal objetivo de um sistema gerenciador de banco de dados?

Em suma, um SGBD é o conjunto de programas de computador (softwares) responsáveis pelo gerenciamento de bases de dados. O principal objetivo é retirar da aplicação cliente a responsabilidade de gerenciar o acesso, manipulação e organização dos dados.