Após a Entrevista com Josh Berkus, estou trazendo aqui uma entrevista com um desenvolvedor brasileiro de peso, o Sr. Euler Taveira que tive o prazer de conhecer no último CONISLI.
Euler é engenheiro de computação pela UFG, atualmente analista de sistemas na OVG, especialista em banco de dados e entusiasta do software livre.
1- Como você começou a utilizar Software Livre?
O meu primeiro contato com software livre foi em 1998 quando entrei na faculdade. No laboratório tinhamos Solaris, AIX, Conectiva 3.0 (Guarani) e Slackware 3.5 utilizando softwares GNU.
2- Quando você começou a utilizar e desenvolver o PostgreSQL?
Comecei a utilizar o PostgreSQL em 1999, em um projeto de tutores inteligentes. A iteração foi tanta que comecei a timidamente contribuir com código; inicialmente foi a tradução e depois algumas pequenas funcionalidades.
3- Você participa da tradução da documentação do PostgreSQL. Quais são as maiores dificuldades neste trabalho?
O processo de tradução de documentação técnica não é fácil; a do PostgreSQL não é diferente. Talvez a maior dificuldade seja as novas expressões. A cada nova versão peço sugestões para as novas expressões, pois nem sempre elas soam bem (veja o caso de “role”); e um dos objetivos de uma tradução é que ela reproduza o texto original de forma natural e fidedigna.
4- Você tem atuado nas opções de localização do PostgreSQL, com boas
novidades na versão 8.2. O que você tem preparado para a versão 8.3 e quais são seus planos para futuras versões?
Sim. Você observou bem . Para a versão 8.3 estou preparando dois patches: um para reimplementar o modificador TM da função to_char() (na atual é utilizado o LC_MESSAGES — que depende de tradução e, nesta nova versão usarei o LC_TIME — que não depende [já está traduzido]) e o outro é a localização do tipo money. Um patch para especificação do diretório do log de transação durante o initdb já está no CVS. Para versões futuras, costumo focar naquilo que me incomoda. Alguns exemplos, são permissões em colunas, funções de agregações novas como ROLLUP e CUBE. Queria ter um tempo para trabalhar nos projetos de replicação como Slony e pgpool, mas infelizmente as madrugadas e os fins de semana não são suficientes.
5- Qual codificação de caracteres você recomenda para se utilizar com
PostgreSQL?
Eu recomendaria o ISO-8859-1.Muitos podem querer me jogar pedra nesta hora, mas tenho minhas razões. Não acho o código de suporte a UTF-8 sólido o bastante no PostgreSQL. Por quê? Em algumas versões anteriores vimos correções relacionadas a caracteres UTF-8 inválidos sendo aceitos como válidos. Então eu recomendo que se utilize UTF-8 somente se precisar de UTF-8. Talvez em versões futuras eu me sinta seguro em utilizar UTF-8 (isso não quer dizer que eu não o utilizo; e sim, que uso somente quando necessário).
6- Você já deu palestras sobre desempenho com PostgreSQL, você acredita que o desempenho do PostgreSQL é superior a dos demais concorrentes do mercado?
Hmmm. Desempenho é relativo ao ambiente que se está analisando (data warehousing, OLTP, OLAP). Em todos esses ambientes o PostgreSQL está melhorando o seu desempenho a cada versão. Quanto aos seus concorrentes, creio que o desempenho é superior em alguns aspectos, mas não posso provar com benchmarks porque a licença destes concorrentes não me permite tal façanha. Posso dizer que já tive clientes satisfeitos com a performance do PostgreSQL após a migração desses outros bancos de dados.
7- Você também já tem uma boa experiência com o Slony. Em quais situações você recomenda o uso do Slony?
Soluções sólidas de replicação é o que definitivamente faltava para o PostgreSQL ganhar o ambiente corporativo. O Slony foi concebido em um momento que isso era almejado. Ele é recomendado em um cenário onde uma pequena perda de dados é aceitável (replicação assíncrona) e a alta disponibilidade (operação 24×7) é desejável. Ele também é muito útil para migração entre versões sem precisar de um tempo de manutenção alto (para fazer a cópia de segurança aka backup e depois a restauração).
8- Você acredita que o projeto do Slony II com uma proposta de replicação multi-master se tornará uma realidade?
Tem um bom tempo que ele está inativo. O problema de sincronismo entre máquinas diferentes é uma coisa difícil de lidar. A proposta de implementação é boa, mas muito complexa.
9- Existem várias ferramentas de replicação para PostgreSQL, livres e
proprietárias. Você acredita que uma delas se tornará mais popular em
relação às demais ou cada se aplica melhor a casos distintos?
Replicação é um conceito muito amplo. Acho que teremos 2 ou 3 ferramentas predominantes, pois temos 2 modelos de replicação (síncrono e assíncrono) distintos.
10- Você também trabalha com outros SGDBs também? Em quais casos você diria que o PostgreSQL pode não ser a melhor opção?
Sim. Minha especialidade é banco de dados então conheço bem alguns deles. O PostgreSQL não é uma boa opção quando utilizado para armazenamento hierárquico (SQL não foi feito pra isso — neste caso sugiro LDAP) e quando o negócio tem que ter uma garantia (pecuniária) caso o sistema de banco de dados sofra perdas (versões comerciais do PostgreSQL podem suprir este nicho).
11- Você acredita que a popularidade do PostgreSQL no Brasil já o coloca como uma das principais opções de mercado? O que falta para o PostgreSQL se tornar uma opção mais popular no Brasil?
Sim. E o “boom” começou exatamente a partir da versão 8.0 (versão nativa para Windows). Muitos desenvolvedores de software no Brasil não utilizavam o PostgreSQL, porque não existia uma versão para Windows (ambiente de desenvolvimento da maioria dos desenvolvedores). O uso estava restrito a poucos desenvolvedores em corporações de médio e grande porte. O crescimento da popularidade, também se deve a grande comunidade ativa de PostgreSQL no Brasil. Documentação e artigos na nossa língua nativa também são fatores que contribuem para popularização.
12- A comunidade brasileira do PostgreSQL tem crescido bastante nos últimos anos com participação intensa nos eventos de Software Livre. O que você espera da comunidade em 2007?
A comunidade de PostgreSQL brasileira é uma das maiores do mundo; e a tendência é crescer mais ainda. Como? Organização. A cada novo evento arrebanhamos novos adeptos que estão dispostos a ajudar nessa organização. Não é por acaso que somos o banco de dados com maior número de palestras nestes eventos. 🙂 Agradeço a todos aqueles que se empenham para que isso seja possível.