Na primeira aula de banco de dados, dia 26 de julho, nós realizamos uma pesquisa sobre banco de dados, as desvantagens e vantagens. Também, fizemos uma análise sobre o que é dado, banco de dados, e os bancos de dados conhecidos por nós alunos.
MySQL
CARACTERÍSTICAS
• Portabilidade (suporta praticamente qualquer plataforma atual);
• Compatibilidade (existem drivers ODBC, JDBC e .NET e módulos de interface para diversas linguagens de programação, como Delphi, Java, C/C++, Visual basicPython, Perl, PHP, ASP e Ruby)
• Excelente desempenho e estabilidade;
• Pouco exigente quanto a recursos de hardware;
• Facilidade de uso;
• É um Software Livre com base na GPL;
• Contempla a utilização de vários Storage Engines como MyISAM, InnoDB, Falcon, BDB, Archive, Federated, CSV, Solid…
• Suporta controle transacional;
• Suporta Triggers;
• Suporta Cursors (Non-Scrollable e Non-Updatable);
• Suporta Stored Procedures e Functions;
• Replicação facilmente configurável;
• Interfaces gráficas (MySQL Toolkit) de fácil utilização cedidos pela MySQL Inc.
VANTAGENS
ü Fácil integração com o PHP;
ü Tem uma boa disponibilidade para qualquer sistema operacional;
ü Conectividade segura;
ü Licença comercial;
ü Capacidade de facilmente converter sem problemas entre campos;
ü É bastante ágil e não exige muito hardware;
DESVANTAGENS
ü Não envolve operações complexas;
ü O banco de dados trabalha somente em memória, requerendo assim mais recursos do que um banco de dados normal MySQL (o MySQL 5.1 introduz table spaces com a capacidade de armazenamento de dados não indexados no disco);
ü Algumas características como buscas full-text, integridade referencial e níveis da isolação da transação mais elevados do que o READ COMMITTED, não estão disponíveis.
PostGreSQL
CARACTERÍSTICAS
Consultas complexas
Chaves estrangeiras
Integridade transacional
Controle de concorrência multi-versão
Suporte ao modelo híbrido objeto-relacional
Gatilhos
Visões
Linguagem Procedural em várias linguagens (PL/pgSQL, PL/Python, PL/Java, PL/Perl) para Procedimentos armazenagem
Indexação por texto
Estrutura para guardar dados Georeferenciados PostGIS
Vantagens
O PostgreSQL é bastante avançado, suportando a maioria das características esperadas em um sistema gerenciador de bancos de dados moderno:
- Stored Procedures: o PostgreSQL tem suporte à criação de stored procedures em PL/pgSQL, PL/Tcl e PL/perl. Usando stored procedures o programador pode realizar um grande número de operações dentro do próprio banco, aumentando o desempenho geral da aplicação.
- Altamente Extensível: o PostgrSQL possui uma característica bastante interessante que é a possibilidade de se utilizar operadores, tipos de dados, estruturas e métodos de acesso definidos pelo usuário (o programador do sistema).
- Banco de Dados "Relacional a Objetos": o banco de dados possui algumas características de orientação a objetos, como herança, por exemplo. Por isso, o PostgreSQL é, por vezes, chamado de banco de dados "relacional a objetos" e não só um banco de dados relacional.
- Características de Bancos Relacionais: quase todas as características esperadas em um banco de dados relacional são encontradas no PostgreSQL, como consultas declarativas em SQL, otimizações de consultas, controle de concorrência, transações e multiusuário.
- Integridade Referencial: é uma característica da última versão do PostgreSQL. O banco de dados agora suporta a integridade referencial de dados, característica muito útil que antes não era implementada.
- Instalação Simples e Rápida: a instalação do PostgreSQL é extremamente simples, especialmente para os usuários de gerenciadores de pacotes como RPM ou DEB. A configuração do banco também é bastante intuitiva e rápida.
Livre: o PostgreSQL é um software livre com todas as vantagens que isso acarreta.
Desvantagens
O PostgreSQL é um produto em desenvolvimento constante, mas ainda existem algumas características não-implementadas. Isto pode ou não ser uma desvantagem, dependendo do tipo de aplicação desejada. Entre as características não-implementadas, está a impossibilidade da criação de outer joins, limitação que, embora possa ser superada pelo programador com um pouco de criatividade, é bastante desagradável. Ele também não tem várias opções encontradas em outros bancos, como capacidade de replicação, backup, recuperação de falhas e otimizações avançadas.
Oracle
CARACTERÍSTICAS
Oracle é basicamente uma ferramenta cliente/servidor para a gestão de Bases
De Dados. É um produto vendido a nível mundial, embora a grande potência
que tem e seu elevado preço, faz com que só se veja em empresas muito
grandes e multinacionais, por norma geral. No desenvolvimento de páginas
web acontece o mesmo: como é um sistema muito caro não está tão espalhado
como outras bases de dados, por exemplo, Access, MySQL, SQL Server, etc.
Vantagens
Dá suporte, por exemplo, a:
- Data Warehousing: o Oracle 8i torna simples a criação e manutenção de data warehouses. A versão 8i trouxe maior desempenho, melhor utilização de recursos, maior capacidade de análise de dados e maior transparência na otimização de consultas.
- Segurança: a Oracle Internet Platform protege o banco de ataques via Web sem prejudicar a disponibilidade de informações e desempenho.
A Virtual Private Database (VPD) do Oracle oferece uma separação segura dos dados dentro da base. A VPD garante que os usuários somente tenham acesso àqueles dados pertinentes às suas atividades.
O banco permite que os dados sejam encriptados dentro do banco de dados. Isso torna possível esconder dados até mesmo do DBA e de superusuários. Além disso, o Oracle 8i ainda pode encriptar os dados quando estes trafegam pela rede, evitando que sejam interceptados.
Com as auditorias avançadas, pode-se acompanhar toda a atividade dos usuários na base de dados, e responsabilizá-los por suas ações.
Além disso, o Oracle 8i é o único banco de dados comercial com certificação de segurança FIPS 140 Nível 2, a mais alta certificação da classe.
- Desenvolvimento: o Oracle contém uma arquitetura completa para desenvolvimento de aplicações cliente/servidor ou baseadas na Web. Ele aposta na linguagem Java como padrão para desenvolvimento, trazendo uma máquina virtual totalmente compatível com as especificações da Javasoft e vários wizards para desenvolvimento de aplicações em Java de maneira rápida. Além do Java, é possível o desenvolvimento de aplicações utilizando outras linguagens, inclusive o PL/SQL e o Pro*C, ambos da Oracle.
- Integração de Aplicações: muitas vezes surge a necessidade de um sistema distribuído. Por exemplo, quando se quer acessar várias bases de dados em ponto geográficos isolados ou ainda melhorar o desempenho dividindo dados de maneira descentralizada. O Oracle 8i tornou simples a tarefa de criação deste tipo de aplicação.
- Alta Disponibilidade: segundo a Oracle, a disponibilidade e confiabilidade do banco de dados era o principal objetivo durante o desenvolvimento do 8i. O banco pode fazer uma manutenção programada e recuperar-se de ações erradas de usuários.
- Stored Procedures: o Oracle 8i suporta a programação de stored procedures em Java e em PL/SQL. Isso permite ao programador centralizar grande parte do código no próprio banco de dados, aumentando o desempenho do sistema.
- Triggers: os triggers permitem uma série de possibilidades interessantes. Com eles é possível programar o banco de dados para realizar uma ação quando alguma condição for satisfeita.
Desvantagens A redução de custos de paralisações com arquitetura de máxima
disponibilidade (inglês)
ü Mudanças nos sistemas de TI para a obtenção de maior rapidez com o
Real Application Testing
ü Particionamento e compactação de dados para executar consultas com
mais agilidade e menos discos
ü Proteção segura (inglês) e dados de auditoria, e capacidade de
recuperação total de dados
ü Eliminação de redundância ociosa com o Active Data Guard
Instalação Complexa: a instalação do Oracle 8i para Linux é complexa e extremamente demorada. A documentação da instalação é um tanto confusa.
Exigência do X Instalado: uma das maiores queixas quanto à instalação do Oracle 8i é sua instalação gráfica. Como o Oracle é normalmente instalado em servidores, onde, muitas vezes, não há o interesse de interfaces gráficas, obrigar os administradores a instalarem o X é algo desagradável.
Software Proprietário: a maior desvantagem do Oracle 8i é não ser um software livre. Ele também tem um custo bastante alto de licenças em comparação com outros bancos.
INTERBASE
CARACTERÍSTICAS
O Interbase é um Sistema Gerenciador de Bancos de Dados desenvolvido pela Borland. Oferece suporte à linguagem SQL (Structured Query Language) de acordo com o padrão SQL92, além de mecanismos eficientes de segurança e integridade de dados. Permite gerenciar transações e utilizar recursos como:
ü Visões;
ü Papéis;
ü Procedimentos armazenados (stored procedures) e gatilhos (triggers).
Vantagens
Entre suas qualidades, podemos citar:
Código Aberto: embora o Interbase não seja um software livre, ele tem código aberto, o que traz diversas vantagens, como a garantia de que o software terá seus bugs corrigidos com maior rapidez e que estará sempre disponível, mesmo que a Inprise/Borland deixe de existir.
- Controle de Concorrência: o Interbase implementa uma arquitetura de versões, o que faz com que uma operação de leitura jamais possa bloquear uma escrita.
- Total Compatibilidade com ANSI SQL-92: isso faz com que seja mais simples portar consultas e funções de e para outros bancos de dados.
- Suporte Total a UNICODE: pode-se guardar dados em qualquer idioma e alfabeto sem a preocupação com páginas de código necessárias em outros bancos.
- Arquitetura Multi-Threading: como o servidor de banco é implementado com múltiplas threads de execução, ele pode tirar grande proveito de ambientes multiprocessados, aumentando muito o desempenho.
- Auto-Ajustável: o Interbase é auto-ajustável, isto é, ele se configura de acordo com a necessidade para maior desempenho automaticamente. Não é necessário configurar dezenas de opções, pois o próprio banco se otimiza.
- Instalação Rápida: a instalação ocorre em poucos minutos e é bastante simples. Além disso, o Interbase não ocupa muito espaço em disco, ao contrário de outros bancos.
- Triggers: a implementação de triggers permite que sejam estabelecidas regras para os dados do banco.
- Stored Procedures: o uso de stored procedures, funções implementadas dentro do próprio banco de dados, encoraja o desenvolvimento modular dos sistemas e aumenta o desempenho das aplicações, já que os procedures são executados no próprio servidor.
- Sombra: o banco pode manter uma "sombra", isto é, uma cópia exata de si mesmo mantida pelo servidor. Esta cópia pode ser utilizada para recuperação de falhas de hardware, por exemplo.
- Suporte a Tipos Binários: é possível guardar dados binários como som, vídeo e imagens dentro do banco.
- Suporte a Arrays Multidimensionais: o banco disponibiliza suporte nativo a arrays multidimensionais utilizados em aplicações científicas e financeiras. Um único campo do banco pode guardar um array de até 16 dimensões, simplificando o desenvolvimento e aumentando o desempenho destas aplicações.
Desvantagens
A Inprise/Borland decidiu manter o controle sobre o nome "Interbase" e sobre a documentação do banco de dados. Isso acabou por atrapalhar os desenvolvedores que desejavam trabalhar no produto. Como a Inprise/Borland continuamente tem enfurecido os desenvolvedores com decisões que restringem a liberdade dos mesmos, um novo projeto está sendo criado utilizando os fontes do Interbase. Este projeto chama-se Firebird e tudo indica que ele será um banco de dados bastante poderoso no futuro, baseado no Interbase.
SQL Server
Características
ü É fácil de usar (se comparado com outros SGBD)
ü Oferece escalabilidade , ou seja, você pode começar desenvolvendo para um desktop e migrar para sistemas de multiprocessamento sem traumas.(bem com poucos traumas...)
ü Implementa o data warehouse , através do Analysis Services.(antes somente disponível no Oracle e demais SGBD)
ü é relativamente barato ( se comparado com outros SGBD)
VANTAGENS
ü Gerenciamento baseado em diretivas;
ü É possível simplificar o desenvolvimento de aplicações;
ü Armazena qualquer informação;
ü Integra qualquer tipo de dados;
ü Entrega as informações principais;
ü Permite uma maior percepção;
DESVANTAGENS
ü É mais lento;
ü É pago;
ü Deve ter bastante habilidade.
ü
FireBird
CARACTERÍSTICAS
ü Open-source
ü Configurações para ambiente 24x7;
ü Fácil configuração e manutenção;
ü Suporte à protocolos de rede;
ü Conformidade com SQL-92;
ü Acesso simultâneo a múltiplos bancos de dados;
ü Arquitetura multi-geracional;
ü Travamento otimista em registros;
ü Otimização de Queries;
VANTAGENS
ü Arquitetura de Múltiplas Gerações;
ü Conforto;
ü Maleabilidade;
ü Possibilidade de distribuição de catálogos em grande escala.
DESVANTAGENS
ü O banco de dados fica somente com a proteção padrão de senhas, logo qualquer pessoa que tenha um conhecimento sobre IBEXPERT ou similar poderia manipular as informações contidas no banco.
ü Ao embarcar um banco de dados firebird a uma aplicação este pode ser acessado somente por um executável de cada vez.
0 comentários:
Postar um comentário