- Este tópico contém 6 respostas, 3 vozes e foi atualizado pela última vez 16 anos, 5 meses atrás por
Ishii.
-
AutorPosts
-
21 de outubro de 2009 às 8:37 pm #90345
silverwal
ParticipanteOlá Pessoal,
Por acaso alguém sabe quanto de banda “link” o oracle consome para um unico acesso no banco de dados ? (via sqlplus por exemplo)
Abs,
21 de outubro de 2009 às 8:58 pm #90346Ishii
ParticipanteOlá,
Vai depender do result set da Query efetuada… se for somente a conexão, os pacotes são pequenos, porém numa query com um milhão de linhas de retorno, o consumo pode ficar alto…
O ideal em alguns casos é solicitar para o ADM da Rede limitar a banda para o Oracle se isso for degradar outras apps. Mas isso vai depender mais da estratégia e prioridade (Acesso Internet ao Youtube ou o link com o ERP? Qual seria o mais prioritário??? 🙂 )
[]s Ishii
21 de outubro de 2009 às 9:03 pm #90347silverwal
ParticipanteInfelizmente não temos o cenário montado e não conseguimos pedir pro admin limitar a banda pro Oracle !
Por enquanto temos tudo no papel, por isso fui questionado qual o tamanho de link (qual é o consumo que cada sessão ocupa).
Enfim para ter uma base queria ter uma idéia do consumo de um Insert de 100 linhas em uma tabela.
abs,
22 de outubro de 2009 às 9:01 pm #90373silverwal
Participantemais alguma ideia ?
23 de outubro de 2009 às 5:02 am #90406Ishii
ParticipanteOlá,
Então, voltamos ao problema do consumo… 100 linhas… mas e se forem com colunas tipo LOB mandando filmes ou arquivos de mídia? O consumo de banda será definido pela quantidade de dados trafegados (sei que fui redundante aqui mas acho que o problema de Link não deveria ser problema do Banco e vice-versa). A simples conexão não consome mais que alguns kb de link e apenas num pequeno momento (desde a requisição do protocolo até a resposta do listener), já a quantidade de dados trafegados…
Sei que não ajuda muito, mas qual seria a aplicação no Oracle a ser utilizada e qual o limite de Banda na sua situação?
[]s Ishii
23 de outubro de 2009 às 6:41 am #90409CBizzarri
ParticipanteISHII, . . td bom !! 😀
Nesse caso, nao existe uma metrica qto a largura da banda, varia de cliente para cliente. .
Mas trafegam LOBs sim, imagens etc . .e as telas da aplicacao sao executadas via DLL`s que estao no banco de dados, mas para este caso nos temos uma estimativa de 300K por usuario.
➡ O problema é como medir uma instrucao seja DML ou DDL(simples, sem lobs etc . .), mas que possa demorar para ser processada . . os custos influenciam no tamanho dos dados que serao trafegados na rede ?? pq as vezes ao executar um processamento pelo client(no BD) parace que trava(a tela) até o client.
Obrigado !!
23 de outubro de 2009 às 3:10 pm #90412Ishii
ParticipanteOlá,
Ok, indeed…
Então… mesmo que instruções DML ou DDL (nesse último caso, quase não há tráfego) demorem para que o cliente responda ocorre algumas coisas que devem ser entendidas primeiro para facilitar a compreensão sobre a Aplicação.
No caso em si, deve ser analisado da seguinte forma:
1) A situação de congelamento (travar o cliente) ocorre constantemente ou é intermitente? Sendo que o constante seria sempre na mesma situação (mesma query por exemplo) e o intermitente sendo que não há relação entre as consultas (quem realmente consome banda de verdade);
2) Se essa instrução demora muito e é constante, o ponto de demora está na resposta do BD (isso pode ser medido com métricas de performance – tuning- e executado diretamente no BD para não ter influência da rede) ou na chegada para o Cliente que a instrução foi executada? (isso também pode ser medido, porém na análise do Oracle ficaria como ‘SQL*Net message to client’, ou seja, “acabei e enviei para o Cliente Oracle”)
3) Outro ponto que poucas pessoas analisam é se a App é realmente Client/Server, em outras palavras o cliente apenas envia a instrução tipo “execute procedure xpto” ou ela manda TODO o “corpo” da procedure para execução? Com isso note que o tráfego na rede aumenta por conta do envio da instrução inteira, seria algo como em vez de utilizar uma view com alguns binds, enviar a query inteira do corpo de uma view…Só esses pontos já vão lhes dar muito trampo para ver e analisar…
Com relação a sua pergunta: não, se os custos forem do Oracle como Banco de Dados na demora para resposta, pois o cliente ficará APENAS aguardando o retorno do BD, então apenas serão trafegadas comunicações do Listener para “saber” que o cliente está ainda aguardando.. porém isso não impede que seja feita uma revisão sobre o que pode estar ocorrendo na estrutura de rede (não estou dizendo que está errada apenas que pode ter pontos a melhorar com relação ao Banco de Dados…)
Depois desse longo texto, espero ter ajudado…
[]s Ishii
PS: lembrando o Método-R para tuning: SQL*Net message to client não significa que não há problemas no Oracle!!!!!
-
AutorPosts
- Você deve fazer login para responder a este tópico.