2009/5/6 Rafael Domiciano <[email protected]>

> Olá pessoal,
>
> Estou querendo usar o contrib DBlink porém tenho algumas dúvidas. A
> utilização do contrib é simples e fácil, mas não posso dizer que rápida.
> Numa consulta simples, digamos:
> select campo_01 from dblink
> ('dbname=postgres', 'select campo_01, campo_02 from foo')
> AS t1 (campo_01 smallint, campo_02 char (2))
> WHERE campo_01 = 1;
>
> nos meus testes tem demora em torno de 2,5 segundos, o que para a sua
> utilização em produção é totalmente inviável; mesmo com todo o processo de
> abertura de conexão, envio de query, aguarda respota da consulta (que por
> sinal é muito rápida, fazendo a consulta diretamente na base gira em torno
> 47 ms), retorno de resultado, fechamento de conexão, sem congestionamento de
> rede (10/100).
>
>
Caro Rafael,

Tenta colocar o teu "WHERE campo_01 = 1" no SELECT que tu envia pra base
remota... porque o DBLINK vai executar aquele SELECT que tu enviou e,
baseado no resultado retornado, vai aplicar o WHERE... como se fosse uma
VIEW...

Há alguns anos implementei uma integração entre 2 bases de dados usando o
DBLINK e os resultados foram bem satisfatórios, mas eu tinha que tomar esse
cuidado ao efetuar SELECTs...


Cordialmente,

-- 
Fabrízio de Royes Mello
>> Blog sobre PostgreSQL: http://fabriziomello.blogspot.com
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a