Header Ads

Banco de Dados. Visão Geral

tecnologia e sistemas para internet

Conjunto de dados inter relacionados que visão atender as necessidades de um conjunto de usuários
SGBD
Sistema de gerenciamento de banco de dados é o software que auxilia na definição, atualização e manutenção de um banco de dados
SQL
Linguagem padrão para interação com o banco de dados relacionais
Padrão ANSI
(American National Stardard Institute)
SGBD – components

* Integração – possuem vários arquivos de dados relacionados
* Compartilhamento – várias pessoas podem acessar os dados ao mesmo tempo
* Persistentes – uma vez que os dados são inseridos só podem ser removidos por solicitação explicita do SGBD
* Programadores de aplicação – aqueles que desenvolvem aplicações externas que acessam instruções SQL do BD
* Usuários Finais – acessam as informações via aplicação da interface do SGBD
* Administrador do BD – Database Administrator, é quem coordena todas as atividades do SGBD, que normalmente tem bons conhecimentos sobre os recursos e necessidades de informação da empresa

Esquema
Estrutura lógica do banco de dados, EX. informação sobre determinados conjuntos e a sua relação
Instancia
Conjunto de informações de um BD em um determinado instante de tempo

Vantagens BDDados são compartilhados, ou seja, varias pessoas podem acessar os dados ao mesmo tempo.
A redundância pode ser reduzida, ou seja, o seu tamanho pode ser reduzido, simplificando ou excluindo informações desnecessárias
Suporte a transações, ou seja, ações entre o banco de dados como por exemplo transferência de dinheiro de uma conta para outra
Integridade, ou seja, a relação entre o banco de dados e suas informações tem veracidade e podem ser checadas mantendo assim a integridade dos dados
Segurança, ou seja, os dados so podem ser alterados pelos Administradores do banco de dados e as informações e seu acesso pode ser delimitado por necessidade do sistema

Conceitos Básicos

Dados – são os fatos ainda em sua forma primitiva que representam dados isolados ou objetos do mundo real
Informação – conjunto de dados organizado de maneira significativa

Aspectos do Modelo Relacionalo Aspecto estrutural – os dados são percebidos pelo usuário apenas em forma de tabelas
o Aspecto de manipulação – operação entre tabelas geram tabelas
o Aspecto de integridade – as tabelas satisfazem a relações de integridade


Visão Geral
Sistemas de gerenciamento de banco de dados são os softwares que auxiliam na definição, atualização e manutenção de um banco de dados a nível de cliente servidor, a Linguagem padrão para interação com o banco de dados relacionais é o SQL.
Tanto o SQL Server quanto o Oracle são extremamente funcionais, e não poderíamos definir qual o melhor sem estabelecer a situação prévia às necessidades do BD e os sistemas que o envolvem, porem principalmente referentes à sua plataforma funcional teríamos que usar no Windows o SQL Server o no Linux o Oracle.
A usabilidade e a referencia de custo benefício destes sistemas é relacionada a quantidade de usuários que se conectam, se ele é desktop ou web, se a inteligência do negócio está concentrada na camada do banco de dados ou em uma camada de aplicação ERP Enterprise Resource Planning ou no Brasil sistema integrado de gestão empresarial que integram todos os dados e processos de uma organização em um único sistema o que possibilita a automação comercial de sistemas.
Neste trabalho iremos relacionar estes dados ao SQL Server e o Oracle que através de plataformas características como: ODBC (Open Data Base Connectivity) é um padrão para acesso a sistemas gerenciadores de bancos de dados. Java Database Connectivity ou JDBC conjunto de classes que interagem com a interface de API ( programação do sistema web com o software de aplicativo do servidor) possibilitando o uso e interação com o banco de dados já instalados. DAO (Data Access Object) é um padrão para persistência de dados que permite separar regras de negócio das regras de acesso a banco de dados.


Características Principais
Os SGBD tem como característica nata a todos: Integração – possuem vários arquivos de dados relacionados, Compartilhamento – várias pessoas podem acessar os dados ao mesmo tempo, Persistentes – uma vez que os dados são inseridos só podem ser removidos por solicitação explicita do SGBD, Programadores de aplicação – aqueles que desenvolvem aplicações externas que acessam instruções SQL do BD, Usuários Finais – acessam as informações via aplicação da interface do SGBD, Administrador do BD – Database Administrador, é quem coordena todas as atividades do SGBD, que normalmente tem bons conhecimentos sobre os recursos e necessidades de informação da empresa. A redundância pode ser reduzida, ou seja, o seu tamanho pode ser reduzido, simplificando ou excluindo informações desnecessárias. Suporte a transações, ou seja, ações entre o banco de dados como, por exemplo, transferência de dinheiro de uma conta para outra. Integridade, ou seja, a relação entre o banco de dados e suas informações tem veracidade e podem ser checadas mantendo assim a integridade dos dados. Segurança, ou seja, os dados só podem ser alterados pelos Administradores do banco de dados e as informações e seu acesso podem ser delimitados por necessidade do sistema e percebidos pelo usuário em forma de tabelas.


Modelo que Implementa
Modelo que implementa é a linguagem padrão completa de consulta e manipulação de dados em BD’s relacionais, desenvolvida inicialmente pela IBM no inicio da década de 70, implementada pela primeira vez em um protótipo de sistema relacional e depois em muitos outros, onde a sua linguagem padrão é o SQL de direito ISO.
A implementação no oracle pode ser em dois esquemas: E/R – Entidade/Relacionamento e Objeto-Relacional, enquanto no SQL Server apenas o modelo E/R é suportado.
No modelo que implementa as referencias são responsáveis por estabelecer a restrição de integridade referencial entre as tabelas, estas restrições só podem ser incluídas se as tabelas referenciais existirem, porem as tabelas podem ser criadas sem a clausula e depois utilizar o comando alter table para realizar a restrição.
Encontramos no modelo que implementa instruções de visões, controle de autorização de acesso, controle de transações e concorrência, especificação de restrições de integridade, uma DDL ou data definition language para definição do esquema da base de dados e uma DML data manipulation language para programação de consultas e transações que inserem, removem e alteram linhas de tabelas, alem de SQL embutida em linguagem de programação que entende-se para a manipulação de banco de dados e um padrão de comunicação cliente/servidor (ODBC – Open Database Connectivity).


Limitações SQL Server
Limitação de capacidade de armazenamento de 4 GB, 1 processador com memória de 1 GB rodando no sistema operacional Windows, problema este que a Microsoft pode encontrar para conseguir ganhar espaço nesse mercado é a limitação do seu produto somente em seu próprio sistema operacional Windows, proporcionando custos nos projetos independentes, apesar de interface gráfica bem fácil de utilizar e integração com a maioria das linguagens de programação do mercado.
O SQL Server também não suporta em sua versão gratuita o Database mirroring que seria a copia exata de um conjunto de dados, que faz falta na implementação de sistemas para web muito utilizados para oferecer múltiplas fontes de uma mesma informação. Online restore o que dificulta a recuperação dos dados em caso de perdas parciais ou totais, sendo a responsabilidade deste procedimento do desenvolvedor do sistema, alocação das informações dos dados na memória ou Hot-add memory e vários outros recursos que na versão gratuita desvalorizam bastante o sistema, mas realmente teremos de frisar que mesmo na versão gratuita deste sistema é imprescindível o investimento de pelo menos a compra da plataforma Windows o que inviabiliza na maioria dos casos a utilização deste para pequenos negócios.

Limitações Oracle
Limitação de capacidade de armazenamento de 4 GB, 1 processador com memória de 1 GB rodando no sistema operacional Windows ou Linux, o que baixaria a o custo e viabilizaria a implementação deste sistema em automações comerciais de pequenas empresas a mais baixos custos, porem mesmo com máquinas super poderosas na versão gratuita você só poderia utilizar os recursos delimitados pelo sistema para este tipo de aplicação de maneira negativa.
Assim como a versão gratuita do SQL Server o Oracle em sua versão gratuita foi restringido em muitas de suas aplicações Automatic Storage Management que gerenciam o tamanho e volume dos dados do sistema referentes ao seu sistema de gerenciamento o que torma mais lento o sistema e faz necessário maquinas mais potentes para rodar os mesmos aplicativos, sendo exigido assim mais do sistema para estas aplicações. Trial recovery o que dificulta a recuperação dos dados em caso de perdas parciais ou totais, sendo a responsabilidade deste procedimento do desenvolvedor do sistema. O que a principio daria vantagem ao Oracle por não requerer a compra da plataforma de um sistema operacional, acaba por se perder na medida que este necessita de maquinas mais potentes e o que é pior sem que se possa utilizar todos os recursos em sua versão gratuita por delimitações do sistema para este tipo de aplicação, outra vulnerabilidade importante de se relacionar no servidor Oracle foi descoberta em localizadores de recursos uniformes que utilizavam parâmetros de CSS stylesheets o que atualmente seria um pré-requisito para interoperabilidade dos sistemas web, sendo estas fragilizadas pela permissão e execução de recursos de código Java arbitrários no sistema de servidor Oracle nas versões 8 e anteriores.


Comparação Oracle X SQL Server
Na verdade ambos os sistemas de SGBD Oracle quanto o SQL Server são muito eficientes, como já descrevemos anteriormente, o que irá ser determinante na escolha do modelo a ser utilizado será basicamente a nível financeira a equiparação do custo da compra ou aquisição da plataforma Windows em relação ao custo financeiro da maquina a nível de hardware equivalente a aproveitar ao máximo os recursos do Oracle que requer mais que o SQL Server e o conhecimento sobre as linguagens especificas dos mesmos, ou o tipo do banco de dados a ser implantado, pois se por um lado o SQL Server tem melhores recursos para banco de dados moveis, geográficos ou biológicos, por outro lado o Oracle oferece maior segurança com aplicativos que rodam direto da Web por API, apesar do SQL Server vir aprimorando esta questão de segurança, ainda fica para trás em relação ao Oracle.

Nenhum comentário:

Tecnologia do Blogger.