Bruno Complementando a explicação do Caio... Se você está utilizando "bulk insert" (SQL-Loader no modo "direct path", ou insert com hint "append"), é necessário desabilitar FK's, triggers e índices mesmo.
[ ]'s André 2010/1/20 Caio Spadafora <[email protected]> > > > Bruno, > > Crie índices manualmente nas chaves estrangeiras que referenciam essa > tabela grande que você esta manipulando. > > O que acontece é o seguitne, quando você manipula a tabela o Oracle irá > verificar se existe alguma tabela "filho" que depende dessa tabela alterada > (isso ocorre a partir da existência de FKs), uma vez que índices não existam > nas FKs (por padrão só são criados índices nas PKs) o Oracle mantem um lock > na tabela "filho", se você criar os índices os locks se restringirão as > linhas das tabelas "filho" que tiveram sua referência sendo manipulada. > > Atenciosamente, > > Caio Spadafora, > Database Administrator, > http://0011brothers.blogspot.com/ > > ________________________________ > De: Bruno Lorenzini > <[email protected]<listas.distribuicao%40gmail.com> > > > Para: Oracle BR <[email protected]<oracle_br%40yahoogrupos.com.br> > > > Enviadas: Quarta-feira, 20 de Janeiro de 2010 12:48:43 > Assunto: [oracle_br] Lock estranho > > > Bom dia pessoal, > > Estou com uma dúvida. Hoje tenho um processo que faz a carga de uma tabela > gigantesca. Tentei carregar esses dados e o processo ficou extremamente > lento. > > Eu apenas desabilito triggers de tabela destino, e uso um bulk-insert.. > > Detectei que no momento do insert ocorriam locks de outras tabelas que não > estavam sendo carregadas. > > Percebi que as tabelas que deram locks eram tabelas que possuíam FK para > essa tabela ou a tabela possui FK pra essas tabelas (todas estavam > inter-relacionadas) . > > Decidi então desligar as FKs e rodar em modo de debug até o momento do > lock. Não ocorreu. > > Isso é possível? Alguém sabe explicar porque o Oracle fez isso? Porque isso > atrapalhou a performance do meu processo? > > Obrigado pela ajuda pessoal. > > Bruno Lorenzini > > [As partes desta mensagem que não continham texto foram removidas] > > __________________________________________________________ > Veja quais são os assuntos do momento no Yahoo! +Buscados > http://br.maisbuscados..yahoo.com > > > [As partes desta mensagem que não continham texto foram removidas] > > > [As partes desta mensagem que não continham texto foram removidas] ------------------------------------ -------------------------------------------------------------------------------------------------------------------------- >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira >responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/[email protected]/ -------------------------------------------------------------------------------------------------------------------------- >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » >Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: >http://www.oraclebr.com.br/ ------------------------------------------------------------------------------------------------------------------------ Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ <*> Para sair deste grupo, envie um e-mail para: [email protected] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
