Você está na página 1de 14

Banco de dados

operacional
Os sistemas de gerenciamento de banco de dados operacional (também chamados de
bancos de dados OLTP On Line Transaction Processing ), são usados ​para atualizar dados
em tempo real. Esses tipos de bancos de dados permitem que os usuários façam mais do que
simplesmente visualizar os dados arquivados.
Os bancos de dados operacionais permitem modificar esses dados (adicionar, alterar ou excluir
dados), em tempo real
Desde o início dos anos 90, o mercado de software de banco de dados operacional foi
amplamente dominado por mecanismos SQL . Hoje, o mercado operacional de DBMS (antigo
OLTP ) está evoluindo drasticamente, com novos participantes inovadores e incumbentes
apoiando o uso crescente de dados não estruturados e mecanismos NoSQL DBMS, bem como
bancos de dados XML e bancos de dados NewSQL . Os bancos de dados NoSQL normalmente
se concentram na escalabilidade e renunciam à consistência de dados, não fornecendo
transações como o sistema OLTP faz

O que significa banco de dados operacional (ODB)?


Um banco de dados operacional é um banco de dados usado para
gerenciar e armazenar dados em tempo real. Um banco de dados
operacional é a fonte de um data warehouse. Os elementos em um banco
de dados operacional podem ser adicionados e removidos
instantaneamente. Esses bancos de dados podem ser baseados em SQL
ou NoSQL, sendo que o último é voltado para operações em tempo real.

Um banco de dados operacional é um banco de dados que armazena


dados dentro de uma empresa. Eles podem conter coisas como registros
de folha de pagamento, informações de clientes e dados de funcionários.
Eles são essenciais para as operações de data warehouse e análise de
negócios.

A principal característica dos bancos de dados operacionais é sua


orientação para operações em tempo real, em comparação com bancos de
dados convencionais que dependem de processamento em lote. Com
bancos de dados operacionais, os registros podem ser adicionados,
removidos e modificados em tempo real. Os sistemas operacionais de
gerenciamento de banco de dados podem ser baseados em SQL, mas um
número crescente está usando NoSQL e dados não estruturados
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.

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).
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.
Função de um SGBD

● Segurança: O SGBD cria um sistema de segurança que protege a base


de dados de acessos não autorizados. São impostas regras que definem
quais os utilizadores que podem ter acesso à base de dados, e dentro dos
utilizadores autorizados a que ficheiros podem aceder e que tipos de
operações podem efetuar (ler, adicionar,atualizar, apagar,etc.). Existem ainda
procedimentos que permitem efetuar cópias de segurança e recuperação de
dados em caso de falhas, de modo a assegurar a segurança e a integridade
dos dados.
● Segurança física: A informação não pode estar, ao alcance de pessoas não
autorizadas, ou seja, tem de estar bem guardada.
● Segurança lógica: A informação pode ser protegida através de métodos
lógicos de segurança, exemplo passwords.
● Integridade: O SGBD assegura a verificação das restrições de
integridade de forma a manter sempre válidos s dados, diminuindo a
redundância e maximizando a consistência dos dados. A gestão de
transações é um aspecto muito importante da manutenção da integridade de
dados. Uma transação consiste num conjunto de ações efetuadas por um
utilizador ou aplicação. Um exemplo de uma transação poderá ser uma
operação de transferência de dinheiro entre duas contas. Se a transação é
interrompida antes do fim (falha de energia, problemas no disco, etc.) o
sistema terá de evitar um estado de inconsistência, acionando o rollback, que
é um mecanismo que desfaz o que foi feito até à altura do problema e
devolve a base de dados ao seu estado de consistência.

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.
● Backup: Cópia de segurança, geralmente mantida em disquetes, fitas
magnéticas ou CD-R, que permitem a recuperação de informações
importantes ou programas em caso de falha do disco rígido.
● Inside Backup a informação é guardada dentro da empresa.
● Outside Backup a informação é guardada fora da empresa

Modelos de Base de Dados

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

● Modelo hierárquico:os dados são classificados hierarquicamente, de acordo


com uma arborescência descendente. Este modelo utiliza apontadores entre
os diferentes registros. Trata-se do primeiro modelo de SGBD, conforme
podemos ver na Figura 1.

Representação de um
modelo hierárquico

● Modelo de rede: Sua organização é semelhante à dos Bancos de Dados


hierárquicos, com diferença de que cada registro filho pode ser ligado a mais
de um registro pai, criando conexões bastante complexas e são bastante
utilizados em sistemas para computadores de grande porte (mainframe).
Sendo que esse modelo é composto de uma estrutura mais completa, possui
as propriedades básicas de registros, conjuntos e ocorrências, e utiliza a
linguagem de definição (DDL) e a linguagem de manipulação de dados
(DML), além de permitir evolução mais eficiente do modelo. Veja um
exemplo na Figura 2.
Figura 2. Representação de um modelo de Rede

● Modelo relacional: modelo relacional é um modelo de dados, adequado a ser


o modelo subjacente de um Sistema Gerenciador de Banco de
Dados(SGBD), que se baseia no princípio em que todos os dados estão
guardados em tabelas (ou,matematicamente falando, relações). Toda sua
definição é teórica e baseada na lógica de predicados e na teoria dos
conjuntos. Veja um exemplo na Figura 3.

Figura 3. Representação de um modelo Relacional

● Modelagem dimensional:é uma técnica de projeto lógico normalmente


usado para data warehouses que contrasta com a modelagem
entidade-relacionamento. Segundo o professor Kimball, a modelagem
dimensional é a única técnica viável para bancos de dados que devem
responder consultas em uma data warehouse. Ainda segundo ele, a
modelagem entidade-relacionamento é muito útil para registro de transações
e para fase de administração da construção de um datawarehouse, mas deve
ser evitada na entrega do sistema para o usuário final. Veja um exemplo na
Figura 4.

Figura 4. Representação de um modelo Dimensional

● Modelo relacionado a objeto(SGBDO, Sistema de gestão de bancos de


dados objeto): os dados são armazenados sob a forma de objetos, quer dizer,
de estruturas chamadas classes que apresentam dados membros. Os campos
são instâncias destas classes, conforme a Figura 5.

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):

● Pré Compiladores;
● Compiladores;
● Interpretadores;
● Mecanismo de consultas;
● Gerenciador de Buffer;
● Gerenciador de transações;
● Gerenciador de arquivos.

Figura 6. Esquema do SGBD

Exemplos de alguns SGBD’s

● IBM Informix
● PostgreSQL
● Firebird
● HSQLDB
● DB2
● mSQL
● MySQL
● Oracle
● SQL-Server
● TinySQL
● ZODB
● JADE
● Sybase
● Microsoft Access (Alguns o consideram SGBD mas é um SGBDR)
● Microsoft Visual Foxpro
● Paradox

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.

● SGBD comercializado atualmente pela Microsoft.


● Custo de uma licença da versão Enterprise por CPU: aprox. U$ 28.000 por
CPU;
● Pode ser instalado somente em SO Windows;
● Possui ferramentas de administração com interface gráfica excelentes, que
possibilitam um gerenciamento mais fácil e produtivo. Ex.: SQL Server
Management Studio 2008;
● Como toda ferramenta Microsoft, o Banco de Dados SQL Server em geral, é
mais fácil de administrar e de programar do que em Oracle;
● Divisão lógica de uma instância contendo vários BDs. O SQL Server possui
uma camada extra onde cada BD pode conter vários usuários ou esquemas.
Desse modo, podemos organizar e gerenciar melhor esquemas
correlacionados, pertencentes a uma mesma aplicação, em um BD isolado
dos demais esquemas do BD;
● Possui uns esquemas do sistema chamado MODEL que serve como
template para esquemas de usuários. Se por exemplo, o esquema MODEL
tiver 2 tabelas e uma visão, ao criar um novo esquema de usuário, ele será
criado com estes mesmos objetos.

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.

● Comercializado atualmente pela Oracle, que nasceu em 1979 e que foi o


primeiro BD relacional comercializado no mundo;
● Custo de uma licença da versão Enterprise por CPU: U$ 47.500 (até 2 core);
● Pode ser instalado em múltiplas plataformas desde 1985. Entre as principais,
podemos citar: Unix, Linux, HP/UX, BIM AIX, IBM VMS e Windows;
● Possui ferramentas de administração com interface gráfica menos amigável
que as do SQL Server. Isso vem mudando e melhorando a cada nova versão
do Oracle. No 10G, o Enterprise Manager possui muitos recursos e sua
interface gráfica evoluiu muito, mas ainda acho que as ferramentas da
Microsoft são mais intuitivas e mais produtivas.
● Possui mais recursos de segurança e performance que o SQL Server.
● Por padrão, o Oracle não commita transações. Isso permite que você desfaça
as alterações de uma instrução SQL, caso ela tenha sido submetido
erroneamente.
● Por padrão, o Oracle permite efetuar leitura consistente de dados. Esse
recurso permite que um usuário "B" leia os dados de uma linha de uma
tabela, no mesmo momento em que ela está sendo alterada por um usuário
"A", sem que o usuário "B" visualize os dados que estão sendo alterados
pelo "A".
● Arquitetura mais flexível e com mais recursos para otimização de
performace. No Oracle é possível criar e gerenciar diversas estruturas de
memória no BD. É possível, por exemplo, definir estruturas de
armazenamento com tamanhos de blocos que podem variar de 2k à 32k. No
SQL Server só é possível criar estruturas de armazenamento de 8k. Em
Oracle, sistemas OLAP e índices em geral, são otimizados com tamanhos de
blocos maiores (32k);
● Possui Packages, que são objetos que permitem (entre diversos outros
benefícios) agrupar e encapsular código de stored procedures e funções;
● O Oracle possui mais tipos de índices que o SQL Server.

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.

A DEFINIÇÃO DE SGBD
“Um Sistema de Gerenciamento de Banco de Dados (SGBD) – do inglês Data Base
Management System (DBMS) – é o conjunto de programas de computador (softwares)
responsáveis pelo gerenciamento de uma base de dados. Seu principal objetivo é retirar da
aplicação cliente a responsabilidade de gerenciar o acesso, a manipulação e a organização
dos dados. O SGBD disponibiliza uma interface para que seus clientes possam incluir,
alterar ou consultar dados previamente armazenados. Em bancos de dados relacionais a
interface é constituída pelas APIs (Application Programming Interface) ou drivers do SGBD,
que executam comandos na linguagem SQL (Structured Query Language).”

Tudo que fazemos em um banco de dados passa pelo SGBD! O SGBD é


responsável por tudo, salvar os dados no HD, manter em memória os
dados mais acessados, ligar dados e metadados, disponibilizar uma
interface para programas e usuários externos acessem o banco de dados
(para banco de dados relacionais, é utilizada a linguagem SQL), encriptar
dados, controlar o acesso a informações, manter cópias dos dados para
recuperação de uma possível falha, garantir transações no banco de
dados, enfim, sem o SGBD o banco de dados não funciona!

É comum as pessoas chamarem um SGBD de banco de dados, por


exemplo: banco de dados Oracle, banco de dados MySQL, banco de dados
SQL Server, etc. Na verdade esses são os SGBDs, banco de dados é o que
eles oferecem, o correto é chamá-los de: SGBD Oracle, SGBD MySQL,
SGBD SQL Server, etc. Cada um implementa um banco de dados (ou
vários) de uma maneira diferente, mas para o usuário isso é quase
transparente, pois a linguagem de acesso aos dados é a mesma, o SQL.

Agora você já sabe, pra acessar um banco de dados você precisa usar um
SGBD.
Quais os principais
sistemas de
gerenciamento de
banco de dados?
Existem muitas opções quando se trata do tipo de banco de dados que uma
empresa pode querer implementar. Cada um tem seus próprios benefícios que o
ajudam a desempenhar uma função específica. Alguns podem ser inclusive
utilizados via AWS.

Para ajudar você a conhecer os principais, vamos apresentar 5 sistemas de


gerenciamento de banco de dados.

1. Oracle Database
O Oracle Database – ou Oracle DB – é um sistema de gerenciamento de banco de
dados relacional da Oracle. Originalmente desenvolvido em 1977, esse é um dos
mecanismos de banco de dados relacional mais confiáveis ​e amplamente utilizados
no mundo. Por ser multiplataforma, pode ser executado em vários sistemas
operacionais diferentes.

Essa opção conta com diversos recursos que popularizaram o seu uso ao longo do
tempo, como é o caso do particionamento, do armazenamento em cache da
memória e do Clustering, que permite o funcionamento sem interrupção dos
serviços, caso um ou mais servidores em um cluster falhem.

Vale ressaltar que as empresas que utilizam o Oracle Database terão que mudar
seus licenciamentos para a nova versão, a Database 19c, para continuarem a ter
suporte da Oracle.
2. SQL Server
O SQL Server é o sistema de gerenciamento de banco de dados da Microsoft. Ele
funciona no modelo relacional (utiliza a linguagem SQL, Structured Query Language),
e suporta uma ampla variedade de aplicativos de processamento de transações,
inteligência de negócios e análises em ambientes corporativos de TI.

O Microsoft SQL Server é uma das três tecnologias de banco de dados líderes de
mercado, e inclui um mecanismo que processa comandos e consultas junto de
outro mecanismo de armazenamento que gerencia arquivos de banco de dados,
tabelas, páginas, índices, buffers de dados e transações.

3. MySQL
O MySQL é um gerenciador de banco de dados de código aberto, e por isso é
bastante popular. Ele trabalha com um modelo cliente-servidor: os computadores
que instalam e executam o software são chamados de clientes, e sempre que eles
precisam acessar dados, eles se conectam ao servidor.

Ser um gerenciador de código aberto significa que você é livre para usá-lo e
modificá-lo. Qualquer um pode instalar o software e também aprender e personalizar
o código-fonte para melhor atender às suas necessidades. A versão licenciada
comercialmente está disponível se você precisar de uma propriedade mais flexível e
suporte avançado.

4. PostgreSQL
O PostgreSQL é mais um sistema de banco de dados com código aberto, e é
reconhecido no mercado por ser o mais avançado entre esses tipos (como é o caso
do MySQL).

Uma característica importante do PostgreSQL é que ele requer esforços mínimos


para ser mantido por causa de sua estabilidade. Portanto, se você desenvolver
aplicações no PostgreSQL, o custo total é baixo em comparação com outros
sistemas de gerenciamento de banco de dados.

5. Firebird DB
O Firebird é um banco de dados relacional, também de código aberto, que oferece
muitos recursos padrão com a linguagem SQL que são executados no Linux,
Windows e em uma variedade de plataformas Unix. Esse sistema oferece alto
desempenho e um dos melhores suportes a idiomas do mercado.
Ele ainda fornece muitos recursos disponíveis para bancos de dados comerciais,
incluindo procedimentos armazenados, replicação e backups disponíveis enquanto
o banco de dados está em execução.

Você também pode gostar