Indice preciso de exlicacao

DBA Geral (instalação, configuração do banco, scripts do Sql*Plus, shell scripts, batch scripts, etc...)
Responder
marcos.santos
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 13
Registrado em: Qua, 01 Out 2008 7:39 pm
Localização: Jundiaí
Contato:

Bom dia colegas;
Estou comecando com orcle agora, (versao 10g) e estou fazendo alguns exercicios.
Dentre estes ele pede pra criar um indice que no caso sera o CPF, ate ai tudo bem

Selecionar tudo

CREATE UNIQUE INDEX indice2 ON cadfun (CPF);
Mas não explica para que serve e como pesquisar os indices, de modo que gostaria da ajuda dos colegas.
Obrogado!
diegoleite
Rank: Analista Pleno
Rank: Analista Pleno
Mensagens: 115
Registrado em: Sáb, 10 Nov 2007 2:54 pm
Localização: rio de janeiro
Att,


Diego Leite
DBA ORACLE

Amigo,

Resumindo: O Indice é um objeto de banco de dados que tem a intenção de otimizar o acesso aos seus dados quando esses dados estao distribuidos em diversos blocos.

Essa Tabelinha que criou pelo exercicio você deu alguma carga de dados nela??? deu alguns inserts??

Obs: Nem Sempre o Indice e a melhor foma de acesso aos seus dados.Porem não se preocupe que o Oracle lhe dira se é melhor ou não!! rsrs
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Exato! Só pra complementar.
Pense em um índice da mesma forma que um "índice de um livro".

As vezes vale a pena usar, quando o livro é muito grande e você está buscando uma palavra exata. Dai vai no índice e acha exatamente a página que você quer.

Se o livro só tem 1 página, é mais rapido simplesmente IR pra sua página. (isso acontece também com o banco! As vezes o oracle opta por não usar o índice, pois é um passo a mais pra ele). As vezes é mais rapido varrer a tabela pois é pequena.
marcos.santos
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 13
Registrado em: Qua, 01 Out 2008 7:39 pm
Localização: Jundiaí
Contato:

Agora eu entendi a aplicacao do indice, mas como faco para utiliza-lo assim como faco com um livro?
Ou seja como faco a pesquisa por indice?
diegoleite
Rank: Analista Pleno
Rank: Analista Pleno
Mensagens: 115
Registrado em: Sáb, 10 Nov 2007 2:54 pm
Localização: rio de janeiro
Att,


Diego Leite
DBA ORACLE

Basta você criar-lo da forma da sua consulta..

Ex: Sua Aplicacao tem uma query que o filtro dela é o CPF.

Logo você criara um indice para o seu campo CPF. Quanto usar ou não o seu indice. Não é de responsabilidade sua e sim do Proprio SGBD. Conforme um amigo meu: POR ISSO QUE O ORACLE é BOM PRA KRAMBA!!!

Conforme o nosso amigo completou.

dr_gori Enviada: Ter, 09 Dez 2008 11:19 am Assunto:

--------------------------------------------------------------------------------

Se o livro só tem 1 página, é mais rapido simplesmente IR pra sua página. (isso acontece também com o banco! As vezes o oracle opta por não usar o índice, pois é um passo a mais pra ele). As vezes é mais rapido varrer a tabela pois é pequena.
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Sim...
O oracle que decide se vai usar o índice e varias outras coisas. (por exemplo, se você ta usando várias tabelas na sua consulta, ele decide qual pegar primeiro, o que fazer depois, etc)

Isso é trabalho do nosso amigo "otimizador". Quem tem 2 tipos:
* CBO - Cost Based optimizer
* RBO - Rule Based optimizer (até a versão 8i )

O primeiro é bem mais eficiente, pois ele considera o numero de linhas de cada tabela, o tipo de informações, histogramas e uma série de coisas.

O outro, é o programador que informa "o que fazer primeiro"... Apesar que o uso de índices, mesmo nesse tipo é o ORACLE que escolhe.

É possível "manipular" isso! É chamado de HINTS. Tipo, tem como forçar o uso de um índice, ou forçar pra não usar.... Leia sobre HINTS pra entender mais.
Responder
  • Informação
  • Quem está online

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