Adoro o Elefantinho. Robusto, rápido, fácil, simples, seguro, boa documentação, várias listas de discussão (ativas e bem frequentadas), o SGBD mais próximo das normas. Ele sempre me surpreende, e apesar de tudo ainda hoje eu não conheço todo o poder dele.
Mas será que é o mesmo o melhor Banco de Dados?! Posso dizer de antemão que é o melhor Banco de Dados Open-Source. Depois dele, na minha concepção, não vem nem mesmo o MySql, da Sun, auto-intitulado “The world’s most popular open source database” (O Banco de Dados Open-Source mais popular do mundo). E eu recebo várias críticas por causa disso.
Não consigo nem me entender com o “explain” do MySql. Não consigo executar comandos via bash. Quando instalei o Cacic (Gerenciador de Hardware no parque tecnológico), demorei mais na instalação e configuração do MySql do que o próprio Cacic. Isso sem falar que até algumas versões anteriores do MySql ele não sabia direito o que era uma Chave Primária (deixando repetir valores no campo).
Sim, não sei mexer com MySql e não tenho vontade, o Postgres para mim supera qualquer banco, até mesmo o grande “rei” Oracle.
Nunca trabalhei com Oracle, para ser sincero. Isso não quer dizer que eu não o conheça e nem mesmo que não saiba o poder que ele tenha. Sei da dificuldade na instalação do software, geralmente acompanhado por um suporte (Pago). Já vem com uma interface para Administração (nunca vi, não sei do que é composta). Um grande uso da linguagem pl/SQL (que aliás é muito exigida pelo cargo de DBA).
A grande pergunta é: Será que vale mesmo a pena pagar tanto por um software sendo que você pode ter outro fazendo o mesmo de graça?
Muitos irão dizer que sim. Afinal, 47% do mercado usa Oracle.
Eu digo que não. O Postgres, que surgiu como projeto de Faculdade, depois conhecido como Postgres 95, daí para Postgres 6, Postgres 7, hoje Postgres 8.3.6, com versões em teste para o Postgres 8.4, é um software que está em grande crescimento, sendo usado por grandes empresas (Podemos citar a Apple e o Skype) e também como ferramenta de ensino de Banco de Dados e modelagem.
Nós, adoradores do Postgres, temos uma das maiores vantagens de usar esse maravilhoso Sistema de Gerenciamento: Upgrade. Sim, podemos atualizar o Software com muita facilidade e sem maiores transtornos. As atualizações são lançadas rapidamente com novas funcionalidades e correção de erros (que são muito poucos).
Talvez você ache que não precise de tudo isso, ou que o Postgres não seja tudo isso. Uma coisa eu tenho certeza: o Postgres pode não ser o melhor SGBD, porém ele pode suprir todas as suas necessidades.


Não conheço postgres mas sempre tive vontade de conhecer … esse post só me aumentou essa vontade … mas ó … que fique registrado que na minha visão é meio complicado definir um banco como o melhor sem conhecer os concorrentes …
[]s
[Responder]
só um toque … acho q a data do seu server tá errada … hj é domingo 22!
[Responder]
Valeu Rafael
ótima PARTICIPAÇÃO …
Estou vendo que teremos boas novidades do postgres …
Na verdade, eu tenho mais facilidades pra instalar o mysql porque no ubuntu é só digitar
$sudo apt-get install mysql-server
e para acessar:
$mysql -u root -p
em fim, mysql é o básico mesmo …
Postgres é um cara com mais peso.
Valeu …
[Responder]
Concordo com autor,
Para mim o postgres também é o melhor SGDB que existe OPEN-SOURCE, não posso dizer que é melhor do que o ORACLE porque ainda não mexi com ele ainda mas hoje nem quero.
Quanto o MYSQL algumas pessoas dizem para que eu faça os testes pelo menos, ai tenho que responder que para fazer testes tem o SQLite que é muito bom para isso.
Já trabalhei com MYSQL, SQL Server (um lixo), Firebird, SQLite, PostgreSQL este foi o que mais me surpreendeu e minha escolha quando tenho opção.
pg_dump, pd_restore, pg_admin, alguns dos carinhas que tenho usar para trabalhar com postgres que são de facil acesso e pouco traumaticos em sua utilização.
Abraços.
[Responder]
Trabalho há anos com o PostgreSQL e já trabalhei com Oracle por algum tempo também. Realmente, a maioria das aplicações que os usuários pagam um caminhão de dinheiro por um Oracle, poderiam ser substituídas com folga por bancos PostgreSQL.
A maioria dos usuários usa Oracle por causa de uma garantia de suporte e para alguém para culpar se algo der errado. O pior é que por causa dessa garantia de suporte, muitos ficam amarrados a versões antigas de outros software, por ser a versão que está coberta pela garantia da Oracle.
As grandes vantagens que eu utilizava no Oracle aos poucos foram aparecendo nos SGDBs livres, e sempre primeiro no PostgreSQL. Porém uma coisa que, para alguns usos, o Oracle se mantinha líder era processamento distribuído de queries, o que com achegada do SkyTools, que o pessoal do Skype usa com o PostgreSQL, o PostgreSQL parece estar alcançando também. Infelizmente ainda não usei o SkyTools, mas planejo estar usando em breve para prova de conceito.
[Responder]
Já eu me sinto estranho utilizando o PostgreSQL, mas me sinto à vontade usando o MySQL.
Não que eu ache o PostgreSQL ruim, mas entendo melhor o esquema do MySQL.
[Responder]
Como dizia um velho amigo meu, o melhor banco de dados é aquele que você conhece e que nunca vai de deixar na mão. Se você quiser (vender) o PostgreSQL para quem quer e (precisa) de Oracle, certamente você será ridicularizado. Ainda bem que existem diversas opções no mundo que alimentam uma competição saudável. Já participei de um projeto onde o cliente gastou certa de R$ 1.000.000,00 para montar hardware + software para um mega sistema com 2.000 tabelas e pasme, sem nehum plSQL ou similar, view ou segurança, todos conectando a partir de um login único chamado sa. Parabéns para ele que dorme feliz todas as noites achando que fez um bom negócio, e parabéns para você que achou no postgres a mesma felicidade. Só para constar eis a minha lista de favoritos:
1. PostgreSQL
2. MySQL
3. SQLITE
4. DB2
5. O Resto…..
[Responder]
Sinceramente, uso o Firebird, e me atende perfeitamente, e não sei pq não é mencionado ou posicionado bem num ranking como um banco bom ! Mysql acho bem chatinho ! Tenho curiosidade em conhecer o PostgreSQL e vou conhece-lo !
[Responder]
Obrigado a todos pelos comentários. Acredito que o debate “Qual é o melhor banco?” nunca terminará, pois como disse nosso colega: “O melhor banco de dados é aquele que você conhece e que nunca vai te deixar na mão”.
O SkyTools foi muito bem desenvolvido pelo pessoal da Skype, e pelo que eu li, faz muito bem o que promete, mas eu nunca consegui testar. Tá na minha lista de próximos softwares a bater em cima até conseguir fazer funcionar.
O Firebird já foi um péssimo banco. Travava toda hora, não tinha poder de processamento, os backups não tinham nenhuma garantia. Para você ter idéia, conheço pessoas que preferiam o Access ao Firebird.
Na empresa aonde trabalho, tínhamos um serviço que pedia o Firebird como banco de Dados. A Cada 1 mês era necessário fazer uma limpeza do banco porque senão o serviço começava a ficar lento.
A versão mais recento do Firebird, a 2.1, está bem melhor que as anteriores. Sendo mais estável mais pessoas optaram por seu uso.
Mesmo assim, ele não tem nenhum recurso inovador, a não ser queryes recursivas que está sendo implementando na versão 8.4 do Postgres.
É isso ae pessoal. Vamos “Banquear”
[Responder]
Meu professor de banco de dados falava nas aulas…
“Qual melhor SGBD???
Depende da necessidade.
Qual o melhor carro???
Depende da necessidade.
Você vai fazer uma viagem longa em uma estrada de pista dupla muito bem pavimentada ou vai fazer um rally???
Qual o melhor SGBD???
Depende.”
[Responder]
Acho que é a primeira vez que vejo alguém falar que o Postgres é o melhor Banco de Dados, pelo simples fato de o autor não se dar ao trabalho de aprender MySQL e não ter vontade de aprender Oracle.
Sempre gostei de afirmações fundamentadas, pois bem:
1) Você não se entender com o EXPLAIN do MySQL não quer dizer que este seja melhor ou pior do que o Postgres, isso é apenas uma característica sua.
O comando EXPLAIN tem sua documentação facilmente encontrada no site do MySQL.
Já trabalhei com Postgres e com MySQL. Posso dizer que o EXPLAIN dos dois é facilmente compreensível por qualquer profissional que queira entendê-los.
2) Você não conseguir instalar o MySQL não quer dizer que este seja bom ou ruim. Alias, é a primeira vez que vejo alguém dizendo que é dificil instalar o MySQL. Muitos usuários semi-leigos o fazem.
Além disso, a instalação do Banco de Dados propriamente dita não é, de fato, tarefa de um programador. Você como DBA deve saber disso, então pergunto:
Você diz que o Postgres é o melhor banco para instalação e administração ou como programador (recursos, conformidades ANSI, performance e etc)?
3) Você não se dispor a conhecer Oracle, não significa que o banco é bom ou ruim. Todo o trabalho e maturidade da Oracle não pode ser lesado pela sua falta de iniciativa em conhecer outros bancos.
A grande pergunta é: Será que as grandes empresas gastam verdadeiras fortunas com Oracle pelo simples fato de jogar dinheiro fora, ou seria por incompetência dos CIO’s? Ou será então que esse banco tem sim suas vantagens e retorno de investimento?
Veja uma empresa grande (uma BATAVO da vida por exemplo) onde existe uma base de dados interna muito grande, muita necessidade de BI, Datawarehouse, Datamining e etc. Uma empresa onde a base é alimentada diariamente, astronomicamente e onde as informações vale milhões.
Veja que para essas empresas a necessidade de se obter informações, muitas informações, diversos tipos de informações é muito grande, ou seja, eles trabalham muuuuito com relatórios, por isso ferramentas como o Oracle FORM são valiosissimas.
O que o Postgres oferece nesse sentido?
4) Não se pode julgar uma ferramenta atual pelo passado. Primeiro que eu não sei de onde você tirou isso: Dizer que o MySQL duplicava chaves primárias (what???), segundo que a poucos anos atrás, quando eu trabalhava com Postgres, este não suportava uma importação de dados um pouco maior (10 ou 50.000 registros).
Tinhamos que agendar vários VACUMMs durante o dia para ir organizando a base (tirando o serviço do ar de tempos em tempos) para poder continuar com as importações de dados.
Acabamos tendo que migrar o banco para MySQL para poder dar conta do recado, e olha que funcionou “buitinho”
5) Posso te dizer o seguinte: Já trabalhei com diferentes Bancos de Dados e com diferentes situações. Cada banco de dados vai ser mais ou menos útil para determinado projeto, de acordo com suas características. Para algumas situações o Postgres será a melhor alternativa, para outras o MySQL, para outras o Oracle, para outras o MSSQL…
Pense nisso. Como DBA você deveria saber disto.
[Responder]
Acho que o cara aí ficou ofendido…rs
Relaxa…
[Responder]
Eu testei vários bancos de dados para minha aplicação e a que mais se adaptou-se foi o MySQL, não vou dizer que um é melhor do que o outro, acredito que todos tem o seu valor, vejo pelo lado de qual será mais útil para sua aplicação e demais atributos.
Outra coisa, quem estiver cansado de usar o Terminal do MySQL, pode-se utilizar o SQLyog MySQL GUI é uma ferramenta que fornece bastante funcionalidade em administração de Banco de Dados MySQL, site: http://www.webyog.com/en/index.php
E para quem quiser saber quem utiliza MySQL, empresas de peso: Entre os usuários do banco de dados MySQL estão: NASA, Friendster, Banco Bradesco, Dataprev, HP, Nokia, Sony, Lufthansa, U.S Army, US. Federal Reserve Bank, Associated Press, Alcatel, Slashdot, Cisco Systems, CanaVialis S.A. e outros (fonte Wikipedia)
[Responder]
Concordo que Postgres é um grande SGDB, mas será que aguentaria uma imensa carga de transações on-line sem abrir o bico igual a um banco de dados Oracle?
Realmente pode ser que cada caso é um caso…
No mais, a matéria está muito boa, por iss gerou tanto debate.
[Responder]
O pior de tudo é falar que um produto “A” é melhor que “B”, sem trabalhar ou realmente conhecer “B”, como no caso do Oracle…
[Responder]
Concordo com o “Interessa?”!
Pois um DBA para criticar um determinado SGBD tem que no mínimo conhecer o que ele oferece ou não, em termos de ferramentas, funcionalidades, desempenho e por ai vai. Não postar um artigo totalmente parcial.
Escreva um post mais tecnico, onde podemos trocar informações embasadas. Este post foi polemico pela ignorância do autor de escrever por escrever.
[Responder]
Ah tá.. “Eu não conheço nenhum outro BD, mas o melhor de todos os que já usei é o Postgres” .. hehehe.. parece até piada.
[Responder]
Omar,
Gostaria de saber por que você achou a matéria muito boa. Seja mais específico por favor.
O autor vem e diz que nunca usou nenhum outro Banco de Dados, fica claro que trabalhou em poucas realidades, ou seja, não tem conhecimento sobre diferentes projetos de diferentes naturezas, mas mesmo assim afirma que o Postgres é o melhor Banco de Dados, ignorando todas as variantes possíveis em um projeto e/ou empresa, e mesmo assim você achou a matéria boa (???).
Seja mais específico por favor. O que tem de bom aqui?
Temo por este tipo de matéria por acaba induzindo justamente esses comentários sem fundamentos:
- “Ah, o Postgres é o melhor banco que tem. MySQL não é banco. Oracle pra que, se é pago?”
- “Por que?”
- “Ah, porque eu nunca usei outro banco, não consegui instalar o MySQL e tão pouco consegui compreender o EXPLAIN, então todo o resto não presta”.
Bah, preciso comentar mais?
[Responder]
Também concordo com um post acima que diz que cada banco tem sua finalidade… Generalizar que não é legal !!! É o mesmo que dizer: “todo windows é uma bosta, todos linux é ruim, toda maquina HP é podre, etc…. a melhor linugagem do mundo é java, ou ruby, ou cobol”…
Por isso: “nunca…mas nunca generalize”
[Responder]
Concordo plenamente contigo.
Trabalho a muitos anos com PostgreSQL e a administração dele além de ser fácil e rápida, é muito eficiente.
Não perde em recursos para nenhum banco, e tem um recurso que nem o “rei” Oracle tem, que é possibilidade de transação na criação/alteração/exclusão de objetos (tabelas, triggers, functions, bases de dados e etc)
Abraços!
[Responder]
Acontece que eu momento algum afirmei que o Postgres é o melhor banco. Afirmei, sim, que ele pode suprir todas as necessidades.
Acredito que o Postgres é um dos poucos bancos que mais cresce no mundo, mas isso não quer dizer que outros SGBDs não tenham seu mercado e seu próposito.
Concordo que determinado SGBD pode ser melhor numa tarefa específica (como Internet, BI, Datamining…) do que outro SGBD. Em nenhum momento eu falei que esses bancos não são bons o suficiente para determinadas tarefas.
Veja, o X do Post é que o Postgres é suficiente para suprir todas as necessidades que um software precise; não que o Postgres é o melhor banco de Dados, ou melhor que banco “B” ou “C”.
Afirmo, novamente, que a discussão “Melhor Banco de Dados” nunca irá terminar, pois varia de gosto a gosto, experiência a experiência.
[Responder]
Você se contraria ao dizer que o PostgreSQL supera até o “rei” Oracle quando diz que nunca trabalhou com Oracle. Você nem ao menos citou um benchmark, as métricas utilizadas para o benchmark, os valores esperados para o benchmark.
É a mesma coisa que dizer que a religião X não presta sem ao menos ter praticado.
Não tem como dizer da boca pra fora que o PostgreSQL supera o Oracle. Supera em quê? Quantidade de consultas por segundo? Algoritmo de indexação das chaves primárias? Consumo de memória? Processamento? Disco?
Você nem sabe das funcionalidades do Oracle, as ferramentas de desenvolvimento que ele oferece.
Provavelmente, você está acostumado com ambientes pequenos, onde 1 ou 3 servidores rodando PostgreSQL dão conta do recado. Quero ver quando você necessitar fazer um grid com esses servidores, digo 30 ou 80 deles rodando em paralelo, o pgpool pede arrego!
Oracle é um produto comercial que as empresas querem ter para repassar a bomba dos problemas que um SGBD carrega. E isso custa caro. Para uma empresa que lucra R$ 120 milhões por ano, pagar R$ 40 milhões em licenças Oracle é preço de banana. Sem contar que nesses casos, a Oracle “oferece” seu produto apenas para ter o caso de sucesso.
Como alternativa open source, o PostgreSQL é um excelente SGBD. E como você disse, ele é bem documentado, robusto e fácil de usar.
[Responder]
“MySql, da Sun, auto-intitulado “The world’s most popular open source database” (O Banco de Dados Open-Source mais popular do mundo). E eu recebo várias críticas por causa disso.”
Mas é verdade, não sei porque você recebe críticas. Estima-se que há mais de 11 milhões de instalações de MySQL por todo o mundo. Práticamente todas as hospedagem web oferecem o mysql.
“Não consigo executar comandos via bash.”
Quais comandos você não consegue executar via bash?
Sinceramente Rafael, eu adoro o postgres também. Acho que faltam boas ferramentas para ele. O MySQL tem seus defeitos, seu bugs, mas é um puta banco também. Em benchmarks, o postgresql não costuma ficar nem na frente do Mysql, nem do Oracle. Assim como vc não entende o “explain” (que eu acho simples), eu não entendo o porque de tanto auto-vacuum do postgresql (que pra vc deve ser simples). Essa questão de “melhor banco opensource” é muito relativa, tanto quanto mostrada no seu texto. Uma vez que você tenha uma certa experiência num banco, e quase nada no outro.
[Responder]
Cara, sem querer ofender, mas sendo sincero. Na boa. Quem é você para dizer que o Postgres é o melhor banco de dados e ponto final? Me pareceu uma declaração leviana.
Esse tipo de informação é pesada, e só pode ser aceita se for feita por alguém de peso.
[Responder]
KKKKKKKKKK.
Voce devia publicar isso em algum site de piadas.
te garanto que quem usa oracle não está preocupado se o suporte é pago. Em vários casos é até melhor que o suporte seja pago e muito bem pago. Se voce paga, pode cobrar e responsabilizar.
Gostaria de saber que tipo de DBA considera importante a “facilidade de instalação”.
Isso sem falar obviamente no uso do banco de dados. O postgresql não me parece muito adequado para grandes datawarehouses, acho que não tem paralelismo nem direct path. Isso sem falar que o particionamento é feito com triggers, isso é muito tosco!
Gostaria de saber uma coisa. Como voce sabe que o postgresql é melhor que o oracle se voce nunca trabalhou com oracle?
O postgresql é bom, mas não se compara com o oracle nem com o DB2.
[Responder]
Realmente essa informacao que o Postgresql é o melhor banco de dados foi realmente infeliz
talvez se alterar o tópico para o melhor SGDB opensource resolva o problema.
Agora nada se compara com um Oracle, DB2 talvez passe perto de um sqlserver
como diz o nosso amigo anonimo, me diz em que o Postgresql é melhor que o oracle ou db2?
So mais uma perguntinha qual profissional e mais valorizado no mercado DBA Oracle ou PostgreSql?
[Responder]
Pessoal, vocês pegam pesado ao dizer que o PostgreSQL não se compara ao Oracle ou algum outro de nome, isto é preconceito. Vejam http://www.youtube.com/watch?v=XDV2ABbzhVY
[Responder]
Esses caras pararam na decada de 90… PG eh mto mais avancado q oracle… oracle eh historia…
Mas tomara q tu continue ae no oracle, e provalvemente…hmm java ou .net .
Desejo o bem pra ninguem mais…
[Responder]
Eh impressionante como o povo veste a camisa.
Sou programador C#, vi q tem gente q acha o SQL Server um lixo, eu n visto camisa de nenhuma empresa assim, e acho o SQL Server muito bom, e n vi ferramenta de administração do banco igual ao Management Studio.
Por outro lado, gosto muito do Java tb, ao contrário de muitos q gostam apenas de uma linguagem/plataforma, e qdo conheci o Java, conheci tb o Postgre, q gostei muito tb.
O que penso é: Se a empresa n pretende trab com linux, n vjo pq n ter como plataforma o .Net e como banco de dados SqlServer, caso contrário, o Java é uma ótima alternativa e neste caso eu optaria pelo Postgre.
Isso é um resumo muito resumido do que acho, mas o que eu quero dizer é, há casos e casos, essa coisa de melhor nem deveria ser discutida, pq eu só vjo nego descendo pau num ou noutro, mas seria bom se quem faz isso conhecesse a fundo os dois lados da história, eu por ex. estudei um pouco do Oracle tb, n gostei, mas dizer que é ruim, não, pelo amor de Deus, é ótimo, só n é minha preferência, apesar de algumas coisas em comum, prefiro o Postgre.
É mais ou menos isso.
[]s
[Responder]
Hoje em dia tem cada “cachorro” que se auto intitula DBA.
[Responder]
Eu sou tecnus e DBA a vicius anos e acho o Rafael Domiciano um profissional e tanto, gostei do post que ele criou e concordo com ele.
Rafael Domiciano, eu estou contigo cara e também nunca trabalhei com outro banco de dados a não ser com M$ Access que acho mais poderoso que o Oracle.
Vamos fazer posts sobre banco de dados e expressar nossa total falta de experiencia e conhecimento para abrir os olhos desse bando de leigos no assunto.
MS ACCESS É O MELHOR BANCO DE DADOS DO MUNDO!!! (Mas eu queria ter dinheiro e conhecimento para usar o Oracle)
[Responder]