Conheça o banco de dados livre, robusto e repleto de funções exclusivas

A 4Linux conversou sobre o PostgreSQL com Flavio Gurgel, entusiasta do software livre e especialista em banco de dados há quase 20 anos. Gurgel, atualmente, presta consultoria, suporte e treinamento aos clientes da 4Linux. Confira os detalhes dess...

Wednesday, 3 de April de 2013

A 4Linux conversou sobre o PostgreSQL com Flavio Gurgel, entusiasta do software livre e especialista em banco de dados há quase 20 anos. Gurgel, atualmente, presta consultoria, suporte e treinamento aos clientes da 4Linux. Confira os detalhes desse bate-papo:

4Linux: A migração de um ambiente PostgreSQL para outros bancos, e de outros bancos para PostgreSQL, pode ser considerada uma tarefa de difícil execução?

Flavio Gurgel: Em alguns casos sim. Normalmente, quando o banco de dados não contém funções (stored procedures), a migração dos dados em si é relativamente tranquila, sendo que a aplicação precisará ter alguns ajustes nas consultas realizadas, por causa da diferença de sintaxe entre os bancos. Algumas camadas de abstração, como o Hibernate do mundo Java, podem facilitar essa migração pois é essa camada que conversa com o banco, portanto, ela pode já ter embutido o "dialeto" de diversos bancos de dados, isolando isso da aplicação e consequentemente do desenvolvedor. 

Porém, existem casos em que a migração pode ser bastante trabalhosa, quando se usa programação dentro do banco de dados. Nestes casos, normalmente é necessário reescrever cada função com a linguagem adequada a cada gerenciador de banco de dados.

Banco de dados

O produto Postgres Plus Advanced Server, da EnterpriseDB, que nós  representamos no Brasil, possui compatibilidade de consultas e funções com o Oracle Database. Com este produto, podemos fazer migrações Oracle->PostgreSQL e vice-versa com taxa de até 80% de sucesso sem intervenção manual, nem no banco de dados e nem na aplicação. Imagine que uma aplicação Oracle, sem modificações, pode se conectar diretamente no Postgres Plus Advanced Server.

4Linux: Que fatores de mercado fazem com que a adoção do PostgreSQL esteja "na moda"?

Flavio Gurgel: O PostgreSQL já deixou, faz algum tempo, de "correr atrás" dos outros gerenciadores de bancos de dados. Hoje, podemos dizer que o PostgreSQL tem funcionalidades que outros gerenciadores de bancos de dados não têm.

Cito aqui quatro exemplos interessantes:

1- Window Functions, que permite a realização de consultas analíticas no PostgreSQL, de uma forma bastante eficiente para o desenvolvedor.

2- Múltiplas linguagens procedurais, é possível fazer funções no PostgreSQL em linguagens que um desenvolvedor já domina. Alguns exemplos são pl/python, pl/perl, pl/java, pl/tcl. Além é claro dos tradicionais pl/sql (similar ao Oracle) e pl/pgsql (esta última exclusiva do PostgreSQL).

3- PGXN, uma rede de extensões do PostgreSQL. Imagine que é possível extender o PostgreSQL com funcionalidades novas, mais ou menos como fazemos em um um browser como o Firefox, instalamos extensões de maneira bastante simples.Bando de Dados

4- Foreign Data Wrapper, uma forma de fazer bases de dados federadas no PostgreSQL. Imagine que é possível conectar o PostgreSQL nativamente a outros bancos de dados, e acessar as tabelas desses bancos de dados como se fossem tabelas locais do PostgreSQL. Hoje, é possível se conectar a outros PostgreSQL, Oracle, bancos onde se esteja disponível driver ODBC, arquivos de texto e CSV, até mesmo conectar-se a uma conta do Twitter e fazer um SELECT nela.

4Linux: Quais as principais diferenças entre o PostgreSQL mantido pela comunidade e a sua versão Enterprise?

Flavio Gurgel: Basicamente, temos dois produtos da EnterpriseDB que se diferenciam do PostgreSQL da comunidade:

1- Postgres Plus Solution Pack - é um PostgreSQL similar em funcionalidades ao da comunidade, mas com binários certificados e garantidos pela EnterpriseDB.

2- Postgres Plus Advanced Server - que possui compatibilidade com bancos de dados Oracle, permitindo migração direta em até 80% dos casos.

Ambos os produtos contam com instalador, gerenciador de tuning, ferramentas de deploy, monitoração e replicação. O replicador xDB, que permite funcionamento multi-master do PostgreSQL, também está incluso no pacote. É um produto realmente atraente e do qual o mercado brasileiro está carente, com um custo que é apenas uma fração do que se gasta com os concorrentes.

4Linux: O que você diria a respeito da recente parceria firmada entre a 4Linux e a EnterpriseDB?

Flavio Gurgel: A 4Linux decidiu ser parceira da EnterpriseDB após analisar um ponto fundamental: a EnterpriseDB, como maior empresa global de soluções baseadas no PostgreSQL, emprega uma grande quantidade dos desenvolvedores que fazem o PostgreSQL da comunidade. Isto é muito importante para o mundo software livre, ao mesmo tempo em que dá credibilidade ao trabalho da EnterpriseDB em oferecer produtos e serviços legítimos, de quem conhece a fundo o que está fazendo.

Compartilhe esta página