Entrevista com Flavio Gurgel: Especialista discute sobre PostgreSQL

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.

 

CURSOSCONSULTORIACONTATO

Anterior Aprenda Linux: a escolha certa para uma carreira de sucesso em TI
Próxima Aprenda a criar mapas de rede com o novo curso de Monitoramento Zabbix

About author

Você pode gostar também

Banco de Dados

Aprenda SQL com Flexibilidade de Escolha de Banco de Dados no Nosso Curso

“Apesar de permitir trabalhar com qualquer banco de dados, o aluno vai poder escolher em qual banco quer trabalhar durante o curso: MySQL ou PostgreSQL.” explica Vinicius Vale, autor do

Banco de Dados

Acesso a dados SQL Server através do PostgreSQL: um guia prático

Tenho um PostgreSQL e preciso acessar dados que estão no SQL Server! E agora?! Não! Não precisa entrar em pânico! Existe uma solução para isso. Digamos que em um determinado

Banco de Dados

Entenda o Pool de Conexões no PostgreSQL e Melhore a Performance do seu Banco de Dados

Você que trabalha com o PostgreSQL há um determinado tempo já deve ter visto o seguinte erro “FATAL: sorry, too many clients already”, ou então visto o parâmetro max_connections e