Re: [pgbr-geral] Desempenho no Linux

2009-11-30 Por tôpico Dickson S. Guedes
2009/11/29 Leonardo Cezar lhce...@gmail.com:
 2009/11/29 Dickson S. Guedes lis...@guedesoft.net:
 2009/11/29 renato centrisco...@gmail.com:
 A princípio hardware não é problema, tens máquina de sobra.
 Que tal por o PostgreSQL em uma máquina virtual com Linux ou FreeBSD?

 O uso de banco de dados para ambientes críticos em uma máquina
 virtualizada é muito controverso. Para alguns casos pode ser uma
 solução interessante, como em ambientes de teste ou homologação onde o
 quesito desempenho não faz parte do escopo.

 Taí um assunto interessante ...

 Paravirtualização é uma tendência, portanto entender, aprender a
 customizar e otimizar o comportamento do VMM é o novo desafio para o
 DBA dentro desta tendência.


Seria interessante termos alguns benchmarks para ver o quanto custa
este almoço. Alguém conhece alguns?

[]s
Dickson S. Guedes
mail/xmpp: gue...@guedesoft.net - skype: guediz
http://guedesoft.net - http://www.postgresql.org.br
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-29 Por tôpico renato
A princípio hardware não é problema, tens máquina de sobra.
Que tal por o PostgreSQL em uma máquina virtual com Linux ou FreeBSD?

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


Re: [pgbr-geral] Desempenho no Linux

2009-11-29 Por tôpico Dickson S. Guedes
2009/11/29 renato centrisco...@gmail.com:
 A princípio hardware não é problema, tens máquina de sobra.
 Que tal por o PostgreSQL em uma máquina virtual com Linux ou FreeBSD?

O uso de banco de dados para ambientes críticos em uma máquina
virtualizada é muito controverso. Para alguns casos pode ser uma
solução interessante, como em ambientes de teste ou homologação onde o
quesito desempenho não faz parte do escopo.

Por outro lado, o uso de uma maquina virtual cria um overhead cujo
custo pode ser muito alto para a aplicação corrente, tornando inviável
o seu uso. É importante salientar também que o sistema operacional por
trás da máquina virtual continuaria sendo o Windows, o que pode ser um
dos gargalos nesta história.

Desconheçendo a realidade da aplicação que o Tiago está trabalhando
não temos como inferir qual o melhor caminho, o que podemos sugerir é
que sejam feitos testes de comparação de desempenho entre sistemas
operacionais, tuning no banco *e* na aplicação, como também a geração
de estatisticas de uso do banco com algumas ferramentas específicas,
como já citado neste mesmo tópico em e-mails anteriores.

[]s
Dickson S. Guedes
mail/xmpp: gue...@guedesoft.net - skype: guediz
http://guedesoft.net - http://www.postgresql.org.br
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-29 Por tôpico Leonardo Cezar
2009/11/29 Dickson S. Guedes lis...@guedesoft.net:
 2009/11/29 renato centrisco...@gmail.com:
 A princípio hardware não é problema, tens máquina de sobra.
 Que tal por o PostgreSQL em uma máquina virtual com Linux ou FreeBSD?

 O uso de banco de dados para ambientes críticos em uma máquina
 virtualizada é muito controverso. Para alguns casos pode ser uma
 solução interessante, como em ambientes de teste ou homologação onde o
 quesito desempenho não faz parte do escopo.

Taí um assunto interessante ...

Paravirtualização é uma tendência, portanto entender, aprender a
customizar e otimizar o comportamento do VMM é o novo desafio para o
DBA dentro desta tendência.

-Leo
-- 
Leonardo Cezar
http://www.aslid.org.br
http://postgreslogia.wordpress.com
http://www.dextra.com.br/postgres
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-29 Por tôpico Tiago Adami
 (corte das mensagens anteriores)

Consegui ler os últimos posts somente agora. Surgiram diversas dicas
interessantes, vou avaliar todas com a devida atenção.

Já estamos aguardando uma máquina nova para realizar os testes de
desempenho com o nosso ERP (primeiro com Windows e depois com Linux),
enquanto isso revisamos algumas rotinas SQL ineficientes. No momento
não conseguirei responder a todas as perguntas, mas assim que realizar
os testes vou postar aqui os resultados.

Agradeço a atenção de todos. Obrigado.

-- 
TIAGO J. ADAMI
http://www.adamiworks.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] Desempenho no Linux

2009-11-29 Por tôpico Leandro Guimarães Faria Corcete DUTRA
Le dimanche 29 novembre 2009 à 13:47 -0200, Leonardo Cezar a écrit :
 Paravirtualização é uma tendência, portanto entender, aprender a
 customizar e otimizar o comportamento do VMM é o novo desafio para o
 DBA dentro desta tendência.

¿Mais uma tendência para matar o desempenho?

Que eu soubesse, virtualização em x86 mata o desempenho justo no que é
crítico para dados, E/S de disco de armazenamento em massa.  Como nunca
soube exatamente por quê, não sei se o problema foi corrigido com as
extensões VT-x.  Que eu saiba, não existe problema semelhante em RISC
e /mainframes/.

Mas adoraria descobrir que estou errado…


-- 
skype:leandro.gfc.dutra?chat Yahoo!: ymsgr:sendIM?lgcdutra
+55 (11) 9406 7191 gTalk: xmpp:leand...@jabber.org
+55 (11) 3854 7191   ICQ: aim:GoIM?screenname=61287803
+55 (11) 5546 8716msnim:chat?contact=lean...@dutra.fastmail.fm


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


Re: [pgbr-geral] Desempenho no Linux

2009-11-29 Por tôpico Leonardo Cezar
2009/11/29 Leandro Guimarães Faria Corcete DUTRA leandro.gfc.du...@gmail.com:
 Le dimanche 29 novembre 2009 à 13:47 -0200, Leonardo Cezar a écrit :
 Paravirtualização é uma tendência, portanto entender, aprender a
 customizar e otimizar o comportamento do VMM é o novo desafio para o
 DBA dentro desta tendência.

 ¿Mais uma tendência para matar o desempenho?

Infelizmente sim. Redução do desempenho de E/S é o preço que se paga
para adquirir isolamento, consolidação de ambientes, alta
disponibilidade de serviços (sim, controverso), manutenibilidade,
recuperação e utilização de hardware legado. Estas características são
pontos fundamentais (*críticos*) do ponto de vista da *gestão* de TIC.

        Que eu soubesse, virtualização em x86 mata o desempenho justo no que é
 crítico para dados, E/S de disco de armazenamento em massa.

Eu imaginava que tal lentidão se relacionava com requisições a CPU que
demandam um pouco mais de ciclos na arquitetura CISC do que na RISC.

 Como nunca soube exatamente por quê, não sei se o problema foi corrigido com 
 as
 extensões VT-x.

Em processadores que suportam IOMMU (AMD-v ou Intel Direct-I/O VT-d) a
tradução do acesso a alguns dispositivos é feita de forma direta,
sem precisar que o hypervisor realize o mapeamento virtual da memória,
por isto, a performance de E/S é, em alguns casos, 30-60% maior para
dispositivos que utilizam SMA.

 Que eu saiba, não existe problema semelhante em RISC
 e /mainframes/.

AFAIK processadores mais atuais utilizam arquiteturas híbridas.

        Mas adoraria descobrir que estou errado…

Até onde eu sei, não está ...

Abraço!

-Leo
-- 
Leonardo Cezar
http://www.aslid.org.br
http://postgreslogia.wordpress.com
http://www.dextra.com.br/postgres
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-28 Por tôpico JotaComm
Opa,

2009/11/27 mateusgra mateus...@bol.com.br


 De acordo com o Sr. Josh Berkus.

 http://archives.postgresql.org/pgsql-hackers/2008-08/msg00841.php

 Veja que tem exemplos para small server,web application database,data
 warehousing database

 Acho que o pgtune usa esses dados.


Não minha concepção não existe uma receita de bolo para questão de tuning.
Por exemplo, o pgtune fornece uma base de valores para alguns parâmetros,
porém isso não indica que eles não necessitam um ajuste fino. O pgtune é uma
ferramenta para auxiliar sim a questão de configuração dos parâmetro, mas
não é possível se basear apenas nos parâmetros fornecidos. Acredito que
sempre antes de qualquer ajuste de performance é necessário o conhecimento
da aplicação, pois se existe uma consulta ou um conjunto de consultas que
necessita ordenação e agrupamento pode ser que o valor de work_mem sugerido
sofra alterações e por ai vai.

Acredito que os valores apresentados são uma base inicial, mas não eles
sejam definitivos e que não necessitem algum ajuste depois.



 JotaComm wrote:
 
  Olá,
 
  2009/11/27 mateusgra mateus...@bol.com.br
 
 
  Como esta os parametros dos postgresql.conf
 
  shared_buffers
  work_mem
  maintenance_work_mem
  wal_buffers
  effective_cache_size
 
  checkpoint_segments
  max_fsm_pages
  default_statistics_target
 
  Tamanho da base sem compactação : select
  pg_size_pretty(sum(pg_database_size(d.oid))::bigint) from pg_database d;
 
 
  Exemplo:
 
  Se sua base tem 50GB com 200 usuarios
 
  shared_buffers = 1GB
  work_mem = 4MB
  maintenance_work_mem = 500MB
  wal_buffers = 1MB
  effective_cache_size = 1200MB
 
  checkpoint_segments = 16
  max_fsm_pages = 80
  default_statistics_target = 30
 
  Como assim? Você sugere uma configuração assim para uma base de 50GB?
  Baseado em quais requisitos você sugere esta configuração?
 
  Tiago J. Adami wrote:
  
   Olá pessoal. Antes de começar, quero dizer que não sou xiita e
   tampouco quero transformar este post em uma discussão sobre qual SO é
   melhor por um ou outro motivo. Quero que o foco seja restrito apenas
   ao uso do PostgreSQL.
  
   Temos um cliente com uma base de dados onde o arquivo de backup no
   formato compactado com -F c -Z 9 tem próximo de 400 MB. Eu sei que
   para o padrão de vocês é pouco, mas para nossa aplicação já é um
   tamanho grande. O servidor do cliente é Windows 2008 64 bits, rodando
   em um servidor Dell com Intel Xeon 3 Ghz de 4 núcleos e 4 GB de RAM e
   um disco SCSI (sem RAID).
  
   Neste servidor havia reclamações de lentidão. Acontecia em um
   determinado horário (das 16:00hs em diante), e nada de anormal
   aparecia no status do servidor (observado pelo pgAdmin). Existiam
   apenas transações abertas desde às 08:00 hs da manhã no modo In
   Transaction ou Idle. Mas de uns dias para cá, a lentidão passou a
   ser incessante, mesmo sem atualizações do aplicativo, e não há
   backup/restore ou vacuum que resolva. A versão atual rodando é a
   8.2.13.
  
   Primeiro, sugerimos a atualização para a versão 8.3.8 (homologada para
   o nosso ERP, a 8.4.1 nem está em testes ainda). Mas sinceramente, este
   é o primeiro passo apenas...
  
   Se não der muita diferença, vamos sugerir a atualização para o
   Linux... eu confio neste SO, trabalho com a instalação e configuração
   de servidores Linux a muito tempo, não sou um expert mas me viro.
   Acontece que agora, eu preciso de justificativas plausíveis,
   informações que possam convencer o cliente de que realmente o
   PostgreSQL foi feito para Linux, roda melhor no Linux e é mais rápido
   nele.
  
   A questão é mais ou menos como uma elaboração de monografia de
   graduação. Eu sei que no Linux é mais rápido, mas quem disse isso?
   Quais as fontes eu poderia citar?
  
   E antes que perguntem:
   - A aplicação não foi atualizada, portanto não foi nenhuma alteração
   que causou a lentidão;
   - O servidor é dedicado (apesar disso ser essencialmente impossível
   no Windows com todos os serviços que ele roda + o ambiente gráfico);
   - Já verifiquei processos como Vacuum e Backup. Não rodam enquanto
   está lento, somente pela madrugada;
   - Existe sim um software antivírus no servidor, um tal de Eset. Mas
   mesmo com ele desabilitado, a lentidão continua;
  
   A minha pergunta essencial é: quais as diferenças da versão do
   PostgreSQL para Linux e para Windows no que diz respeito à segurança,
   integridade e desempenho?
  
   --
   TIAGO J. ADAMI
   http://www.adamiworks.com
   ___
   pgbr-geral mailing list
   pgbr-geral@listas.postgresql.org.br
   https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
  
  
 
  --
  View this message in context:
  http://old.nabble.com/Desempenho-no-Linux-tp26523053p26543306.html
  Sent from the PostgreSQL - Brasil mailing list archive at Nabble.com.
 
  ___
  pgbr-geral mailing list
  pgbr-geral@listas.postgresql.org.br
  

Re: [pgbr-geral] Desempenho no Linux

2009-11-27 Por tôpico Rudinei Dias
2009/11/26 JotaComm jota.c...@gmail.com

 Olá, pessoal

 To chegando atrasado para a discussão mas eu queria participar.


Também estou chegando atrasado mas vou dar meu singelo pitaco...

Um problema até que comum que gera um grande atraso é a rede. Já foi
verificada?

- Se a latência estiver maior que deveria, o atraso é inevitável e não será
culpa do server nem do postgresql.

- Há perda de pacotes? Placas de rede com problema ou cabeamento podem gerar
perda de pacotes, o que não é sentido pelo servidor, mas sim pelo cliente da
rede, pois acabam ocorrendo muita retransmissão de pacotes. Imagine que 20%
dos pacotes sejam perdidos, qual o custo disto no tempo de execução de uma
tarefa...

Como as conexões são físicas, então sofrem ação de intempéries e fatores
externos
- porta de switch defeituosas
- cabeamento precisando de reparo (conector quebrado, oxidado)
- cabeamento com vias partidas
- cabeamento sofrendo interferência elétrica

Desconfiei disto quando você comenta sobre  Acontecia em um determinado
horário (das 16:00hs em diante), e nada de anormal aparecia no status do
servidor , verifique se há algum equipamento que comumente era acionado
neste período. Já aconteceu comigo que havia uma máquina de xerox de um
departamento na faculdade que funcionava a noite e quando ligavar causava
interferência elétrica na rede, visto que o cabo de rede corria junto com o
da energia no setor. E isso é muito comum nas empresas que fazem cabeamento
por conta própria ou contratam entendidos ou o sobrinho que faz o curso
técnico. Depois de um certo tempo com interferência, pode provocar pane na
porta do switch e seus problemas se agravarm.
Então verifique isto (um simples ping de um cliente já avalia).

PS: Tem muito cliente que não entende e não quer gastar com canaletas em
separado para o cabeamento de rede. Infelizmente eles só aprendem depois que
as coisas começam a funcionar mal, e começarem a substituir equipamentos.
PS: Historinha venérea ;-), só pra não perder a viagem. Todo o dia um
equipamento em teste desligava entre 19:01 e 19:03, horário que não havia
mais ninguém no setor. Várias hipósteses foram verificadas e quase uma
semana de trabalho foi perdida, até que um membro da equipe resolveu esperar
até o horário que ocorria. Descoberto o poblema: às 19hs a faxineira batia o
ponto e esta era a primeira sala que ela entrava. Então tirava um cabo da
tomada (o do equipamento) e colocava seu aspirador de pó...

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


Re: [pgbr-geral] Desempenho no Linux

2009-11-27 Por tôpico mateusgra

Como esta os parametros dos postgresql.conf

shared_buffers 
work_mem
maintenance_work_mem
wal_buffers 
effective_cache_size

checkpoint_segments
max_fsm_pages
default_statistics_target

Tamanho da base sem compactação : select
pg_size_pretty(sum(pg_database_size(d.oid))::bigint) from pg_database d; 


Exemplo:

Se sua base tem 50GB com 200 usuarios 

shared_buffers = 1GB
work_mem = 4MB
maintenance_work_mem = 500MB
wal_buffers = 1MB
effective_cache_size = 1200MB

checkpoint_segments = 16
max_fsm_pages = 80
default_statistics_target = 30



Tiago J. Adami wrote:
 
 Olá pessoal. Antes de começar, quero dizer que não sou xiita e
 tampouco quero transformar este post em uma discussão sobre qual SO é
 melhor por um ou outro motivo. Quero que o foco seja restrito apenas
 ao uso do PostgreSQL.
 
 Temos um cliente com uma base de dados onde o arquivo de backup no
 formato compactado com -F c -Z 9 tem próximo de 400 MB. Eu sei que
 para o padrão de vocês é pouco, mas para nossa aplicação já é um
 tamanho grande. O servidor do cliente é Windows 2008 64 bits, rodando
 em um servidor Dell com Intel Xeon 3 Ghz de 4 núcleos e 4 GB de RAM e
 um disco SCSI (sem RAID).
 
 Neste servidor havia reclamações de lentidão. Acontecia em um
 determinado horário (das 16:00hs em diante), e nada de anormal
 aparecia no status do servidor (observado pelo pgAdmin). Existiam
 apenas transações abertas desde às 08:00 hs da manhã no modo In
 Transaction ou Idle. Mas de uns dias para cá, a lentidão passou a
 ser incessante, mesmo sem atualizações do aplicativo, e não há
 backup/restore ou vacuum que resolva. A versão atual rodando é a
 8.2.13.
 
 Primeiro, sugerimos a atualização para a versão 8.3.8 (homologada para
 o nosso ERP, a 8.4.1 nem está em testes ainda). Mas sinceramente, este
 é o primeiro passo apenas...
 
 Se não der muita diferença, vamos sugerir a atualização para o
 Linux... eu confio neste SO, trabalho com a instalação e configuração
 de servidores Linux a muito tempo, não sou um expert mas me viro.
 Acontece que agora, eu preciso de justificativas plausíveis,
 informações que possam convencer o cliente de que realmente o
 PostgreSQL foi feito para Linux, roda melhor no Linux e é mais rápido
 nele.
 
 A questão é mais ou menos como uma elaboração de monografia de
 graduação. Eu sei que no Linux é mais rápido, mas quem disse isso?
 Quais as fontes eu poderia citar?
 
 E antes que perguntem:
 - A aplicação não foi atualizada, portanto não foi nenhuma alteração
 que causou a lentidão;
 - O servidor é dedicado (apesar disso ser essencialmente impossível
 no Windows com todos os serviços que ele roda + o ambiente gráfico);
 - Já verifiquei processos como Vacuum e Backup. Não rodam enquanto
 está lento, somente pela madrugada;
 - Existe sim um software antivírus no servidor, um tal de Eset. Mas
 mesmo com ele desabilitado, a lentidão continua;
 
 A minha pergunta essencial é: quais as diferenças da versão do
 PostgreSQL para Linux e para Windows no que diz respeito à segurança,
 integridade e desempenho?
 
 -- 
 TIAGO J. ADAMI
 http://www.adamiworks.com
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
 
 

-- 
View this message in context: 
http://old.nabble.com/Desempenho-no-Linux-tp26523053p26543306.html
Sent from the PostgreSQL - Brasil mailing list archive at Nabble.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] Desempenho no Linux

2009-11-27 Por tôpico JotaComm
Olá,

2009/11/27 mateusgra mateus...@bol.com.br


 Como esta os parametros dos postgresql.conf

 shared_buffers
 work_mem
 maintenance_work_mem
 wal_buffers
 effective_cache_size

 checkpoint_segments
 max_fsm_pages
 default_statistics_target

 Tamanho da base sem compactação : select
 pg_size_pretty(sum(pg_database_size(d.oid))::bigint) from pg_database d;


 Exemplo:

 Se sua base tem 50GB com 200 usuarios

 shared_buffers = 1GB
 work_mem = 4MB
 maintenance_work_mem = 500MB
 wal_buffers = 1MB
 effective_cache_size = 1200MB

 checkpoint_segments = 16
 max_fsm_pages = 80
 default_statistics_target = 30

 Como assim? Você sugere uma configuração assim para uma base de 50GB?
 Baseado em quais requisitos você sugere esta configuração?

 Tiago J. Adami wrote:
 
  Olá pessoal. Antes de começar, quero dizer que não sou xiita e
  tampouco quero transformar este post em uma discussão sobre qual SO é
  melhor por um ou outro motivo. Quero que o foco seja restrito apenas
  ao uso do PostgreSQL.
 
  Temos um cliente com uma base de dados onde o arquivo de backup no
  formato compactado com -F c -Z 9 tem próximo de 400 MB. Eu sei que
  para o padrão de vocês é pouco, mas para nossa aplicação já é um
  tamanho grande. O servidor do cliente é Windows 2008 64 bits, rodando
  em um servidor Dell com Intel Xeon 3 Ghz de 4 núcleos e 4 GB de RAM e
  um disco SCSI (sem RAID).
 
  Neste servidor havia reclamações de lentidão. Acontecia em um
  determinado horário (das 16:00hs em diante), e nada de anormal
  aparecia no status do servidor (observado pelo pgAdmin). Existiam
  apenas transações abertas desde às 08:00 hs da manhã no modo In
  Transaction ou Idle. Mas de uns dias para cá, a lentidão passou a
  ser incessante, mesmo sem atualizações do aplicativo, e não há
  backup/restore ou vacuum que resolva. A versão atual rodando é a
  8.2.13.
 
  Primeiro, sugerimos a atualização para a versão 8.3.8 (homologada para
  o nosso ERP, a 8.4.1 nem está em testes ainda). Mas sinceramente, este
  é o primeiro passo apenas...
 
  Se não der muita diferença, vamos sugerir a atualização para o
  Linux... eu confio neste SO, trabalho com a instalação e configuração
  de servidores Linux a muito tempo, não sou um expert mas me viro.
  Acontece que agora, eu preciso de justificativas plausíveis,
  informações que possam convencer o cliente de que realmente o
  PostgreSQL foi feito para Linux, roda melhor no Linux e é mais rápido
  nele.
 
  A questão é mais ou menos como uma elaboração de monografia de
  graduação. Eu sei que no Linux é mais rápido, mas quem disse isso?
  Quais as fontes eu poderia citar?
 
  E antes que perguntem:
  - A aplicação não foi atualizada, portanto não foi nenhuma alteração
  que causou a lentidão;
  - O servidor é dedicado (apesar disso ser essencialmente impossível
  no Windows com todos os serviços que ele roda + o ambiente gráfico);
  - Já verifiquei processos como Vacuum e Backup. Não rodam enquanto
  está lento, somente pela madrugada;
  - Existe sim um software antivírus no servidor, um tal de Eset. Mas
  mesmo com ele desabilitado, a lentidão continua;
 
  A minha pergunta essencial é: quais as diferenças da versão do
  PostgreSQL para Linux e para Windows no que diz respeito à segurança,
  integridade e desempenho?
 
  --
  TIAGO J. ADAMI
  http://www.adamiworks.com
  ___
  pgbr-geral mailing list
  pgbr-geral@listas.postgresql.org.br
  https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
 
 

 --
 View this message in context:
 http://old.nabble.com/Desempenho-no-Linux-tp26523053p26543306.html
 Sent from the PostgreSQL - Brasil mailing list archive at Nabble.com.

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



[]s
-- 
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] Desempenho no Linux

2009-11-27 Por tôpico mateusgra

De acordo com o Sr. Josh Berkus.

http://archives.postgresql.org/pgsql-hackers/2008-08/msg00841.php

Veja que tem exemplos para small server,web application database,data
warehousing database

Acho que o pgtune usa esses dados.


JotaComm wrote:
 
 Olá,
 
 2009/11/27 mateusgra mateus...@bol.com.br
 

 Como esta os parametros dos postgresql.conf

 shared_buffers
 work_mem
 maintenance_work_mem
 wal_buffers
 effective_cache_size

 checkpoint_segments
 max_fsm_pages
 default_statistics_target

 Tamanho da base sem compactação : select
 pg_size_pretty(sum(pg_database_size(d.oid))::bigint) from pg_database d;


 Exemplo:

 Se sua base tem 50GB com 200 usuarios

 shared_buffers = 1GB
 work_mem = 4MB
 maintenance_work_mem = 500MB
 wal_buffers = 1MB
 effective_cache_size = 1200MB

 checkpoint_segments = 16
 max_fsm_pages = 80
 default_statistics_target = 30

 Como assim? Você sugere uma configuração assim para uma base de 50GB?
 Baseado em quais requisitos você sugere esta configuração?

 Tiago J. Adami wrote:
 
  Olá pessoal. Antes de começar, quero dizer que não sou xiita e
  tampouco quero transformar este post em uma discussão sobre qual SO é
  melhor por um ou outro motivo. Quero que o foco seja restrito apenas
  ao uso do PostgreSQL.
 
  Temos um cliente com uma base de dados onde o arquivo de backup no
  formato compactado com -F c -Z 9 tem próximo de 400 MB. Eu sei que
  para o padrão de vocês é pouco, mas para nossa aplicação já é um
  tamanho grande. O servidor do cliente é Windows 2008 64 bits, rodando
  em um servidor Dell com Intel Xeon 3 Ghz de 4 núcleos e 4 GB de RAM e
  um disco SCSI (sem RAID).
 
  Neste servidor havia reclamações de lentidão. Acontecia em um
  determinado horário (das 16:00hs em diante), e nada de anormal
  aparecia no status do servidor (observado pelo pgAdmin). Existiam
  apenas transações abertas desde às 08:00 hs da manhã no modo In
  Transaction ou Idle. Mas de uns dias para cá, a lentidão passou a
  ser incessante, mesmo sem atualizações do aplicativo, e não há
  backup/restore ou vacuum que resolva. A versão atual rodando é a
  8.2.13.
 
  Primeiro, sugerimos a atualização para a versão 8.3.8 (homologada para
  o nosso ERP, a 8.4.1 nem está em testes ainda). Mas sinceramente, este
  é o primeiro passo apenas...
 
  Se não der muita diferença, vamos sugerir a atualização para o
  Linux... eu confio neste SO, trabalho com a instalação e configuração
  de servidores Linux a muito tempo, não sou um expert mas me viro.
  Acontece que agora, eu preciso de justificativas plausíveis,
  informações que possam convencer o cliente de que realmente o
  PostgreSQL foi feito para Linux, roda melhor no Linux e é mais rápido
  nele.
 
  A questão é mais ou menos como uma elaboração de monografia de
  graduação. Eu sei que no Linux é mais rápido, mas quem disse isso?
  Quais as fontes eu poderia citar?
 
  E antes que perguntem:
  - A aplicação não foi atualizada, portanto não foi nenhuma alteração
  que causou a lentidão;
  - O servidor é dedicado (apesar disso ser essencialmente impossível
  no Windows com todos os serviços que ele roda + o ambiente gráfico);
  - Já verifiquei processos como Vacuum e Backup. Não rodam enquanto
  está lento, somente pela madrugada;
  - Existe sim um software antivírus no servidor, um tal de Eset. Mas
  mesmo com ele desabilitado, a lentidão continua;
 
  A minha pergunta essencial é: quais as diferenças da versão do
  PostgreSQL para Linux e para Windows no que diz respeito à segurança,
  integridade e desempenho?
 
  --
  TIAGO J. ADAMI
  http://www.adamiworks.com
  ___
  pgbr-geral mailing list
  pgbr-geral@listas.postgresql.org.br
  https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
 
 

 --
 View this message in context:
 http://old.nabble.com/Desempenho-no-Linux-tp26523053p26543306.html
 Sent from the PostgreSQL - Brasil mailing list archive at Nabble.com.

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

 
 
 []s
 -- 
 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
 
 

-- 
View this message in context: 
http://old.nabble.com/Desempenho-no-Linux-tp26523053p26545354.html
Sent from the PostgreSQL - Brasil mailing list archive at Nabble.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] Desempenho no Linux

2009-11-26 Por tôpico Euler Taveira de Oliveira
Pablo Sánchez escreveu:
 PostgreSQL performance is very close on both platforms (within 6/100
 of a second for 1000 Operations) – It’s faster on Windows and faster
 still on Windows with PHP 5.3
 
Ugh?! Quem disse que 'SELECT * FROM tabela' mede performance de um SGBD? O
autor deve estar brincando, né? Temos benchmarks padronizados (aka TPC) para
isso; eles implementam modelos que simulam um ambiente real de acordo com a
arquitetura (OLTP, OLAP ou Web) do seu sistema.

 Não conheço nenhuma diferença... Com exceção do fato de que há
 tunnings que podem ser feitos com os semáforos do kernel em
 Linux/FreeBSD que não se conseguem no Windows.
 
Como eu disse esses conceito *não* existe (é emulado) no Windows.


-- 
  Euler Taveira de Oliveira
  http://www.timbira.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] Desempenho no Linux

2009-11-26 Por tôpico Wolak Sistemas - Fabiano Machado Dias




Pessoal, não vamos esquecer de outros fatores que fazem o Linux ter um
desempenho muito melhor.

- Sistemas de aquivos (Qual a opção que existe no Windows além de NTFS?)
- Parâmetros do Kernel (Só se você por um expert no registro do
Windows, quais os parâmetros que você pode mudar?)
- Instalação via código fonte (Sei que tb dá pra compilar no Windows,
mas duvido alguém que faça sem dor de cabeça e tb duvido do desempenho)
- Melhor uso de hardware (Isso é senso comum, o Linux faz uso do
hardware de maneira muito mais otimizada que o Windows)
- Segurança (Bom como diz o Telles "Existem 2 tipos de Windows, aquele
que tem vírus e aquele que você acha que não tem vírus")

Para convencer o seu cliente você poderia fazer uma instalação em um
servidor da sua própria em empresa e comparar o desempenho, duvido que
ele não irá se convencer.

Abraço,
Fabiano



Euler Taveira de Oliveira escreveu:

  Pablo Sánchez escreveu:
  
  
"PostgreSQL performance is very close on both platforms (within 6/100
of a second for 1000 Operations) – It’s faster on Windows and faster
still on Windows with PHP 5.3"


  
  Ugh?! Quem disse que 'SELECT * FROM tabela' mede performance de um SGBD? O
autor deve estar brincando, né? Temos benchmarks padronizados (aka TPC) para
isso; eles implementam modelos que simulam um ambiente real de acordo com a
arquitetura (OLTP, OLAP ou Web) do seu sistema.

  
  
Não conheço nenhuma diferença... Com exceção do fato de que há
tunnings que podem ser feitos com os semáforos do kernel em
Linux/FreeBSD que não se conseguem no Windows.


  
  Como eu disse esses conceito *não* existe (é emulado) no Windows.


  




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


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Tiago Adami
 (corte das mensagens anteriores)


Respondendo à todos os posts (economizando texto):

A idéia de que o PostgreSQL foi feito _para_ linux e _portado_ para o
Windows está baseada no fato de que foi desenvolvido sob a licença
BSD, portanto _assumi_ que dificilmente os desenvolvedores iniciais
estivessem utilizando Windows (me corrijam se estiver errado).

Já investigamos a causa da lentidão antes. Aparentemente não há nada
de incomum, apenas a velocidade para consultas simples (cadastros de
itens, por exemplo) torna-se baixa e tarefas como gravação de nota
fiscal que levavam segundos passam a demorar minutos.

São mais de 30 usuários simultâneos em um sistema cliente/servidor
(conecta ao fazer login, desconecta ao fechar o aplicativo). O volume
transacional é considerado alto, visto que a todo momento alguma
operação é feita nos terminais simultaneamente.

Também, não conseguimos identificar nenhum outro aplicativo que faça o
consumo de recursos do servidor. Mas...

... o array dos dois discos que contém o banco possui pastas
compartilhadas sim, e com muitos arquivos nela. Isto passou
despercebido em um primeiro momento. Mesmo assim, a atividade nestas
pastas é muito pequena, não justifica a queda de desempenho tão brusca
que ocorreu de uns dias para cá.

Enfim... o jeito é fazer benchmarks próprios para verificar o
desempenho entre os dois SO. Uma vantagem que visualizo com a troca
para Linux é que não existirá muita coisa rodando como serviço, coisa
que infelizmente o Windows possui desde a sua concepção.

-- 
TIAGO J. ADAMI
http://www.adamiworks.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] Desempenho no Linux

2009-11-26 Por tôpico Pablo Sánchez
2009/11/26 Euler Taveira de Oliveira eu...@timbira.com:
 Pablo Sánchez escreveu:
 PostgreSQL performance is very close on both platforms (within 6/100
 of a second for 1000 Operations) – It’s faster on Windows and faster
 still on Windows with PHP 5.3

 Ugh?! Quem disse que 'SELECT * FROM tabela' mede performance de um SGBD? O
 autor deve estar brincando, né? Temos benchmarks padronizados (aka TPC) para
 isso; eles implementam modelos que simulam um ambiente real de acordo com a
 arquitetura (OLTP, OLAP ou Web) do seu sistema.

Acho que o teste foi mais para medir o PHP que o PostgreSQL mesmo...
Ainda assim, não é um teste muito profundo mesmo não...


-- 
=
Pablo Santiago Sánchez
Análise e Desenvolvimento de Sistemas Web
Zend Certified Engineer #ZEND006757
phack...@gmail.com
(61) 9975-0883
http://www.sansis.com.br
http://www.corephp.com.br
Quidquid latine dictum sit, altum viditur
=
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Pablo Sánchez
2009/11/26 Wolak Sistemas - Fabiano Machado Dias fabi...@wolaksistemas.com.br:
 Pessoal, não vamos esquecer de outros fatores que fazem o Linux ter um
 desempenho muito melhor.

 - Sistemas de aquivos (Qual a opção que existe no Windows além de NTFS?)

Mas será que precisa de algum outro além desse para ele? (obs, existe
fat32, vc pode compilar partições maiores que 4GB de fat32 utilizando
uma ferramenta chamada fat32format.exe - não é padrão do windows, mas
é gratuita)

 - Parâmetros do Kernel (Só se você por um expert no registro do Windows,
 quais os parâmetros que você pode mudar?)

Eu faço uma limpeza de alguns parâmetros que já conheço serem
desnecessários e que só deixam o OS mais lento, mas isso desde o winnt
4... então meio que realmente, não sei de muita gente que faça isso na
mão hoje em dia.

 - Instalação via código fonte (Sei que tb dá pra compilar no Windows, mas
 duvido alguém que faça sem dor de cabeça e tb duvido do desempenho)

Sem dor de cabeça é complicado mesmo, mas vai falar com o Guilherme
Blanco que é o cara responsável pelo windows.php.net. ;-)

 - Melhor uso de hardware (Isso é senso comum, o Linux faz uso do hardware de
 maneira muito mais otimizada que o Windows)

Senso comum não é comprovação. Os drivers de placas 3D para windows
são no geral muito melhores que o do Linux, até mesmo porque tem
pouquíssima placa com driver oficial para o Linux...

É senso comum que o céu é azul, mas é cientificamente comprovado que
não existem as cores, apenas o espectro de luz. A cor é mera
interpretação do cérebro, e o que é azul para mim (ou seja, exatamente
como meu cérebro me apresenta) poderia ser o verde para vc.

Senso comum é subjetivo, não serve como parâmetro... é a interpretação
ordinária de cada um sobre o que todo mundo fala e quase ninguém para
para comprovar.

Tem pesquisas por aí que suportam a argumentação, e acho que nosso
amigo precisa delas, e não de senso comum.

 - Segurança (Bom como diz o Telles Existem 2 tipos de Windows, aquele que
 tem vírus e aquele que você acha que não tem vírus)

 Para convencer o seu cliente você poderia fazer uma instalação em um
 servidor da sua própria em empresa e comparar o desempenho, duvido que ele
 não irá se convencer.

 Abraço,
 Fabiano



 Euler Taveira de Oliveira escreveu:

 Pablo Sánchez escreveu:


 PostgreSQL performance is very close on both platforms (within 6/100
 of a second for 1000 Operations) – It’s faster on Windows and faster
 still on Windows with PHP 5.3



 Ugh?! Quem disse que 'SELECT * FROM tabela' mede performance de um SGBD? O
 autor deve estar brincando, né? Temos benchmarks padronizados (aka TPC) para
 isso; eles implementam modelos que simulam um ambiente real de acordo com a
 arquitetura (OLTP, OLAP ou Web) do seu sistema.



 Não conheço nenhuma diferença... Com exceção do fato de que há
 tunnings que podem ser feitos com os semáforos do kernel em
 Linux/FreeBSD que não se conseguem no Windows.



 Como eu disse esses conceito *não* existe (é emulado) no Windows.




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





-- 
=
Pablo Santiago Sánchez
Análise e Desenvolvimento de Sistemas Web
Zend Certified Engineer #ZEND006757
phack...@gmail.com
(61) 9975-0883
http://www.sansis.com.br
http://www.corephp.com.br
Quidquid latine dictum sit, altum viditur
=
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Pablo Sánchez
2009/11/26 Pablo Sánchez phack...@gmail.com:
 - Segurança (Bom como diz o Telles Existem 2 tipos de Windows, aquele que
 tem vírus e aquele que você acha que não tem vírus)

tab + enter por acidente, desculpem.

Bom, então estou na segunda parcela, porque nem entro mais no windows
do meu note, só para jogar e muito de vez em quando, hehehe.

 Para convencer o seu cliente você poderia fazer uma instalação em um
 servidor da sua própria em empresa e comparar o desempenho, duvido que ele
 não irá se convencer.

Isso é verdade. A apresentação seria essencial. Mas aí vem a questão
da realização dos testes e do cliente não achar que o teste foi
maquiado ou manipulado, afinal de contas, ele está tentando salvar a
reputação do sistema da empresa que não está rodando bem com a
afirmação de que a culpa é de software de terceiros.

Eu acho que tem que fazer uma análise um pouco mais profunda do que
poderia estar acontecendo. Sugerir a troca do OS que o cliente já
adquiriu licença e tem suporte (deve ter algum admin lá windowzer) é
complicado. Vamos usar este, que é de graça e é melhor. Poucas
pessoas entendem que esse de graça não é realmente de graça - quem
vai administrar o servidor? - e mais ainda, que neste caso o de
graça realmente é melhor (de graça o santo desconfia que é
des-graça).

-- 
=
Pablo Santiago Sánchez
Análise e Desenvolvimento de Sistemas Web
Zend Certified Engineer #ZEND006757
phack...@gmail.com
(61) 9975-0883
http://www.sansis.com.br
http://www.corephp.com.br
Quidquid latine dictum sit, altum viditur
=
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Sebastian SWC
2009/11/25 Tiago Adami adam...@gmail.com:
 Olá pessoal. Antes de começar, quero dizer que não sou xiita e
 tampouco quero transformar este post em uma discussão sobre qual SO é
 melhor por um ou outro motivo. Quero que o foco seja restrito apenas
 ao uso do PostgreSQL.

 Temos um cliente com uma base de dados onde o arquivo de backup no
 formato compactado com -F c -Z 9 tem próximo de 400 MB. Eu sei que
 para o padrão de vocês é pouco, mas para nossa aplicação já é um
 tamanho grande.

Tenhos clientes com dumps menores que esse... :P

 O servidor do cliente é Windows 2008 64 bits, rodando
 em um servidor Dell com Intel Xeon 3 Ghz de 4 núcleos e 4 GB de RAM e
 um disco SCSI (sem RAID).

Poxa, isso faz diferença. Nesse windão deve ter alguns
compartilhamentos e serviços. Todos concorrendo com o postgres.


 Neste servidor havia reclamações de lentidão. Acontecia em um
 determinado horário (das 16:00hs em diante), e nada de anormal
 aparecia no status do servidor (observado pelo pgAdmin). Existiam
 apenas transações abertas desde às 08:00 hs da manhã no modo In
 Transaction ou Idle.

A query estava 'in transaction' desde as 8h e ficou pendurada até
agora? já descrobriu a causa disso?

 Mas de uns dias para cá, a lentidão passou a
 ser incessante, mesmo sem atualizações do aplicativo, e não há
 backup/restore ou vacuum que resolva. A versão atual rodando é a
 8.2.13.

 Primeiro, sugerimos a atualização para a versão 8.3.8 (homologada para
 o nosso ERP, a 8.4.1 nem está em testes ainda). Mas sinceramente, este
 é o primeiro passo apenas...

Mudar a versão pode trazer alguns ganhos de desempenho, mas se você
utiliza o padrão do postgresql.conf não deve ser grande a diferença. É
o seu caso?

corte
-- 
Atenciosamente,
Sebastian Selau Webber Colombo
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Pablo Sánchez
2009/11/26 Tiago Adami adam...@gmail.com:
 (corte das mensagens anteriores)


 Respondendo à todos os posts (economizando texto):

 A idéia de que o PostgreSQL foi feito _para_ linux e _portado_ para o
 Windows está baseada no fato de que foi desenvolvido sob a licença
 BSD, portanto _assumi_ que dificilmente os desenvolvedores iniciais
 estivessem utilizando Windows (me corrijam se estiver errado).

Na verdade, ele foi desenvolvido para os BSDs (FreeBSD, por exemplo,
ou outros Unices derivados do BSD mesmo) e depois portado para o
Linux, ou seja, afirmar que é melhor no Linux porque para o Windows
foi portado é o mesmo que dizer que no Linux não seria bom, já que ele
também foi portado para o Linux.

Vide a história do PostgreSQL, e vai ver que em 1987 não existia
Linux... mas já tinha os BSDs (não o Free, nem o Open, nem o Net, que
só vieram anos depois que a universidade de Berkeley liberou as
BSDTapes.., mas mesmo assim, esses são sistemas derivados do código
original de 1969...)

 Já investigamos a causa da lentidão antes. Aparentemente não há nada
 de incomum, apenas a velocidade para consultas simples (cadastros de
 itens, por exemplo) torna-se baixa e tarefas como gravação de nota
 fiscal que levavam segundos passam a demorar minutos.

Já checou se o HD está ok? Problemas físicos podem fazer com que o HD
fique tentando gravar e gravar e gravar e desvie de setores
defeituosos para localizar alguns pouco blocks que estejam ok.

 São mais de 30 usuários simultâneos em um sistema cliente/servidor
 (conecta ao fazer login, desconecta ao fechar o aplicativo). O volume
 transacional é considerado alto, visto que a todo momento alguma
 operação é feita nos terminais simultaneamente.

 Também, não conseguimos identificar nenhum outro aplicativo que faça o
 consumo de recursos do servidor. Mas...

 ... o array dos dois discos que contém o banco possui pastas
 compartilhadas sim, e com muitos arquivos nela. Isto passou
 despercebido em um primeiro momento. Mesmo assim, a atividade nestas
 pastas é muito pequena, não justifica a queda de desempenho tão brusca
 que ocorreu de uns dias para cá.

 Enfim... o jeito é fazer benchmarks próprios para verificar o
 desempenho entre os dois SO. Uma vantagem que visualizo com a troca
 para Linux é que não existirá muita coisa rodando como serviço, coisa
 que infelizmente o Windows possui desde a sua concepção.

Não é bem assim... O Linux tb tem vários processos rodando à toa por
lá. Se quer usar um OS para isso, te aconselho FreeBSD ao invés do
Linux.

-- 
=
Pablo Santiago Sánchez
Análise e Desenvolvimento de Sistemas Web
Zend Certified Engineer #ZEND006757
phack...@gmail.com
(61) 9975-0883
http://www.sansis.com.br
http://www.corephp.com.br
Quidquid latine dictum sit, altum viditur
=
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Sebastian SWC
2009/11/26 Pablo Sánchez phack...@gmail.com:
corte

 Eu acho que tem que fazer uma análise um pouco mais profunda do que
 poderia estar acontecendo. Sugerir a troca do OS que o cliente já
 adquiriu licença e tem suporte (deve ter algum admin lá windowzer) é
 complicado. Vamos usar este, que é de graça e é melhor. Poucas
 pessoas entendem que esse de graça não é realmente de graça - quem
 vai administrar o servidor? - e mais ainda, que neste caso o de
 graça realmente é melhor (de graça o santo desconfia que é
 des-graça).


Se o cliente questiona o custo do software dê a sugestão de linux
pago como o RedHat, etc, etc. Com todas as respostas na mão o
cliente não tem como negar a migração do sistema operacional. O único
motivo que pode impedir é que o cliente utilize essa máquina para
outro proposito secundário e não tenha como colocar esses serviços em
outra máquina/servidor.

-- 
Atenciosamente,
Sebastian Selau Webber Colombo
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Sebastian SWC
2009/11/26 Pablo Sánchez phack...@gmail.com:
corte
 Enfim... o jeito é fazer benchmarks próprios para verificar o
 desempenho entre os dois SO. Uma vantagem que visualizo com a troca
 para Linux é que não existirá muita coisa rodando como serviço, coisa
 que infelizmente o Windows possui desde a sua concepção.

 Não é bem assim... O Linux tb tem vários processos rodando à toa por
 lá. Se quer usar um OS para isso, te aconselho FreeBSD ao invés do
 Linux.


A não ser que ele tenha alguém experiente em FreeBSD na equipe não
parece uma boa idéia.

-- 
Atenciosamente,
Sebastian Selau Webber Colombo
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Pablo Sánchez
2009/11/26 Sebastian SWC sebastian...@gmail.com:
 Se o cliente questiona o custo do software dê a sugestão de linux
 pago como o RedHat, etc, etc. Com todas as respostas na mão o
 cliente não tem como negar a migração do sistema operacional. O único
 motivo que pode impedir é que o cliente utilize essa máquina para
 outro proposito secundário e não tenha como colocar esses serviços em
 outra máquina/servidor.

Considerando o fato do servidor já ser dedicado, acho que não vai ser
problema. Tem que ver é se o pessoal da rede vai dar conta ou topar o
desafio... Espero que eles topem.



-- 
=
Pablo Santiago Sánchez
Análise e Desenvolvimento de Sistemas Web
Zend Certified Engineer #ZEND006757
phack...@gmail.com
(61) 9975-0883
http://www.sansis.com.br
http://www.corephp.com.br
Quidquid latine dictum sit, altum viditur
=
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Pablo Sánchez
2009/11/26 Sebastian SWC sebastian...@gmail.com:
 A não ser que ele tenha alguém experiente em FreeBSD na equipe não
 parece uma boa idéia.

Não sabemos nem se ele tem alguém experiente em Linux na equipe (não
digo na dele, digo na do cliente).

-- 
=
Pablo Santiago Sánchez
Análise e Desenvolvimento de Sistemas Web
Zend Certified Engineer #ZEND006757
phack...@gmail.com
(61) 9975-0883
http://www.sansis.com.br
http://www.corephp.com.br
Quidquid latine dictum sit, altum viditur
=
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Sebastian SWC
2009/11/26 Pablo Sánchez phack...@gmail.com:
 2009/11/26 Sebastian SWC sebastian...@gmail.com:
 A não ser que ele tenha alguém experiente em FreeBSD na equipe não
 parece uma boa idéia.

 Não sabemos nem se ele tem alguém experiente em Linux na equipe (não
 digo na dele, digo na do cliente).


Tudo depende quem gerencia o servidor. Se o cliente deixa tudo por
conta do fornecedor, é possível que não faça diferença desde que tudo
funciona normalmente. Cada caso é um caso. Sem muitos detalhes fica
bem difícil opinar.

-- 
Atenciosamente,
Sebastian Selau Webber Colombo
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Wolak Sistemas - Fabiano Machado Dias




Pablo Sánchez escreveu:

  2009/11/26 Wolak Sistemas - Fabiano Machado Dias fabi...@wolaksistemas.com.br:
  
  
Pessoal, não vamos esquecer de outros fatores que fazem o Linux ter um
desempenho muito melhor.

- Sistemas de aquivos (Qual a opção que existe no Windows além de NTFS?)

  
  
Mas será que precisa de algum outro além desse para ele? (obs, existe
fat32, vc pode compilar partições maiores que 4GB de fat32 utilizando
uma ferramenta chamada fat32format.exe - não é padrão do windows, mas
é gratuita

FAT 32? Bah, tá loco, isso nem deveria ser considerado um sistema de
arquivos. E acho que é importante você poder contar com mais opção de
file system, já tive situações onde coloquei os dados em XFS, indíces
em EXT2, e logs em ReiserFS. 
Era um caso específico e a performance ficou melhor, mas me diz qual a
opção que teria em Windows? Nenhuma!

  
  
- Parâmetros do Kernel (Só se você por um expert no registro do Windows,
quais os parâmetros que você pode mudar?)

  
  
Eu faço uma limpeza de alguns parâmetros que já conheço serem
desnecessários e que só deixam o OS mais lento, mas isso desde o winnt
4... então meio que realmente, não sei de muita gente que faça isso na
mão hoje em dia.

  

Blz, acho que pode até ser válido, agora muda os semáforos do SO,
ajusta a memória compartilhada, muda o tamanho da pilha, e outra sem
reiniciar o sistema, afinal tu vai derrubar a empresa só pra mudar
alguns parâmetros?


  
  
- Instalação via código fonte (Sei que tb dá pra compilar no Windows, mas
duvido alguém que faça sem dor de cabeça e tb duvido do desempenho)

  
  
Sem dor de cabeça é complicado mesmo, mas vai falar com o Guilherme
Blanco que é o cara responsável pelo windows.php.net. ;-)

  
  
- Melhor uso de hardware (Isso é senso comum, o Linux faz uso do hardware de
maneira muito mais otimizada que o Windows)

  
  
Senso comum não é comprovação. Os drivers de placas 3D para windows
são no geral muito melhores que o do Linux, até mesmo porque tem
pouquíssima placa com driver oficial para o Linux...

É senso comum que o céu é azul, mas é cientificamente comprovado que
não existem as cores, apenas o espectro de luz. A cor é mera
interpretação do cérebro, e o que é azul para mim (ou seja, exatamente
como meu cérebro me apresenta) poderia ser o verde para vc.

Senso comum é subjetivo, não serve como parâmetro... é a interpretação
ordinária de cada um sobre o que todo mundo fala e quase ninguém para
para comprovar.

Tem pesquisas por aí que suportam a argumentação, e acho que nosso
amigo precisa delas, e não de "senso comum".

  

Bom quis dizer senso comum porque a maioria das pessoas que trabalham e
conhecem o Linux sabem disso, mas só para elucidar o porque posso citar
algumas coisas:

- Linux e o Kernel foram feitos para rodar em hardware barato, desde o
início a preocupação com performance foi uma constante.
- O uso de memória e processador e a maneira de controlar os processos
são melhores que qualquer sistema Windows, até pouco tempo atrás o
Windows tinha problema em gerenciar 4 gb de memória.
- Drivers de Placa 3d? Bom estamos ou pelo menos eu estava falando em
servidores, onde os drivers realmente importantes são os das
controladoras de disco, rede etc... 
Lembro de uma situação onde estava instalando um Debian em um servidor
Dell, durante a instalação veio uma mensagem dizendo que eu precisaria
de um pacote para a atualização do firmware da placa de rede, pois a
mesma tinha problemas no driver nativo.
Entrei no repositório de pacotes, baixei, pluguei um pendrive e a
instalação continuou e este server está rodando até agora.

Talvez a expressão senso comum não foi a mais correta, mas sei lá até
leigos hoje em dia sabem que Linux é mais rápido que Windows, talvez
porque é o sistema mais usado em servidores no mundo inteiro, sei lá!

  
  
- Segurança (Bom como diz o Telles "Existem 2 tipos de Windows, aquele que
tem vírus e aquele que você acha que não tem vírus")

Para convencer o seu cliente você poderia fazer uma instalação em um
servidor da sua própria em empresa e comparar o desempenho, duvido que ele
não irá se convencer.

Abraço,
Fabiano



Euler Taveira de Oliveira escreveu:

Pablo Sánchez escreveu:


"PostgreSQL performance is very close on both platforms (within 6/100
of a second for 1000 Operations) – It’s faster on Windows and faster
still on Windows with PHP 5.3"



Ugh?! Quem disse que 'SELECT * FROM tabela' mede performance de um SGBD? O
autor deve estar brincando, né? Temos benchmarks padronizados (aka TPC) para
isso; eles implementam modelos que simulam um ambiente real de acordo com a
arquitetura (OLTP, OLAP ou Web) do seu sistema.



Não conheço nenhuma diferença... Com exceção do fato de que há
tunnings que podem ser feitos com os semáforos do kernel em
Linux/FreeBSD que não se conseguem no Windows.



Como eu disse esses conceito *não* existe (é emulado) no Windows.




___
pgbr-geral mailing 

Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Pablo Sánchez
2009/11/26 Wolak Sistemas - Fabiano Machado Dias fabi...@wolaksistemas.com.br:
 FAT 32? Bah, tá loco, isso nem deveria ser considerado um sistema de
 arquivos. E acho que é importante você poder contar com mais opção de file
 system, já tive situações onde coloquei os dados em XFS, indíces em EXT2, e
 logs em ReiserFS.
 Era um caso específico e a performance ficou melhor, mas me diz qual a opção
 que teria em Windows? Nenhuma!

k, eu sei, só lembrei que existe, não falei que prestava. :-D

 Eu faço uma limpeza de alguns parâmetros que já conheço serem
 desnecessários e que só deixam o OS mais lento, mas isso desde o winnt
 4... então meio que realmente, não sei de muita gente que faça isso na
 mão hoje em dia.



 Blz, acho que pode até ser válido, agora muda os semáforos do SO, ajusta a
 memória compartilhada, muda o tamanho da pilha, e outra sem reiniciar o
 sistema, afinal tu vai derrubar a empresa só pra mudar alguns parâmetros?

Fato. ;-)

 Bom quis dizer senso comum porque a maioria das pessoas que trabalham e
 conhecem o Linux sabem disso, mas só para elucidar o porque posso citar
 algumas coisas:

 - Linux e o Kernel foram feitos para rodar em hardware barato, desde o
 início a preocupação com performance foi uma constante.
 - O uso de memória e processador e a maneira de controlar os processos são
 melhores que qualquer sistema Windows, até pouco tempo atrás o Windows tinha
 problema em gerenciar 4 gb de memória.

Na verdade é uma limitação por conta de sistemas 32bits, que só
conseguem registrar os endereços até 3gb. Isso é para todos os OS...

 - Drivers de Placa 3d? Bom estamos ou pelo menos eu estava falando em
 servidores, onde os drivers realmente importantes são os das controladoras
 de disco, rede etc...

Sim, apenas citei um caso, de resto o Linux e o FreeBSD batem fácil.

 Lembro de uma situação onde estava instalando um Debian em um servidor Dell,
 durante a instalação veio uma mensagem dizendo que eu precisaria de um
 pacote para a atualização do firmware da placa de rede, pois a mesma tinha
 problemas no driver nativo.
 Entrei no repositório de pacotes, baixei, pluguei um pendrive e a instalação
 continuou e este server está rodando até agora.

Tive um server FreeBSD com uptime de 5 anos, só reiniciei no dia em
que tive que atualizar o OS mesmo

 Talvez a expressão senso comum não foi a mais correta, mas sei lá até leigos
 hoje em dia sabem que Linux é mais rápido que Windows, talvez porque é o
 sistema mais usado em servidores no mundo inteiro, sei lá!

Que o diga o boot do Linux dos eeePC 701... Otimização é pouco! Quero
um boot daqueles até hoje e não consegui.

 - Segurança (Bom como diz o Telles Existem 2 tipos de Windows, aquele que
 tem vírus e aquele que você acha que não tem vírus)

 Para convencer o seu cliente você poderia fazer uma instalação em um
 servidor da sua própria em empresa e comparar o desempenho, duvido que ele
 não irá se convencer.

:-D

-- 
=
Pablo Santiago Sánchez
Análise e Desenvolvimento de Sistemas Web
Zend Certified Engineer #ZEND006757
phack...@gmail.com
(61) 9975-0883
http://www.sansis.com.br
http://www.corephp.com.br
Quidquid latine dictum sit, altum viditur
=
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Dickson S. Guedes
2009/11/26 Tiago Adami adam...@gmail.com:
 Já investigamos a causa da lentidão antes. Aparentemente não há nada
 de incomum, apenas a velocidade para consultas simples (cadastros de
 itens, por exemplo) torna-se baixa e tarefas como gravação de nota
 fiscal que levavam segundos passam a demorar minutos.

Você tem um histórico do tempo que tem levado para que os CHECKPOINTs
sejam executados?

Você tem um histórico de como está a utilização de disco quanto à
entrada e saida? O I/O pode ser uma das causas.

 (...)
 ... o array dos dois discos que contém o banco possui pastas
 compartilhadas sim, e com muitos arquivos nela.

O que são muitos arquivos ? Há problemas quanto há muitos arquivos
(~1k) em um único diretório num NTFS.

 Enfim... o jeito é fazer benchmarks próprios para verificar o
 desempenho entre os dois SO. Uma vantagem que visualizo com a troca
 para Linux é que não existirá muita coisa rodando como serviço, coisa
 que infelizmente o Windows possui desde a sua concepção.

Faça os benchmarks e se possível publique-os para referências futuras.


[]s
Dickson S. Guedes
mail/xmpp: gue...@guedesoft.net - skype: guediz
http://guedesoft.net - http://www.postgresql.org.br
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Tiago Adami
2009/11/26 Dickson S. Guedes lis...@guedesoft.net:
 2009/11/26 Tiago Adami adam...@gmail.com:
 Já investigamos a causa da lentidão antes. Aparentemente não há nada
 de incomum, apenas a velocidade para consultas simples (cadastros de
 itens, por exemplo) torna-se baixa e tarefas como gravação de nota
 fiscal que levavam segundos passam a demorar minutos.

 Você tem um histórico do tempo que tem levado para que os CHECKPOINTs
 sejam executados?


Como visualizo isso?

 Você tem um histórico de como está a utilização de disco quanto à
 entrada e saida? O I/O pode ser uma das causas.


Há como ler um histórico de I/O do banco? Esta informação fica armazenada?

 (...)
 ... o array dos dois discos que contém o banco possui pastas
 compartilhadas sim, e com muitos arquivos nela.

 O que são muitos arquivos ? Há problemas quanto há muitos arquivos
 (~1k) em um único diretório num NTFS.

Imagine uma pasta onde todos e qualquer um podem gravar arquivos,
desde planilhas do Excel, relatórios emitidos pelo sistema em TXT,
MP3. Mas pelo o que observei, o movimento nestas pastas é bem pequeno.

 Enfim... o jeito é fazer benchmarks próprios para verificar o
 desempenho entre os dois SO. Uma vantagem que visualizo com a troca
 para Linux é que não existirá muita coisa rodando como serviço, coisa
 que infelizmente o Windows possui desde a sua concepção.

 Faça os benchmarks e se possível publique-os para referências futuras.

Posso fazer sim, sem problemas, mas terei que usar parâmetros da nossa
aplicação.

(corte)

-- 
TIAGO J. ADAMI
http://www.adamiworks.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] Desempenho no Linux

2009-11-26 Por tôpico Guilherme Carvalho
Não sou muito conhecedor desta parte de configurações em sistemas
operacionais, mas creio que para ver o motivo de tal lentidão poderia
inicial verificar o eventviewer, acho que escreva-se assim mesmo. Nele você
tem todas as operações certos? do SO.

Atenciosamente,

Guilherme de Carvalho Carneiro

2009/11/26 Tiago Adami adam...@gmail.com

 2009/11/26 Dickson S. Guedes lis...@guedesoft.net:
  2009/11/26 Tiago Adami adam...@gmail.com:
  Já investigamos a causa da lentidão antes. Aparentemente não há nada
  de incomum, apenas a velocidade para consultas simples (cadastros de
  itens, por exemplo) torna-se baixa e tarefas como gravação de nota
  fiscal que levavam segundos passam a demorar minutos.
 
  Você tem um histórico do tempo que tem levado para que os CHECKPOINTs
  sejam executados?
 

 Como visualizo isso?

  Você tem um histórico de como está a utilização de disco quanto à
  entrada e saida? O I/O pode ser uma das causas.
 

 Há como ler um histórico de I/O do banco? Esta informação fica armazenada?

  (...)
  ... o array dos dois discos que contém o banco possui pastas
  compartilhadas sim, e com muitos arquivos nela.
 
  O que são muitos arquivos ? Há problemas quanto há muitos arquivos
  (~1k) em um único diretório num NTFS.

 Imagine uma pasta onde todos e qualquer um podem gravar arquivos,
 desde planilhas do Excel, relatórios emitidos pelo sistema em TXT,
 MP3. Mas pelo o que observei, o movimento nestas pastas é bem pequeno.

  Enfim... o jeito é fazer benchmarks próprios para verificar o
  desempenho entre os dois SO. Uma vantagem que visualizo com a troca
  para Linux é que não existirá muita coisa rodando como serviço, coisa
  que infelizmente o Windows possui desde a sua concepção.
 
  Faça os benchmarks e se possível publique-os para referências futuras.

 Posso fazer sim, sem problemas, mas terei que usar parâmetros da nossa
 aplicação.

 (corte)

 --
 TIAGO J. ADAMI
 http://www.adamiworks.com
 ___
 pgbr-geral mailing list
 pgbr-geral@listas.postgresql.org.br
 https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

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


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Dickson S. Guedes
 2009/11/26 Tiago Adami adam...@gmail.com

 2009/11/26 Dickson S. Guedes lis...@guedesoft.net:
  2009/11/26 Tiago Adami adam...@gmail.com:
  Já investigamos a causa da lentidão antes. Aparentemente não há nada
  de incomum, apenas a velocidade para consultas simples (cadastros de
  itens, por exemplo) torna-se baixa e tarefas como gravação de nota
  fiscal que levavam segundos passam a demorar minutos.
 
  Você tem um histórico do tempo que tem levado para que os CHECKPOINTs
  sejam executados?
 

 Como visualizo isso?

Nos logs é um bom começo. Mas você precisa logar esta informação,
basta habilitar no postgresql.conf [1]. É bom ter uma noção porque
enquanto o banco está fazendo um checkpoint seu desempenho cai.

  Você tem um histórico de como está a utilização de disco quanto à
  entrada e saida? O I/O pode ser uma das causas.
 

 Há como ler um histórico de I/O do banco? Esta informação fica armazenada?

Ao menos nos discos sim, no banco voce tem várias informações que
podem ser obtidas com os dados das tabelas pg_stats_*. Um CACTI com um
plugin check_postgresql.pl do nagios [2] por exemplo pode ter dar boas
informações de historico destes dados. Além disto, no caso do Windows
existem ferramentas de tempo real que você consegue visualizar esta
utilização.


  (...)
  ... o array dos dois discos que contém o banco possui pastas
  compartilhadas sim, e com muitos arquivos nela.
 
  O que são muitos arquivos ? Há problemas quanto há muitos arquivos
  (~1k) em um único diretório num NTFS.

 Imagine uma pasta onde todos e qualquer um podem gravar arquivos,
 desde planilhas do Excel, relatórios emitidos pelo sistema em TXT,
 MP3. Mas pelo o que observei, o movimento nestas pastas é bem pequeno.

Quantos arquivos existem? Já tive problemas em Windows 2003 com NTFS
em um cliente onde foi necessários dividir uma única pasta em 256
pastas distintas cada uma com 16 subpastas, distribuindo então os
arquivos entre elas.


  Enfim... o jeito é fazer benchmarks próprios para verificar o
  desempenho entre os dois SO. Uma vantagem que visualizo com a troca
  para Linux é que não existirá muita coisa rodando como serviço, coisa
  que infelizmente o Windows possui desde a sua concepção.
 
  Faça os benchmarks e se possível publique-os para referências futuras.

 Posso fazer sim, sem problemas, mas terei que usar parâmetros da nossa
 aplicação.

Também pode ser interessante logar as consultas que demoram mais que
um certo tempo (~100ms por exemplo?) e analisá-las  com um pgfouine
por exemplo, pois podem ser consultas que não se dão muito bem em
ambientes muito concorridos.

[1] 
http://www.postgresql.org/docs/8.2/static/runtime-config-wal.html#RUNTIME-CONFIG-WAL-CHECKPOINTS
[2] http://bucardo.org/check_postgres/

[]s
Dickson S. Guedes
mail/xmpp: gue...@guedesoft.net - skype: guediz
http://guedesoft.net - http://www.postgresql.org.br
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Desempenho no Linux

2009-11-26 Por tôpico Tiago Adami
2009/11/26 Dickson S. Guedes lis...@guedesoft.net:
 2009/11/26 Tiago Adami adam...@gmail.com

 2009/11/26 Dickson S. Guedes lis...@guedesoft.net:
  2009/11/26 Tiago Adami adam...@gmail.com:
  Já investigamos a causa da lentidão antes. Aparentemente não há nada
  de incomum, apenas a velocidade para consultas simples (cadastros de
  itens, por exemplo) torna-se baixa e tarefas como gravação de nota
  fiscal que levavam segundos passam a demorar minutos.
 
  Você tem um histórico do tempo que tem levado para que os CHECKPOINTs
  sejam executados?
 

 Como visualizo isso?

 Nos logs é um bom começo. Mas você precisa logar esta informação,
 basta habilitar no postgresql.conf [1]. É bom ter uma noção porque
 enquanto o banco está fazendo um checkpoint seu desempenho cai.


Ok, vou verificar.

  Você tem um histórico de como está a utilização de disco quanto à
  entrada e saida? O I/O pode ser uma das causas.
 

 Há como ler um histórico de I/O do banco? Esta informação fica armazenada?

 Ao menos nos discos sim, no banco voce tem várias informações que
 podem ser obtidas com os dados das tabelas pg_stats_*. Um CACTI com um
 plugin check_postgresql.pl do nagios [2] por exemplo pode ter dar boas
 informações de historico destes dados. Além disto, no caso do Windows
 existem ferramentas de tempo real que você consegue visualizar esta
 utilização.


Também vou verificar com mais tempo...


  (...)
  ... o array dos dois discos que contém o banco possui pastas
  compartilhadas sim, e com muitos arquivos nela.
 
  O que são muitos arquivos ? Há problemas quanto há muitos arquivos
  (~1k) em um único diretório num NTFS.

 Imagine uma pasta onde todos e qualquer um podem gravar arquivos,
 desde planilhas do Excel, relatórios emitidos pelo sistema em TXT,
 MP3. Mas pelo o que observei, o movimento nestas pastas é bem pequeno.

 Quantos arquivos existem? Já tive problemas em Windows 2003 com NTFS
 em um cliente onde foi necessários dividir uma única pasta em 256
 pastas distintas cada uma com 16 subpastas, distribuindo então os
 arquivos entre elas.


A quantidade não importa muito, ainda não contei os arquivos. Fato é
que no caso deste cliente, o servidor deve ser dedicado. Se rodar
Windows, pelo menos o disco deve ser dedicado. O difícil é colocar
isso na cabeça dos clientes, sempre querem baixo custo e alto
desempenho. Fato é que, também, praticamente todos os nossos clientes
mantém compartilhamentos no mesmo disco onde está instalado o
PostgreSQL, pois eles _acham_ que por ser um servidor, deve guardar
tudo.
Outro detalhe é que sempre rodou assim antes, e nunca deu estes
problemas. Vou tentar banir os compartilhamentos, mas será uma tarefa
árdua.


  Enfim... o jeito é fazer benchmarks próprios para verificar o
  desempenho entre os dois SO. Uma vantagem que visualizo com a troca
  para Linux é que não existirá muita coisa rodando como serviço, coisa
  que infelizmente o Windows possui desde a sua concepção.
 
  Faça os benchmarks e se possível publique-os para referências futuras.

 Posso fazer sim, sem problemas, mas terei que usar parâmetros da nossa
 aplicação.

 Também pode ser interessante logar as consultas que demoram mais que
 um certo tempo (~100ms por exemplo?) e analisá-las  com um pgfouine
 por exemplo, pois podem ser consultas que não se dão muito bem em
 ambientes muito concorridos.


Já implementamos um logging na aplicação em todos os comandos SQL
que são executados, e as primeiras modificações já começaram a ser
feitas em comandos SQL pouco eficientes.

 [1] 
 http://www.postgresql.org/docs/8.2/static/runtime-config-wal.html#RUNTIME-CONFIG-WAL-CHECKPOINTS
 [2] http://bucardo.org/check_postgres/

 []s
 Dickson S. Guedes
 mail/xmpp: gue...@guedesoft.net - skype: guediz
 http://guedesoft.net - http://www.postgresql.org.br

-- 
TIAGO J. ADAMI
http://www.adamiworks.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] Desempenho no Linux

2009-11-26 Por tôpico JotaComm
Olá, pessoal

To chegando atrasado para a discussão mas eu queria participar.

Você tem habilitado o log do PostgreSQL? Se sim, tem alguma informação nele?
Você percebeu se consultas anteriormente rápidas passaram a ficar
extremamente lentas?

Se o seu log de atividades do PostgreSQL não está habilitado eu iria sugerir
você habilitar os seguintes parâmetros.

redirect_stderr = on

log_min_duration_statement = 1s

log_line_prefix = '%t [%p]: [%l-1] ' - permite a leitura dos logs pelo
pgFouine, conforme o Guedes comentou.

Assim, como o Guedes comentou seria interessante você analisar o período de
quanto em quanto tempo ocorreu o checkpoint. O padrão é de 5 em 5 minutos,
ou a cada 48MB, isto porque, checkpoint_segments=3*16 que é o tamanho de
cada segmento.

Se você tivesse trabalhando com a versão 8.3 você poderia habilitar o
parâmetro log_checkpoints = on, que ele mostraria as informações de cada
ocorrência de checkpoint.

Outra dúvida é que não vi ninguem comentar. Vocè tem algum processo de
analyze rodando diariamente. Eu vi que você falou que nenhum restore ou
vacuum resolve, mas você não comentou nada sobre vacuum ou autovacuum. Você
faz uso de algum destes procedimentos de manutenção?

Outro detalhe, você ou alguem mais realizou alguma configuração no arquivo
de configuração do PostgreSQL?

Lembro de ter visto você comentado sobre conexões em idle ou idle
transaction. As conexões em idle transaction ficam muito tempo penduradas?
Será que você não ta ficando com alguma transação em aberto que esteja
bloqueando alguma coisa?

Seu banco cresceu nos últimos dias? Ou teve algum processo de carga que
tenha aumentado o volume de dados de alguma tabela e isso possa estar
impactando por derrepente algum atributo que não era consultado e agora esta
sendo bastante consultado e não tem um índice por exemplo?

Tem a questão dos discos, se o disco tiver problema certamente você terá sua
problema global prejudicada. Outra dúvida, é só o PostgreSQL que está lento
ou toda a máquina esta lenta?



2009/11/26 Tiago Adami adam...@gmail.com

 2009/11/26 Dickson S. Guedes lis...@guedesoft.net:
  2009/11/26 Tiago Adami adam...@gmail.com
 
  2009/11/26 Dickson S. Guedes lis...@guedesoft.net:
   2009/11/26 Tiago Adami adam...@gmail.com:
   Já investigamos a causa da lentidão antes. Aparentemente não há nada
   de incomum, apenas a velocidade para consultas simples (cadastros de
   itens, por exemplo) torna-se baixa e tarefas como gravação de nota
   fiscal que levavam segundos passam a demorar minutos.
  
   Você tem um histórico do tempo que tem levado para que os CHECKPOINTs
   sejam executados?
  
 
  Como visualizo isso?
 
  Nos logs é um bom começo. Mas você precisa logar esta informação,
  basta habilitar no postgresql.conf [1]. É bom ter uma noção porque
  enquanto o banco está fazendo um checkpoint seu desempenho cai.
 

 Ok, vou verificar.

   Você tem um histórico de como está a utilização de disco quanto à
   entrada e saida? O I/O pode ser uma das causas.
  
 
  Há como ler um histórico de I/O do banco? Esta informação fica
 armazenada?
 
  Ao menos nos discos sim, no banco voce tem várias informações que
  podem ser obtidas com os dados das tabelas pg_stats_*. Um CACTI com um
  plugin check_postgresql.pl do nagios [2] por exemplo pode ter dar boas
  informações de historico destes dados. Além disto, no caso do Windows
  existem ferramentas de tempo real que você consegue visualizar esta
  utilização.
 

 Também vou verificar com mais tempo...

 
   (...)
   ... o array dos dois discos que contém o banco possui pastas
   compartilhadas sim, e com muitos arquivos nela.
  
   O que são muitos arquivos ? Há problemas quanto há muitos arquivos
   (~1k) em um único diretório num NTFS.
 
  Imagine uma pasta onde todos e qualquer um podem gravar arquivos,
  desde planilhas do Excel, relatórios emitidos pelo sistema em TXT,
  MP3. Mas pelo o que observei, o movimento nestas pastas é bem pequeno.
 
  Quantos arquivos existem? Já tive problemas em Windows 2003 com NTFS
  em um cliente onde foi necessários dividir uma única pasta em 256
  pastas distintas cada uma com 16 subpastas, distribuindo então os
  arquivos entre elas.
 

 A quantidade não importa muito, ainda não contei os arquivos. Fato é
 que no caso deste cliente, o servidor deve ser dedicado. Se rodar
 Windows, pelo menos o disco deve ser dedicado. O difícil é colocar
 isso na cabeça dos clientes, sempre querem baixo custo e alto
 desempenho. Fato é que, também, praticamente todos os nossos clientes
 mantém compartilhamentos no mesmo disco onde está instalado o
 PostgreSQL, pois eles _acham_ que por ser um servidor, deve guardar
 tudo.
 Outro detalhe é que sempre rodou assim antes, e nunca deu estes
 problemas. Vou tentar banir os compartilhamentos, mas será uma tarefa
 árdua.

 
   Enfim... o jeito é fazer benchmarks próprios para verificar o
   desempenho entre os dois SO. Uma vantagem que visualizo com a troca
   para Linux é que não existirá muita coisa 

Re: [pgbr-geral] Desempenho no Linux

2009-11-25 Por tôpico Euler Taveira de Oliveira
Tiago Adami escreveu:
 Temos um cliente com uma base de dados onde o arquivo de backup no
 formato compactado com -F c -Z 9 tem próximo de 400 MB. Eu sei que
 para o padrão de vocês é pouco, mas para nossa aplicação já é um
 tamanho grande. O servidor do cliente é Windows 2008 64 bits, rodando
 em um servidor Dell com Intel Xeon 3 Ghz de 4 núcleos e 4 GB de RAM e
 um disco SCSI (sem RAID).
 
Você não disse quantos usuários simultâneos e nem o volume transacional mas...

 backup/restore ou vacuum que resolva. A versão atual rodando é a
 8.2.13.
 
8.2 é a *primeira* versão que é suportada ainda; deve ser descontinuada pela
grupo de desenvolvimento daqui a algum tempo.

 Primeiro, sugerimos a atualização para a versão 8.3.8 (homologada para
 o nosso ERP, a 8.4.1 nem está em testes ainda). Mas sinceramente, este
 é o primeiro passo apenas...
 
Eu não executaria em plataforma Windows se não fosse a última versão (8.4.1).
Por quê? Simplesmente porque a versão para Windows é muito recente (5 anos)
comparado ao tempo de desenvolvimento em plataforma Unix-like. Além disso,
existem poucos desenvolvedores para Windows; o que quer dizer que esta
plataforma tem menos atenção do que as outras.

 Acontece que agora, eu preciso de justificativas plausíveis,
 informações que possam convencer o cliente de que realmente o
 PostgreSQL foi feito para Linux, roda melhor no Linux e é mais rápido
 nele.
 
Quem disse que o PostgreSQL foi feito para Linux? É fato que a maioria dos
desenvolvedores utilizam Linux para desenvolvimento mas ele de nenhuma maneira
funciona _somente_ em Linux.

 A questão é mais ou menos como uma elaboração de monografia de
 graduação. Eu sei que no Linux é mais rápido, mas quem disse isso?
 Quais as fontes eu poderia citar?
 
Você pode dizer. Basta fazer um benchmark e provar para o cliente esta premissa.

Em plataforma Windows o PostgreSQL vai ser _sempre_ mais lento pois os
elementos base (aka memória compartilhada e semáforos) utilizados são emulados
(o Windows não dispõe de uma API para isso). Além disso, a própria arquitetura
do PostgreSQL (múltiplos processos) não tem um desempenho bom no Windows.

 - Existe sim um software antivírus no servidor, um tal de Eset. Mas
 mesmo com ele desabilitado, a lentidão continua;
 
Você já investigou a causa da lentidão?

 A minha pergunta essencial é: quais as diferenças da versão do
 PostgreSQL para Linux e para Windows no que diz respeito à segurança,
 integridade e desempenho?
 
Quanto a segurança e integridade, não há diferença; o desempenho é outra
história (há muita diferença).


-- 
  Euler Taveira de Oliveira
  http://www.timbira.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] Desempenho no Linux

2009-11-25 Por tôpico Pablo Sánchez
2009/11/26 Tiago Adami adam...@gmail.com:
 Temos um cliente com uma base de dados onde o arquivo de backup no
 formato compactado com -F c -Z 9 tem próximo de 400 MB. Eu sei que
 para o padrão de vocês é pouco, mas para nossa aplicação já é um
 tamanho grande. O servidor do cliente é Windows 2008 64 bits, rodando
 em um servidor Dell com Intel Xeon 3 Ghz de 4 núcleos e 4 GB de RAM e
 um disco SCSI (sem RAID).

 Neste servidor havia reclamações de lentidão. Acontecia em um
 determinado horário (das 16:00hs em diante), e nada de anormal
 aparecia no status do servidor (observado pelo pgAdmin). Existiam
 apenas transações abertas desde às 08:00 hs da manhã no modo In
 Transaction ou Idle. Mas de uns dias para cá, a lentidão passou a
 ser incessante, mesmo sem atualizações do aplicativo, e não há
 backup/restore ou vacuum que resolva. A versão atual rodando é a
 8.2.13.

Você está se focando apenas no banco. Podem ser outros 500.000
motivos, desde atualização do windows comendo a banda de rede do
servidor, até o uso do servidor para guardar mp3 por algum admin mais
metido a esperto. Antes de sair mudando o OS (seu cliente não vai
gostar, com certeza) verifique se não é o OS em si que está lento.

 Primeiro, sugerimos a atualização para a versão 8.3.8 (homologada para
 o nosso ERP, a 8.4.1 nem está em testes ainda). Mas sinceramente, este
 é o primeiro passo apenas...

 Se não der muita diferença, vamos sugerir a atualização para o
 Linux... eu confio neste SO, trabalho com a instalação e configuração
 de servidores Linux a muito tempo, não sou um expert mas me viro.
 Acontece que agora, eu preciso de justificativas plausíveis,
 informações que possam convencer o cliente de que realmente o
 PostgreSQL foi feito para Linux, roda melhor no Linux e é mais rápido
 nele.

 A questão é mais ou menos como uma elaboração de monografia de
 graduação. Eu sei que no Linux é mais rápido, mas quem disse isso?
 Quais as fontes eu poderia citar?

Complicado... O resultado que encontrei pesquisando diz justamente o
contrário...

PostgreSQL performance is very close on both platforms (within 6/100
of a second for 1000 Operations) – It’s faster on Windows and faster
still on Windows with PHP 5.3

http://misfitgeek.com/blog/aspnet/php-versus-asp-net-ndash-windows-versus-linux-ndash-who-rsquo-s-the-fastest/

Tem o código utilizado para fazer o teste...

http://www.misfitgeek.com/pages/perftest-pg.htm

 E antes que perguntem:
 - A aplicação não foi atualizada, portanto não foi nenhuma alteração
 que causou a lentidão;
 - O servidor é dedicado (apesar disso ser essencialmente impossível
 no Windows com todos os serviços que ele roda + o ambiente gráfico);
 - Já verifiquei processos como Vacuum e Backup. Não rodam enquanto
 está lento, somente pela madrugada;
 - Existe sim um software antivírus no servidor, um tal de Eset. Mas
 mesmo com ele desabilitado, a lentidão continua;

 A minha pergunta essencial é: quais as diferenças da versão do
 PostgreSQL para Linux e para Windows no que diz respeito à segurança,
 integridade e desempenho?

Não conheço nenhuma diferença... Com exceção do fato de que há
tunnings que podem ser feitos com os semáforos do kernel em
Linux/FreeBSD que não se conseguem no Windows.

-- 
=
Pablo Santiago Sánchez
Análise e Desenvolvimento de Sistemas Web
Zend Certified Engineer #ZEND006757
phack...@gmail.com
(61) 9975-0883
http://www.sansis.com.br
http://www.corephp.com.br
Quidquid latine dictum sit, altum viditur
=
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral