Pular para o conteúdo
  • Este tópico contém 5 respostas, 3 vozes e foi atualizado pela última vez 9 anos, 6 meses atrás por Avatar de MarcusMarcus.
Visualizando 6 posts - 1 até 6 (de 6 do total)
  • Autor
    Posts
  • #107480
    Avatar de MarcusMarcus
    Participante

      Boa Tarde.
      Gostaria de uma ajuda se possível para um possível tuning de uma query simples, sem filtros.

      A query é esta:

      select * from sms_safx42_spo;

      O problema desta query é que ela retorna em torno de 10 milhões de registros, o resultado dela estou gravando em um arquivo via utl_file.

      Segue plano de execução:

      [size=2]SELECT STATEMENT REMOTE, GOAL = ALL_ROWS Id=0 Operation=SELECT STATEMENT Cost=8105 CPU cost=3727389226 Bytes=1682697087
      TABLE ACCESS FULL Id=1 Operation=TABLE ACCESS Cost=8105 CPU cost=3727389226 Bytes=1682697087[/size]

      Existe alguma forma de melhora-la?

      Detalhe: esta tabela é acessada via db_link

      #107481
      Avatar de rmanrman
      Participante

        @Marcus

        O objeto sms_safx42_spo é uma VIEW ou realmente é uma TABLE?

        Faça um teste, gere o arquivo pela instância onde está a origem dos dados, ou seja, não use o dblink. Se o problema está no trafico de dados entre as instâncias, você pode fazer uso de MATERIALIZED VIEW. O FULL TABLE SCAN realmente não tem o que fazer, afinal você está acessando todos os registros da tabela.

        #107482
        Avatar de MarcusMarcus
        Participante

          Bom dia rman.

          Obrigado pelo esclarecimento, meu problema é com o FULL TABLE SCAN mesmo.
          o sms_safx42_spo é de fato uma tabela mesmo de outro banco do qual estou acessando via db_link.

          Já tinha pensado na questão da view materializada, mas não testei ainda pois acredito que o tempo de criação e atualização desta view seja inviável.

          Mas vou testar e retorno com o resultado.

          #107483
          Avatar de MarcusMarcus
          Participante

            Realizei o teste criando uma view materializada, o tempo de criação foi em torno de 2 minutos, para o caso da query até resolveria o problema, mas no script todo tem alguns updates.
            Então não vai adiantar para este caso.

            Mas valeu a tentativa. Obrigado

            Podem fechar o tópico.

            #107484
            Avatar de C-S-RC-S-R
            Participante

              Ola Marcus,

              Talvez para o FTS voce pode usar o hint de paralelismo

              #107485
              Avatar de MarcusMarcus
              Participante

                Fala C-S-R.

                Ja li a respeito, tenho algumas dúvidas quanto a esse hint, vou procurar estudar e aplicar p/ ver se consigo melhora.

                Obrigado

              Visualizando 6 posts - 1 até 6 (de 6 do total)
              • Você deve fazer login para responder a este tópico.
              plugins premium WordPress