"Eu juro que queria entender: O QUE ESSE FAZ AQUI ?"

De nada adianta este tipo de atitude, pelo contrário; tal só vem a dirimir a 
lista.

Esta não deve servir para "desabafos", mas para auxílios e troca de 
conhecimentos. Se você tem o conhecimento e quer compartilhá-lo, fique à 
vontade. Mas se não quer ajudar, ou não tiver como contribuir, então não 
responda, e não atrapalhe, ok? 







________________________________
De: Marcelo Costa <[email protected]>
Para: Comunidade PostgreSQL Brasileira <[email protected]>
Enviadas: Sexta-feira, 22 de Janeiro de 2010 14:46:34
Assunto: Re: [pgbr-geral] Res: Res: Digest pgbr-geral, volume 35, assunto 94

Boa tarde companheiro....


2010/1/22 MARCIO CASTRO <[email protected]>

Caro Euler:
>
>a - 
>
>"Discordo. Não *generalize* as coisas; já vi várias instalações PostgreSQL com
>>performance superior a anterior (aka Or*cle)."
>
>  Não estou generalizando; é verdade mesmo. Por favor; não vamos começar uma 
> discussão infundada, que de nada acrescentará à lista. Mas você pode nos 
> enviar a estrutura deste "eu já ví", e então poderemos repetir os mesmos 
> testes, ok?
>
>
>b - 
>
>"Você _não_ mostrou a função em PL/SQL e nem a equivalente em PL/pgSQL."
>
>  Se você procurar o histórico da lista, verificará as duas funções utilizadas 
> como exemplo, que são muito simples. E irá verificar também que um outro 
> membro desta compilou e rodou a rotina do Post em seu próprio servidor. Mas 
> se estas não se adequam, por
> favor, envie suas próprias funções, tabelas ou demais objetos; acaso cometido 
> algum erro, pedirei desculpas a todos.
>
>
>c - 
>
>"Oracle mais rápido? Eu *não* vi esses resultados em [1][2]. Você só mostrou os
>>resultados do Oracle e _não_ do PostgreSQL com a função em C"
>
>  Como explicado, tentamos migrar uma aplicação com milhares de linhas de 
> código em PL/SQL (Oracle) para o Postgres (PG/plSQL). Quem efetuou este 
> pedido foi O PRÓPRIO CLIENTE, que, com certeza, estava querendo diminuir os 
> custos portando a sua aplicação para o PostgreSQL. O cliente NÃO QUERIA 
> REESCREVER TUDO EM C ou em qualquer outra linguagem, mas aproveitar ao máximo 
> o código existente!
>
>
>d - 
>
>"A conclusão daquela discussão foi que você estava "batendo em espantalho"; use
>os métodos adequados para obter melhor desempenho."
>
>  Continuo sem saber o que significa "batendo em espantalho" (nem me interessa 
> saber), e se
> você não for capaz de dar maiores explicações sobre o que você chama de 
> "métodos adequados", ninguém irá entender.
>
>
>e - 
>
>"Para isso precisamos pagar um bom $$$ para associarmos e termos direito de
>>fazer tais testes. E, é claro, termos hardwares disponíveis para realizar os
>testes. (Sem uma grande empresa com acesso aos vendedores de hardware, fica
>difícil realizarmos tal tarefa)."
>
>  Sim, é verdade. Mas que empresa de hardware irá recomendar um produto sem 
> ganhar nada em cima? A mesma pode até "vender o peixe" com o Postgres, mas 
> será que a mesma declararia que tal produto é mais rápido do que o banco A ou 
> B, sem possuir nenhuma comprovação de tal fato?
>>  Mas se você GARANTE, ótimo, é só comprovar, ok? Aliás, na semana passada eu 
>> conhecí um cara que GARANTE que "o Caché é o banco mais rápido do mundo". 
>> Perguntado sobre como comprovar esta declaração, este respondeu que a mesma 
>> "é
> baseada em vivência e experiância profissional". Perguntado se o mesmo já 
> havia trabalhado com outros bancos, o mesmo respondeu "nenhum"...
>
>  Termino esta repetindo que você, ou qualquer outro membro da lista, pode 
> escrever as rotinas que julgar mais adequadas ("métodos adequados", tabelas, 
> ou seja o que for), que irei testá-las com o maior prazer. Aliás, se mais 
> alguém quiser acompanhar estes testes in loco, é só chegar aquí na empresa - 
> estou em BH, na Floresta. Os servidores serão os mesmos dos testes 
> anteriores, e a única exigência é que tudo possa rodar com um mínimo de 
> alterações.
>>  E se alguém quiser verificar por sí só no Oracle, é só baixar gratuitamente 
>> o software no site da mesma - não são necessárias licenças para estudar, 
>> efetuar testes ou criação de protótipo.
>  Abaixo as rotinas utilizadas, no Postgres e no Oracle.
>
>
>
>Atenciosamente,
>
>Márcio de Figueiredo Moura e
> Castro
>
>
>--------------------------------------------------
>-- FIB
>--------------------------------------------------
>
>-- FIB NO ORACLE
>create or replace
>FUNCTION fib(fib_for integer)
>  RETURN integer AS
>BEGIN
>  IF fib_for < 2 THEN
>      RETURN fib_for;
>  END IF;
>  RETURN fib(fib_for - 2) + fib(fib_for - 1);
>>END;
>
>
>-- FIB NO POSGRES
>>CREATE OR REPLACE FUNCTION fib(fib_for integer)
>  RETURNS integer AS
>$BODY$
>    BEGIN
>        IF fib_for < 2 THEN
>            RETURN fib_for;
>        END IF;
>        RETURN fib(fib_for - 2) + fib(fib_for - 1);
>>    END;
>$BODY$
>  LANGUAGE 'plpgsql' IMMUTABLE;
>ALTER FUNCTION fib(integer) OWNER TO postgres;
>
>
>--------------------------------------------------
>>-- FUNCTION1
>>--------------------------------------------------
>
>
>-- FUNCTION1 NO ORACLE
>create or replace
>FUNCTION FUNCTION1 return number AS
>  i INTEGER;
>  s integer;
>  v_tempo number;
>BEGIN
>  SELECT (EXTRACT(minute FROM current_timestamp) * 60) + EXTRACT(second FROM 
> current_timestamp) into v_tempo FROM dual;
>>  FOR i IN 1 .. power(10,8) LOOP
>     s := s + 1;
>  END LOOP;
>  SELECT ((EXTRACT(minute FROM current_timestamp) * 60) + EXTRACT(second FROM 
> current_timestamp)) - v_tempo into v_tempo FROM dual;
>  RETURN v_tempo;
>>END FUNCTION1;
>
>
>-- FUNCTION1 NO POSTGRES
>CREATE OR REPLACE FUNCTION function1()
>  RETURNS integer AS
>$BODY$
>DECLARE
>  i INTEGER;
>  s integer;
>BEGIN
>  FOR i IN 1 .. power(10, 8) LOOP
>     s := s + 1;
>>  END LOOP;
>RETURN 0;
>END;
>$BODY$
>  LANGUAGE 'plpgsql' IMMUTABLE;
>ALTER FUNCTION function1() OWNER
> TO postgres;
>
>
>
>
>
>
________________________________
 De: Euler Taveira de Oliveira <[email protected]>
>Para: Comunidade PostgreSQL Brasileira <[email protected]>
>Enviadas: Sexta-feira, 22 de Janeiro de 2010 13:07:27
>Assunto: Re: [pgbr-geral] Res:  Digest pgbr-geral, volume 35, assunto 94
>
>
>MARCIO CASTRO escreveu:
>>   Trabalho com o Postgres e com o Oracle, e relato que a diferença entre
>> os mesmos é abismal.
>Discordo. Não *generalize* as coisas; já vi várias instalações PostgreSQL com
>>performance superior
> a anterior (aka Or*cle).
>
>>   Tentamos inclusive importar um sistema com milhares de funções e
>> procedimentos em PL/SQL (Oracle 10g) para o PL/pgSQL, mas os primeiros
>> testes nos revelaram que a performance cairia demais, tornando o projeto
>>> inviável.
>Você _não_ mostrou a função em PL/SQL e nem a equivalente em PL/pgSQL.
>
>>   Na época, cheguei até a buscar auxílio na lista, escrevendo dois
>> pequenos exemplos para isto. Alguns até me auxiliaram, propondo que as
>>> rotinas fossem reescritas em C, mas mesmo assim o Oracle foi mais rápido.
>Oracle mais rápido? Eu *não* vi esses resultados em [1][2]. Você só mostrou os
>resultados do Oracle e _não_ do PostgreSQL com a função em C.
>
>A conclusão daquela discussão foi que você estava "batendo em espantalho"; use
>os métodos adequados para obter melhor desempenho.
>
>> PS: http://www.tpc.org/tpcc/results/tpcc_perf_results.asp
>>> Continuo torcendo para que um dia vejamos o Post nesta lista!
>> 
>Para isso precisamos pagar um bom $$$ para associarmos e termos direito de
>fazer tais testes. E, é claro, termos hardwares disponíveis para realizar os
>>testes. (Sem uma grande empresa com acesso aos vendedores de hardware, fica
>difícil realizarmos tal tarefa).
>
>
>[1]
>http://listas.postgresql.org.br/pipermail/pgbr-geral/2009-September/017497.html
>>[2]
>http://listas.postgresql.org.br/pipermail/pgbr-geral/2009-September/017498.html
>
>
>-- 
>  Euler Taveira de Oliveira
>>  http://www.timbira.com/
>_______________________________________________
>pgbr-geral mailing list
>[email protected]
>https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>
>________________________________
Veja quais são os assuntos do momento no Yahoo! + Buscados: Top 10 - 
Celebridades - Música - Esportes
>_______________________________________________
>>pgbr-geral mailing list
>[email protected]
>https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>
Eu juro que queria entender:

O QUE ESSE FAZ AQUI ?

#SET MODE DESABAFO ON

Euler não perde teu tempo.

#SET MODE DESABAFO OFF

-- 
Marcelo Costa


      
____________________________________________________________________________________
Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a