# Banco de Dados II #Aula 14 - MySQL x Firebird x PostgreSQL
(Uma Análise Comparativa de Desempenho)
Prof. Leinylson Fontinele Pereira
Vamos começar?
21:02 4 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Sistema de Gerenciamento de Bancos de Dados
21:02
Cada SGBD apresenta sua própria estrutura ou organização,características e visões de dados aos usuários.
Existe uma preocupação com qual sistema de banco de dadosé melhor do que o outro diante de situações práticas.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Sistema de Gerenciamento de Bancos de Dados
21:02
A demanda por SGBDs cresce continuamente a cada dia, ejuntamente com essa demanda, cresce também o volume dedados que estes sistemas devem gerenciar assim como acomplexidade de suas aplicações.
Isto provoca o interesse em desenvolver trabalhos de análiseentre os diferentes sistemas existentes no mercado.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Como deve ser realizada a avaliação de desempenho de um SGBD?
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Segundo [CARNEIRO 2011], efetuar operações sobre estasgrandes coleções de dados é uma questão pontual, pois aavaliação de desempenho de um SGBD é medida, usandocomo base sua eficiência diante de consultas e alterações.
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Sistema de Gerenciamento de Bancos de Dados
21:02
A escolha de SGBD, dentre a grande diversidade disponível nomercado é uma tarefa delicada, devido à importância eresponsabilidade que essa ferramenta representa por gerenciaruma das maiores riquezas de uma organização...
Nesta tarefa, vários fatores devem ser considerados, tais comoconfiabilidade, integridade e segurança dos dados, suporte àlinguagem de programação, interoperabilidade, conjunto deferramentas do produto, desempenho, etc.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
MariaDB?
21:02
MariaDB é um avançado substituto para o MySQL
Existia o temor que a Oracle fosse comercializar o MySQL e fechar o código-fonte, mas depois de muita brigahouve um acerto em que a Oracle se comprometia a manter os termos de licença do MySQL, com isso ocorreu afusão.
Mas os criadores do MySQL principalmente Michael Widenius, iniciaram o desenvolvimento de um novo SGBDbaseado no MySQL 5.1 para garantir que a distribuição GPL (não gratuito para fins comerciais).
Existem rumores na comunidade que talvez em breve, a Oracle passe comercializar ou descontinue o MySQL,isso é fruto das últimas atitudes de não reportar mais a correção de bugs.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
MySQL
21:02
O MySQL é um banco de dados relacional que utiliza a linguagem SQLcomo interface (WILLIANS e TAHAGHOGHI, 2007).
É um dos bancos de dados mais populares, software livre, com grandefacilidade de uso e pouco exigente quanto a recursos de hardware.
Entre os usuários do banco de dados MySQL estão:# Alcatel, Associated Press, Banco Bradesco, Cisco Systems, Dataprev, Friendster, HP, Lufthansa,
Motorola, NASA, Nokia, Sony, Slashdot, Texas Instruments, U.S Army, US. Federal Reserve Banke Wikipédia (MYSQL, 2009).
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
MySQL
21:02
O sucesso do MySQL é devido a sua grande portabilidade em diversasplataformas operacionais como Linux, Windows, Solaris, FreeBSD,MacOS X, HP-UX, AIX, SCO, SGI, SCI Irix, SunOS, DEC OSF e BSDi(SUEHRING, 2002).
30 mil downloads diários e 5 milhões de instalações (entrewebsites, datawarehouse, aplicações comerciais, etc
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
MySQL
21:02
Tem uma alta compatibilidade com módulos de interface para diversaslinguagens de programação, permitindo ao desenvolvedor acessar emodelar o banco de dados em várias linguagens como Delphi, Java,C/C++, Tcl, Python, Perl, PHP. ASP e Ruby e disponibiliza mecanismospara acessar ODBC, JDBC e NET.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
MySQL
21:02
Reconhecido pelo seu desempenho e robustez. Oferece tamanho detabela de dados disponíveis para volumes de carga enormes.
Facilidade para aplicações Web e aplicações de nível corporativo, alémde oferecer estabilidade para processos de multitarefa e multiusuário(SUEHRING, 2002).
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
MySQL
21:02
MySQL é um banco de dados multiprocessado, significando que podeutilizar vários processadores ao mesmo tempo.
Capacidade para manipular bancos com até 50 milhões de registros.
O MySQL foi escrito em C e C++. Permite conexões via TCP/IP.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
PostgreSQL
21:02
PostgreSQL é um Sistema Gerenciador de Banco de Dados Objeto Relacional(SGBDOR), desenvolvido como projeto software livre.
As suas características predominantes e recursos são:# Consultas complexas com novos tipos de dados nativos (novos tipos de datas e hora e tipos
geométricos)# Múltiplas chaves-estrangeiras# Integridade transacional# Controle de concorrência multiversões# Suporte ao modelo híbrido objeto relacional# Informações estatísticas do banco de dados# Outer joins, suporte a IPv6, indexação por texto...
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
PostgreSQL
21:02
Foi a primeira a ter suporte nativo para Microsoft Windows.
Nas versões antigas, só era compatível em sistemas operacionais Unix eWindows, através da biblioteca Cygwin.
Atualmente, tem uma portabilidade para sistemas operacionaisdistintos, tais como: Windows, MacOS X e Linux (SUEHRING, 2002).
Tabelas com tamanho de até 32 TB; Quantidade de linhas de até 1.6 TBilimitada; Campos de até 1 GB.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
PostgreSQL
21:02
Compatível com C/C++, Delphi, Java, Perl, PHP, Python, Visual Basic, eoutras [LEITE, 2007].
O PostgreSQL oferece suporte comercial por meio de diferentesempresas de consultoria independentes, embora sua documentação realé relativamente pequena.
Com relação a transações de dados, o PostgreSQL pode ser lento, o quedificulta sua concorrência com os outros SGBD (SUEHRING, 2002).
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Firebird
21:02
Firebird ou FirebirdSQL é um Sistema Gerenciador de Banco de DadosRelacional (LEITE, 2007).
Sua portabilidade é multiplataforma, nos ambientes operacionais comoLinux, Windows, Mac OS e uma variedade de plataformas Unix.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Firebird
21:02
A Fundação FirebirdSQL coordena a manutenção e desenvolvimentodo Firebird, sendo que os códigos fonte são disponibilizados sob o CVSda SourceForge (BORRIE, 2006).
Desta forma, este SGBD é gratuito em todos os sentidos
# Não há limitações de uso
# Seu suporte é amplamente discutido em listas na Internet e em vários sites
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Firebird
21:02
O Firebird é um banco de dados com características próprias, obtendouma aceitação imediata no círculo de programadores, pois mostrou serbastante seguro, suportando sistemas multiusuários, com altaperformance e mantendo com boa estabilidade bases de dados comvolumes de carga acima de 2GB de tamanho (FIREBIRD, 2009).
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Firebird
21:02
Possui suporte a replicação, integridade referencial entre tabelas,backups incrementais, transações compatível com ACID, UDF eSubSelects.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Ambiente de Simulação
21:02
As definições de carga e os testes tiveram como ambiente de execuçãoum notebook Dell XPS com processador core I7 2,2GHz com 8GB dememoria RAM. O sistema operacional utilizado foi o Windows 7Ultimate SP1.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Ambiente de Simulação
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Ambiente de Simulação
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Resultados dos testes comparativos
21:02
Os resultados foram separados por três etapas, levando-se em consideração os volumes de dados aplicados:
# A primeira etapa, foi efetuada com o um volume 1000 registros.
# Na segunda, foram utilizados 10.000.
# Por ´ultimo, foram usados 100.000 registros.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
21:02
1000registros
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Resultados do primeiro teste
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Resultados do primeiro teste
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Resultados do primeiro teste
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Resultados do primeiro teste
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
21:02
10.000registros
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Resultados do segundo teste
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Resultados do segundo teste
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Resultados do segundo teste
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Resultados do segundo teste
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
21:02
100.000registros
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Resultados do terceiro teste
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Resultados do terceiro teste
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Resultados do terceiro teste
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Resultados do terceiro teste
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Conclusão!?
21:02
É importante ressaltar nesta conclusão que todos os resultados obtidosrefletem o ambiente de teste onde foi realizado.
Os resultados finais não podem ser levados em consideração como umpadrão para qualquer outro tipo de ambiente ou aplicação.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Conclusão!?
21:02
Em todos os testes o banco que teve o melhor tempo para a inserção dosdados foi o Postgresql. Assim, pôde-se constatar que é um banco que,quanto maior o volume de dados inserido, melhor será o tempo deresposta em relação aos outros bancos de dados.
O PostgreSql é indicado para aplicações mais robustas, que recebemum grande número de insercões durante seu funcionamento. Essebanco de dados também foi o que apresentou o menor tempo, quandorealizados os procedimentos de alteração de maior volume de dados.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Conclusão!?
21:02
O PostegreSQL é um banco que ocupa muito espaço no disco físico, oque exige uma máquina com grande capacidade de armazenamento.
O PostegreSQL também foi o banco que teve o pior desempenho,quando realizado o comando para consulta dos dados. O custo paraconsultas de 100.000 foi muito alto, representando quase uma medidade tempo seis vezes maior que o MySQL.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Conclusão!?
21:02
Já o MySQL, foi o SGBD que obteve menor tempo de consulta em todosos testes, se mostrando um banco ágil quando a necessidade daaplicação for de uma leitura rápida para acesso aos dados.
Por fim, o Frebird obteve o melhor desempenho no segundo e noterceiro testes, mas que ficaram muitos próximos de outros bancos.
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
SQL manda nos dados!!
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Popularidade de código aberto vs comercial
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Popularidade de código aberto vs comercial
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Popularidade de código aberto vs comercial
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Os 5 melhores sistemas comerciais
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Os 5 melhores sistemas de código aberto
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Métricas Utilizadas
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Número de menções do sistema em sites, medido como número de resultados em consultasdos motores de busca. No momento, nós usamos o Google e Bing para esta medição. Paracontar apenas resultados relevantes, estamos à procura de <nome do sistema> em conjuntocom o banco de dados, por exemplo, "Oracle" e "base de dados".
Interesse geral no sistema. Para esta medição, usamos a frequência de pesquisas no GoogleTrends.
Frequência de discussões técnicas sobre o sistema. Número de ofertas de emprego, em que o sistema é mencionado. Nós usamos o número de
ofertas sobre os principais motores de busca de emprego. Número de perfis em redes profissionais, em que o sistema é mencionado. Usamos o
LinkedIn rede profissional internacionalmente mais populares. Relevância em redes sociais em que o sistema é mencionado.
DB-Engines Ranking
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
DB-Engines Ranking: Geral
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
DB-Engines Ranking: MySQL
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
DB-Engines Ranking: Firebird
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
DB-Engines Ranking: PostgreSQL
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
21:02
Então, qual sua escolha?
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Material: https://sites.google.com/site/leinylsonuespi
21:02
Aula baseada no material de:
Análise de desempenho de Bancos de Dados, ErickRodrigues Ferreira, Sergio M. Trad Júnior
Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Na próxima aula veremos...
Apresentação dos projetos finais
21:02 Banco de Dados II: Aula 14 - MySQL x Firebird x PostgreSQL (Uma Análise Comparativa de Desempenho)
Alguma Dúvida?
21:02
Até a próxima [email protected]
“Se um dia tiver que escolher entre o mundo e o amor...Lembre-se. Se escolher o mundo ficará sem o amor, mas seescolher o amor com ele você conquistará o mundo”.