Performance INSERT

Dúvidas, dicas e truques de SQL, Select, Update, Delete, cláusulas, operações com joins, Funções em SQLs, etc
PericlesAlmeida
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 15
Registrado em: Ter, 01 Nov 2011 2:57 pm
"A falta de tempo é desculpa daqueles que perdem tempo por falta de método"
Albert Einstein

Senhores Boa tarde,

O DBA da empresa em que trabalho acabou de enviar um email, informando que um INSERT está causando lentidão no banco de dados.
Não sabia que INSERT causava lentidão no BD, existe alguma medida a ser tomada?

Insert:
INSERT INTO tabelax(sequencial, grupo, subgrupo, numero, data, texto) VALUES(:B6 , :B5 , :B4 , :B3 , :B2 , :B1 )
DanielNN
Moderador
Moderador
Mensagens: 641
Registrado em: Seg, 03 Set 2007 3:26 pm
Localização: Fortaleza - CE
att,

Daniel N.N.

Acredito que teu INSERT está dentro de um LOOP e está inserindo várias linhas.
PericlesAlmeida
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 15
Registrado em: Ter, 01 Nov 2011 2:57 pm
"A falta de tempo é desculpa daqueles que perdem tempo por falta de método"
Albert Einstein

Não existe um rotina/loop que faz esse insert, tudo acontece via aplicação que por sua vez é muito usada. Não sei se existe alguma medida a ser tomada, já que não existe um SELECT ou LOOP envolvido.
RJG
Rank: Analista Júnior
Rank: Analista Júnior
Mensagens: 79
Registrado em: Ter, 16 Mai 2006 11:40 am
Localização: Patos de Minas - MG

Pior que na minha modesta opinião qualquer comando DML num banco pode causar lentidão, mas acontece mais em SELECT;

Veja se tem Triggers nessa tabela, quando estiver INSERTING faz algum SELECT?
Veja os indexs dessa tabela;
O DBA vai ter que trabalhar em conjunto com você!Alias depende muito dele:
Quando eu trabalhava com o 9i.....era Lock e lentidão para dar e vender:
Agora com o 11G....magicamente reduziu em 80% esses problemas!
Boa sorte...
:-o
:D
gfkauer
Rank: DBA Sênior
Rank: DBA Sênior
Mensagens: 389
Registrado em: Ter, 27 Jul 2010 1:34 pm
Localização: Sapiranga - RS
Contato:
Quem falou que programar era fácil??

Quanto mais dificil for a implementação mais valorizado seu trabalho será!

Acessem: www.gfkauer.com.br

O possivel motivo da lentidadão é um alto numero de FKs a serem validadas, juntamente com um alto número de indices existentes para a tabela, além do fato que a tabela onde esta ocorrendo o insert pode ter triggers a nivel de banco, e enquanto estas não terminarem o insert não completa.
lmendes.cps
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 13
Registrado em: Seg, 20 Jun 2011 2:14 pm
Localização: Campinas - SP

Amigo, verifique as triggers.
Se possivel, reescreva o INSERT usando BIND Variables.
PericlesAlmeida
Rank: Programador Júnior
Rank: Programador Júnior
Mensagens: 15
Registrado em: Ter, 01 Nov 2011 2:57 pm
"A falta de tempo é desculpa daqueles que perdem tempo por falta de método"
Albert Einstein

Senhores, muito obrigado pelas respostas.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 17 visitantes