[pgbr-geral] Crias indices sem travar as tabelas é possível?

2011-11-21 Por tôpico Marcelo Silva (IG)
Pessoal, depois de uma tempo vamos vendo algumas mudanças que precisamos fazer 
pra melhorar o desempenho da base e consequentemente da aplicação.
Desta forma vem a pergunta, é possível criar ou excluir indices sem precisar de 
acesso exclusivo a uma determinada tabela?
Pergunto isso porque toda vez que preciso fazer esse tipo de alteração preciso 
que todos saiam do sistema.
Só citando, no MySQL como já comentei em outra thread isso não é necessário.
Será que não existe algum comando pra avisar o postgres pra ele tentar criar um 
indice sem acesso exclusivo?
Já me informaram aqui na lista que o MySQL trabalha diferente nesse caso, mas 
como estou usando o Postgres 9.1 será que não tem alguma coisa nesse sentido?


Marcelo Silva
--
Desenvolvedor Delphi, PHP
msn: marc...@ig.com.br
cel.: (11) 9693-4251___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Crias indices sem travar as tabelas é possível?

2011-11-21 Por tôpico JotaComm
Olá, bom dia!!!

Em 21 de novembro de 2011 08:23, Marcelo Silva (IG) marc...@ig.com.brescreveu:

   Pessoal, depois de uma tempo vamos vendo algumas mudanças que
 precisamos fazer pra melhorar o desempenho da base e consequentemente da
 aplicação.
 Desta forma vem a pergunta, é possível criar ou excluir indices sem
 precisar de acesso exclusivo a uma determinada tabela?


Sim. Você pode usar a opção CONCURRENTLY no comando de criação dos índices.


Pergunto isso porque toda vez que preciso fazer esse tipo de alteração
 preciso que todos saiam do sistema.
 Só citando, no MySQL como já comentei em outra thread isso não é
 necessário.
 Será que não existe algum comando pra avisar o postgres pra ele tentar
 criar um indice sem acesso exclusivo?
 Já me informaram aqui na lista que o MySQL trabalha diferente nesse caso,
 mas como estou usando o Postgres 9.1 será que não tem alguma coisa nesse
 sentido?





 Marcelo Silva
 --
 Desenvolvedor Delphi, PHP
 msn: marc...@ig.com.br
 cel.: (11) 9693-4251

 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral



Abraços
-- 
JotaComm
http://jotacomm.wordpress.com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Crias indices sem travar as tabelas é possível?

2011-11-21 Por tôpico Marcelo Silva (IG)
Opa... valeu JotaComm
Ainda estou engatinhando no Postgres 



From: JotaComm 
Sent: Monday, November 21, 2011 8:30 AM
To: Marcelo Silva (IG) ; Comunidade PostgreSQL Brasileira 
Subject: Re: [pgbr-geral] Crias indices sem travar as tabelas é possível?

Olá, bom dia!!!


Em 21 de novembro de 2011 08:23, Marcelo Silva (IG) marc...@ig.com.br 
escreveu:

  Pessoal, depois de uma tempo vamos vendo algumas mudanças que precisamos 
fazer pra melhorar o desempenho da base e consequentemente da aplicação.
  Desta forma vem a pergunta, é possível criar ou excluir indices sem precisar 
de acesso exclusivo a uma determinada tabela?

Sim. Você pode usar a opção CONCURRENTLY no comando de criação dos índices.
  


  Pergunto isso porque toda vez que preciso fazer esse tipo de alteração 
preciso que todos saiam do sistema.
  Só citando, no MySQL como já comentei em outra thread isso não é necessário.
  Será que não existe algum comando pra avisar o postgres pra ele tentar criar 
um indice sem acesso exclusivo?
  Já me informaram aqui na lista que o MySQL trabalha diferente nesse caso, mas 
como estou usando o Postgres 9.1 será que não tem alguma coisa nesse sentido?

 

  Marcelo Silva
  --
  Desenvolvedor Delphi, PHP
  msn: marc...@ig.com.br
  cel.: (11) 9693-4251

  ___
  pgbr-geral mailing list
  pgbr-geral@listas.postgresql.org.br
  https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




Abraços
-- 
JotaComm
http://jotacomm.wordpress.com
wlEmoticon-smile[1].png___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Crias indices sem travar as tabelas é possível?

2011-11-21 Por tôpico Targino Silveira
Sei, não falo em ter que reindexar diariamente, mas temos algumas tabelas
que sempre precisamos limpa-las e acaba que logo em seguida faço um vacuum
full pois são muitos dados removidos, e também um reindexdb.

Abraços,

Em 21 de novembro de 2011 14:21, Bruno Silva bemanuel...@gmail.comescreveu:

  JotaComm e restante essa mesma opção pode ser utilizada no reindex ?
 
  Não. Ainda não existe REINDEX CONCURRENTLY ...
 O reindex na versão  9.0, não precisa ficar sendo executado após os
 Vacuum. E segundo explicado em palestras é mito o fato de ter de
 reindexar diariamente.

 Bruno E. A. Silva.
 Analista de Sistemas.
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




-- 
Targino Silveira
+55-85-8626-7297
www.twitter.com/targinosilveira
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Crias indices sem travar as tabelas é possível?

2011-11-21 Por tôpico Flavio Henrique Araque Gurgel
 Sei, não falo em ter que reindexar diariamente, mas temos algumas tabelas
 que sempre precisamos limpa-las e acaba que logo em seguida faço um vacuum
 full pois são muitos dados removidos, e também um reindexdb.

Se é pra limpar completamente as tabelas, já pensou no TRUNCATE
tabela ao invés de DELETE FROM tabela?
Além de ser quase instantâneo, o TRUNCATE elimina necessidade de
vacuum/reindex em qualquer versão atualmente suportada do PostgreSQL.

[]s
Flavio Gurgel
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Crias indices sem travar as tabelas é possível?

2011-11-21 Por tôpico Targino Silveira
Pensei sim, mas tenho que manter uma quantidade de dias mais recente que
varia de cliente para cliente.

Abraços,

Em 21 de novembro de 2011 22:07, Flavio Henrique Araque Gurgel 
fha...@gmail.com escreveu:

  Sei, não falo em ter que reindexar diariamente, mas temos algumas tabelas
  que sempre precisamos limpa-las e acaba que logo em seguida faço um
 vacuum
  full pois são muitos dados removidos, e também um reindexdb.

 Se é pra limpar completamente as tabelas, já pensou no TRUNCATE
 tabela ao invés de DELETE FROM tabela?
 Além de ser quase instantâneo, o TRUNCATE elimina necessidade de
 vacuum/reindex em qualquer versão atualmente suportada do PostgreSQL.

 []s
 Flavio Gurgel
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




-- 
Targino Silveira
+55-85-8626-7297
www.twitter.com/targinosilveira
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Crias indices sem travar as tabelas é possível?

2011-11-21 Por tôpico Flavio Henrique Araque Gurgel
 Pensei sim, mas tenho que manter uma quantidade de dias mais recente que
 varia de cliente para cliente.

Particionar tabelas deste tipo é legal. Dá um baita ganho de
manutenção pra você.

[]s
Flavio Gurgel
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Crias indices sem travar as tabelas é possível?

2011-11-21 Por tôpico Targino Silveira
Isso esta sendo feito também :) o pro é que alguns desses bancos a danada
dessa tabela chega a crescer quase 1gb por dia.

Por isso uso o particionamento dos dados e também depois de uma determinada
quantidade de dias faço a limpeza, fiz um programinha em Ruby que gerencia
todos esse processo.

Abraços,

Em 21 de novembro de 2011 22:18, Flavio Henrique Araque Gurgel 
fha...@gmail.com escreveu:

  Pensei sim, mas tenho que manter uma quantidade de dias mais recente que
  varia de cliente para cliente.

 Particionar tabelas deste tipo é legal. Dá um baita ganho de
 manutenção pra você.

 []s
 Flavio Gurgel
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




-- 
Targino Silveira
+55-85-8626-7297
www.twitter.com/targinosilveira
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral