artigo postgresql

9
PostgreSQL Jonas Mayer, Fagner e Pedro Universidade Regional Integrada – Curso de Ciência da Computação – Campus Santiago Av. Batista Sobrinho, s/n – CEP 97700-000 – Santiago – RS Resumo Este artigo foi elaborado a partir de uma pesquisa , ele tem por objetivo apresentar o SGBD PostgreSQL e resaltar suas vantagens e desvantagens bem como suas principais caractreisticas e recursos . Apesar de não conter muito material bibliografico a Comunidade Brasileira de PostgreSQL disponibiliza a documentação completamente traduzida para portugues. Palavras-chave: SGBD ; PostgreSQL ; open souce; SQL. 1. Introdução O PostgreSQL é um projeto open source coordenado pelo PostgreSQL Global Development Group. Embora as atividades do grupo sejam patrocinadas por diversas organizações de todo o mundo, seu modelo de desenvolvimento é o modelo Bazar . 2. Características Principais O PostgreSQL é um sistema gerenciador de banco de dados objeto- relacional (SGBDOR), baseado no POSTGRES desenvolvido pelo Departamento de Ciência da Computação da Universidade da Califórnia em Berkeley. O POSTGRES foi pioneiro em vários conceitos que somente se tornaram disponíveis muito mais tarde em alguns sistemas de banco de dados comerciais. O PostgreSQL é um descendente de código fonte aberto deste código original de Berkeley. É suportada grande parte do padrão SQL:2003, além de serem oferecidas muitas funcionalidades modernas, como: • comandos complexos • chaves estrangeiras • gatilhos • visões • integridade transacional • controle de simultaneidade multiversão Além disso, o PostgreSQL pode ser estendido pelo usuário de muitas

Upload: jonas-mayer

Post on 26-Oct-2015

63 views

Category:

Documents


2 download

DESCRIPTION

Artigo sobre um dos melhores SGBDs open-spuce o PostgreSQL

TRANSCRIPT

Page 1: Artigo PostgreSQL

PostgreSQL

Jonas Mayer, Fagner e Pedro

Universidade Regional Integrada – Curso de Ciência da Computação – Campus SantiagoAv. Batista Sobrinho, s/n – CEP 97700-000 – Santiago – RS

ResumoEste artigo foi elaborado a partir de uma pesquisa , ele tem por objetivo apresentar o SGBD PostgreSQL e resaltar suas vantagens e desvantagens bem como suas principais caractreisticas e recursos . Apesar de não conter muito material bibliografico a Comunidade Brasileira de PostgreSQL disponibiliza a documentação completamente traduzida para portugues.Palavras-chave: SGBD ; PostgreSQL ; open souce; SQL.

1. IntroduçãoO PostgreSQL é um projeto open source coordenado pelo PostgreSQL Global

Development Group. Embora as atividades do grupo sejam patrocinadas por diversas organizações de todo o mundo, seu modelo de desenvolvimento é o modelo Bazar .

2. Características PrincipaisO PostgreSQL é um sistema gerenciador de banco de dados objeto-relacional

(SGBDOR), baseado no POSTGRES desenvolvido pelo Departamento de Ciência da Computação da Universidade da Califórnia em Berkeley. O POSTGRES foi pioneiro em vários conceitos que somente se tornaram disponíveis muito mais tarde em alguns sistemas de banco de dados comerciais.

O PostgreSQL é um descendente de código fonte aberto deste código original de Berkeley. É suportada grande parte do padrão SQL:2003, além de serem oferecidas muitas funcionalidades modernas, como:• comandos complexos• chaves estrangeiras• gatilhos• visões• integridade transacional• controle de simultaneidade multiversão

Além disso, o PostgreSQL pode ser estendido pelo usuário de muitas maneiras como, por exemplo, adicionando novos :• tipos de dado• funções• operadores• funções de agregação• métodos de índice• linguagens procedurais

Devido à sua licença liberal, o PostgreSQL pode ser utilizado, modificado e distribuído por qualquer pessoa para qualquer finalidade, seja privada, comercial ou acadêmica, livre de encargos.

Page 2: Artigo PostgreSQL

Comandos Básicos SELECT WHERE AND & OR ORDER BY INSERT UPDATE DELETE DISTINCT LIKE IN BETWEEN JOIN UNION SELECT INTO CREATE DATABASE CREATE TABLE CREATE INDEX DROP INDEX ALTER TABLE NULL "IS" GROUP BY HAVING UPPER LOWER ROUND

3. Justificativa do seu uso (em relação a OO ou OR)

Um SGBDOR incorpora as tecnologias de orientação a objeto e relacional. A maioria dos produtos adere ao padrão SQL:1999, mas alguns implementam um enfoque proprietário. Em sua essência, o modelo de objetos do SQL:1999 possui as mesmas funcionalidades do modelo de objetos usado pelos sistemas gerenciadores de banco de dados orientados a objeto (SGBDOO), mas de uma forma diferente da maioria dos SGBDOO. Isto se deve à obrigação do SQL:1999 ser compatível com o SQL-92. Esta obrigação fez com que o modelo de objetos do SQL:1999 fosse adaptado ao modelo relacional do SQL-92.

Como resultado, o modelo de objetos do SQL:1999 não corresponde ao modelo de objetos usado pelas linguagens de programação orientadas a objeto. Desta forma, o termo “orientado a objeto” não pode ser usado para descrever este modelo, porque implicaria que o modelo do banco de dados correspondesse ao modelo da programação orientada a objeto. Em seu lugar, usa-se o termo “objeto-relacional”.

4. Uso em organizaçoes

MultitecSomos a MULTITEC, softwarehouse localizada em Itatiba-SP, interior de São Paulo,

atualmente há mais de 10 anos no mercado de aplicações ERP, sendo as indústrias, nosso foco de mercado.

Nosso produto – o SAM (Sistemas Administrativos Multitec) – visa controlar a gestões de materiais, vendas e faturamento, financeira, recursos humanos, fiscal e contábil de uma empresa, possuindo módulos específicos para isso, que atuam de forma integrada.

Page 3: Artigo PostgreSQL

A primeira versão de nosso ERP, foi desenvolvida em COBOL, com interface não gráfica, utilizando o banco de dados nativo desta linguagem.

Com as mudanças tecnológicas de hardware e software, como a maioria das empresas desenvolvedoras de software, fomos pressionados pelo mercado a portar a nossa aplicação para uma linguagem com interface gráfica. Após pesquisarmos durante algum tempo, em 1998, opinamos em utilizar o Microsoft Visual Basic 5.0 como linguagem para fron-end e o Microsoft Access como back-end.

Com a mudança de ambiente da aplicação, nossos clientes viram-se diante de um nosso contexto, com maiores recursos e possibilidades de utilização da informação, o que ocasionou uma utilização mais intensa dos módulos de nossa aplicação, aumentando drasticamente e rapidamente o volume de informações do banco de dados.

No ano 2000, diante das limitações do Microsoft Access (o mesmo é desktop, não permitindo um volume alto de conexões, nem de dados), nos vimos diante da urgente missão de portar a nossa aplicação para a arquitetura client/servidor.Opinamos em utilizar o Microsoft Visual Basic 6 como front-end, mas ainda não havíamos decidido qual seria o back-end a utilizar. Foi então, que na FENASOFT do ano 2000, foi nos apresentado o PostgreSQL. Fizemos vários testes com o mesmo, adotando-o como backend recomendado a nossos clientes. As razões que nos fizeram opinar pelo PostgreSQL foram:

Performance e Segurança: Em nossa versão anterior, estas eram as limitações mais críticas de nosso back-end (limitações estas, que além de causar grande insatisfação ao usuário, causavam perda de dados). Ao adotarmos o PostgreSQL, estes problemas foram totalmente resolvidos.

Garantia das propriedades ACID: requisito fundamental a um banco de dados cliente/servidor

Portabilidade para as plataformas Linux e Windows: requisito fundamental, diante das atuais tendências de mercado

Preço acessível ao mercado: Este é um ponto muito importante a destacar. Muitas empresas desenvolvedoras de software ERP, deixam de fechar alguns negócios, devido ao fato do preço do banco de dados demandar um alto custo na implantação. Com o PostgreSQL não temos este problema, o que tornou o nosso produto mais atraente a nossos clientes.

Ricardo Cesar Boaretto(Gerente de TI – Multitec Aut. Indl. Coml. Ltda.)

W/BrasilA W/Brasil é uma agência de publicidade de São Paulo, atuando no mercado a mais de

13 anos, visando a apresentação e o conhecimento das marcas dos clientes pelo mercado consumidor.

A área de informática é dividida em 2, sendo uma administrativa onde se utilizam PC's, e outra de criação que se utilizam Macintosh's. Na área administrativa temos os softwares de Contabilidade, Produção, Recepção, Faturamento, Mailing e Mídia.

Utilizávamos antes de 1998 o Clipper com os DBF's, após esta data, tivemos que entrar na era gráfica do Windows, e então optamos pelo VB como front-end e o Oracle como Banco de Dados. A empresa se expandiu e se tornou um grupo de empresas, que variam de tamanho e potencial de compra, com isto tivemos que partir para conhecer novas soluções que tivessem a mesma performance, com menores custos. Isto era um desafio, pois já estávamos utilizando o melhor Banco de Dados do mercado, como comparar outro produto com ele era o problema.

Primeiro passamos ao conhecimento do Linux, um novo Sistema Operacional Open Source, fazendo cursos, e vendo sua aplicabilidade em servidores de baixo custo. em seguida começamos a fazer estudos de viabilidade e de custos de diversos Bancos, tais como: Interbase, MySQL, SQL Server, PostgreSQL.

No final da análise chegamos a algumas conclusões.1) O Interbase 6.0 open source é bom, mas para pequenos projetos que podem ser

Page 4: Artigo PostgreSQL

atendidos também como o Access.2) O MySQL é muito bom e também open source, mas como não tem sub-queries nem

tampouco views e procedures também acaba sendo ideal para pequenos projetos, tais como o Mailing que citei acima, hoje ele funciona com MySQL até porque facilita a portabilidade.

3) O SQL Server é do porte do Oracle e, portanto implica em uma boa estrutura interna de suporte e custo alto por usuário, o que inviabiliza o seu uso para pequenas empresas que precisam crescer antes de gastar.

4) O PostgreSQL é ótimo. Para que vocês possam ter uma idéia, 50% de nossas aplicações estão em forma de Packages e Procedures dentro do Oracle, bem como views e sequences.

Portanto o Banco que fosse escolhido deveria ter Procedures, Views, Sequences, Sub-Queries, e ser capaz de portar todas as rotinas que já tínhamos no Oracle. Para que isto fosse possível fizemos dois cursos de Administração do PostgreSQL na dbExperts, para aprender e também formar uma idéia se era realmente possível substituir o Oracle por PostgreSQL. Após o curso começamos a refazer os softwares com o PostgreSQL como Base de Dados, e que não foi nossa surpresa, que realmente o software não só substituiria bem o Oracle, como poderia além disto ter uma melhor performance. Testamos o PostgreSQL com Conectiva Linux 8 num servidor (montado) tipo Pentium II 266Mhz, 128Mb de RAM e disco de 4Gb, contra o Oracle em Windows NT 4.0 num servidor Compaq Pentium III de 500Mhz, 512 Mb de RAM e 4 discos de 8Gb hot-swap. Para se ter uma idéia, o Balancete demora em geral 25s no Oracle, e no PostgreSQL demorou 36s, tendo em conta a diferença de máquina, dá para se fazer uma projeção de que se o PostgreSQL tivesse sido instalado com Linux no Compaq, o resultado final seria melhor que o do Oracle.

Concluindo, hoje as pequenas e médias empresas que fazem parte do grupo receberão servidores Linux com base PostgreSQL, devido à sua excelente performance e baixo custo.

Edson William Duarte(gerente de TI – W/Brasil)

Wheaton BrasilMigração do Sistema de ERP da Wheaton do Brasil Atendendo ao processo de

crescimento e modernização da companhia, a Wheaton do Brasil esta desenvolvendo um novo sistema de gestão corporativo usando software livre. Hoje a base de dados ainda é em DBF (DBase) e a linguagem utilizada é o Microsoft FoxPro 2.5. Nas estações roda Windows 98 e nos servidores RedHat Linux com Samba. A empresa tem 280 estações e perto de 5 GB de arquivos DBFs e um total de aproximadamente 500 Usuários trabalhando 24 horas/dia.

Atualmente a empresa esta desenvolvendo toda a aplicação em PHP com banco de dados PostgreSQL. Uma vez escolhido o sistema a ser migrado, o processo se realizará basicamente em 3 etapas.

1. Desenvolvimento do novo sistema em PHP e migração dos dados DBF para PostgreSQL.

2. Processamento dos dois sistemas em paralelo até concluir a homologação. 3. Depois de aprovado elimina-se o sistema antigo (FoxPro + DBFs). Esperamos terminar todo o processo em aproximadamente 20 meses. Um dos motivos

pela escolha por soluções Open Source, é devido ao grande número de usuários no Brasil e no mundo, facilidade de encontrar mão-de-obra, suporte e consultoria. Com a economia na aquisição de licenças de software, a empresa esta destinando mais recursos na modernização da área produtiva da tornado a empresa mais competitiva. A dbExperts tem nos suprido com treinamento do PostgreSQL, PHP, suporte a instalação, desenvolvimento e tunning da aplicação e banco de dados. Aparecido Marani Tecnologia da Informação - Wheaton do Brasil aparecido.marani@wheatonbrasil

Nusa

Page 5: Artigo PostgreSQL

A Nusa - Internet Pública, é uma empresa que tem como objetivo levar às ruas do Brasil terminais de auto-atendimento, onde os usuários de todas as classes poderão ter acesso aos serviços de nossos clientes e parceiros gratuitamente, como pagamento de segunda via de contas, extratos, etc., de empresas de telefonia, energia elétrica, água, bancos entre outras, além de oferecer o acesso à internet e à telefonia pública cobrada pelo cartão telefônico vendido em todo território nacional. A Nusa, levando adiante um projeto da Telemar cujo objetivo era diminuir a exclusão digital no Brasil, utilizava um sistema desenvolvido pelo CPqD, que executava nos terminais aplicativos desenvolvidos em Visual Basic rodando em Windows 98, e nos servidores a tecnologia JAVA com JSP e Servlets acessando um banco de dados Oracle. No começo deste ano, a NUSA começou a desenvolver seu novo sistema para gerenciar os terminais. Para tanto, decidimos migrar para a plataforma .NET da Microsoft, onde temos as aplicações dos terminais (Nusa Client) desenvolvidas em VB.NET rodando em Windows XP e os WebServices (Nusa Server) rodando em Windows Server 2003.

O banco de dados escolhido por nós foi o PostgreSQL da DBExperts rodando em linux. Hoje, nós estamos certos que fizemos a escolha certa optando pela plataforma .NET acessando o banco de dados PostgreSQL pela excelente estabilidade e performance que este poderoso sistema gerenciador de banco de dados nos oferece. O PostgreSQL com certeza é um banco capaz de suprir as necessidade que o Oracle nos supria com o seu a grande diferença de ter o preço completamente acessível. Todos os terminais instalados no estado de São Paulo, Espírito Santo e Rio Grande do Sul já estão com este novo sistema bastante estável, e já estamos confortáveis para migrar a nossa planta inteira (500) e termos todos os terminais se comunicando com o banco de dados.

André Hamer Coordenador de Desenvolvimento de Sistemas NUSA - internet pública (11) 3896-6780 / 6796

Secretaria de AgriculturaSecretaria de Agricultura e Abastecimento do Estado de São Paulo Sistema de cadastro e

controle das famílias carentes no estado de São Paulo. Processo de inscrição das famílias carentes no programa de alimentação e nutrição. Este programa prove a distribuição do leite enriquecido para crianças e idosos e distribuição de cestas básicas para as famílias cadastradas nos 606 municípios do interior e mais 42 municípios que integram a grande São Paulo. Recebe inclusões de 70 a 80 mil novas famílias por mês. Anteriormente o sistema era processado na Prodesp em equipamento de grande porte com banco de dados ADABAS.

Os dados eram coletados manualmente através de fichas nos postos de atendimento das prefeituras, enviadas a CODEAGRO que por sua vez encaminhava para Prodesp, onde eram processadas. Todo este tramite levava em média 60 dias para ser concluído, ou seja, as famílias cadastradas só recebiam o beneficio após este prazo. Além do tempo despendido, havia uma dependência tecnológica da secretaria de agricultura com a Prodesp na manutenção do sistema, extração de dados e tempo de resposta. O novo sistema foi implantado utilizando tecnologia Web, com aplicação feita em PHP tendo como base de dados o dbExperts PostgreSQL, e a aplicação foi desenvolvida pela empresa Eximia Sistemas. Com isso a secretaria obteve uma economia da ordem de 60% em relação ao sistema anterior, além de maior agilidade na manutenção do sistema, obtenção de relatórios e tomada de decisões.

Após o sistema entrar em produção com sucesso, surgiu à necessidade da implementação de redundância de dados e alta disponibilidade em caso de falhas, seja do servidor ou da infra-estrutura deste novo sistema. Para isso a secretaria contratou os serviços da dbExperts que implementou sem nenhum tipo de alteração ou modificações na aplicação o seu sistema de replicação de alta disponibilidade. O sistema de replicação da dbexpets proporcionou mais segurança e performance em todo o sistema. O serviço foi executado em apenas um dia, disponibilizando de imediato todos os benefícios tecnológicos e com baixíssimo custo de implantação e manutenção.

Contatos: Eximia Sistemas Jorge Polskih Diretor [email protected]

Page 6: Artigo PostgreSQL

CODEAGRO Ricardo Agricio Gerente de Informática [email protected]

5. Aspectos positivos Banco de dados relacional padrão SQL ANSI 89/92/98, escrito em C/C++. Multiplataforma - roda em Linux/Unix/Windows95/98/me e NT/2000. Livre distribuição, open source, código-fonte aberto padrão BSD. Sem limite de licenciamento. Manuais de instalação e configuração em português. Fácil instalação, com interface ODBC para Windows. Baixa manutenção, menor TCO para o cliente. Integração com outros bancos via SQL ou ODBC. Suporte técnico e consultoria no Brasil. Treinamento especializado. Baixo consumo de memória e espaço em disco. Conversor de bases DBF e ODBC. Componentes nativos para Delphi e C ++ Builder. Utilitários gráficos para gerenciamento em Linux e Windows. Servidor Web Apache e de aplicações Zope. Linguagem PHP 4. Conceito Cliente/Servidor. Eleito em 2000 o melhor banco de dados (revista Linux journal). Concorre diretamente com os bancos Oracle e MS-SQL Reconhecido como parceiro do produto no Brasil.

Fig. 5.1 - Comparação de SGBDs [DBEXPERTS]

6. Aspectos negativos Nescessário um profissonal com maior qualificação para mantê-lo.

7. Empresas que utilizam: Multitec W/Brasil

Page 7: Artigo PostgreSQL

Wheaton Nusa Secretaria de Agricultura Dextra Sistemas

8. Conclusão

O PostgreSQL é um dos melhores SGBDs , mesmo sendo open source ele não fica atrás de projetos fechados. Uma das principais vantagens do Postgre é que ele pode lidar com uma enorme quantidade de dados, é estavel e possui uma alta perfomace. Sendo open source ele tem sido usado por empresas que desejam um menor custo .

Referências

COMUNIDADE BRASILEIRA DE POSTGRESQL , http://www.postgresql.org.br/

DBEXPERTS , http://www.dbexperts.com.br

CODIGO FONTE , http://www.codigofonte.net/dicas/bancodedados/561_utilizando-o-postgres-dicas-de-comandos-sql-e-essenciais-para-a-manipulacao-de-dados