[pgbr-geral] Crias indices sem travar as tabelas é possível?
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?
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?
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?
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?
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?
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?
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?
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