Escolar Documentos
Profissional Documentos
Cultura Documentos
Universidade Estadual de Maring UEM Departamento de Informtica - DIN Algoritmos e Estruturas de Dados II
Arquivos invertidos
So arquivos que so criados ou classificados tendo como ponto de referncia ndices ou outras chaves de atribuio. Logo, um arquivo indexado pode ter vrios ndices, cada um contendo como chave de atribuio um campo de registro.
Universidade Estadual de Maring UEM Departamento de Informtica - DIN Algoritmos e Estruturas de Dados II chaves de acesso visa a tornar mais eficiente o processo de busca e permitir o acesso serial ao arquivo.
ndices
Os ndices podem ser exaustivo ou seletivo. Um ndice dito exaustivo quando possui uma entrada para cada registro do arquivo, ou seja, tem TIDs para todos os registros do arquivo. TIDs so ponteiros para o registro de dados. E ndice seletivo tem TIDs somente para registros onde a chave de acesso significante, ou seja, quando possui entradas apenas para um subconjuntos dos registros. O subconjunto definido por uma condio relativa chave de acesso e/ou outros campos do arquivo. Um exemplo de ndice seletivo seria o ndice dos funcionrios que ganham salrio maior que 15.000.000,00 sobre o cadastro geral dos funcionrios de uma empresa. Se nenhum dos ndices existentes sobre um arquivo for exaustivo, necessria a manuteno de uma TABELA DE ALOCAO que identifique todos os espaos alocados pelo arquivo, para fins de manuteno e administrao do arquivo que so feitas diretamente sobre os dados. A manuteno dos ndices do arquivo indexado baseado na rvore-B.
Insero de um registro
Para inserir um registro em um arquivo indexado, o registro colocado na primeira rea livre do arquivo (de pilha) e ento todos os ndices so atualizados. Para um ndice seletivo, necessria uma verificao prvia, para determinar se o registro satisfaz a condio de seleo Neste processo de insero, pode ocorrer uma situao de overflow nos blocos correspondentes de um ou mais ndices. O tratamento de situaes deste tipo feito como na rvore-B.
Universidade Estadual de Maring UEM Departamento de Informtica - DIN Algoritmos e Estruturas de Dados II
Excluso de um registro
Na excluso de um registro, liberada a rea de dados ocupada pelo registro e so removidas dos ndices de entradas a ele correspondente. A remoo de uma entrada de ndice pode ser implementada de um modo direto, pela retirada fsica do par ( chave do registro, endereo do registro ) e conseqente reagrupamento das entradas daquele bloco do ndice para o preenchimento do espao liberado. Outra alternativa consiste de marcar a entrada correspondente ao arquivo excludo, pela substituio do endereo do registro por um endereo invlido. Quando h ndices seletivos sobre o arquivo, surge o problema de determinar em quais deles o registro excludo referenciado, para que deles sejam removidas as entradas correspondentes ao registro excludo. Este problema pode ser resolvido pela avaliao de cada uma das condies de seleo relativas aos ndices, para o caso do registro excludo.
Alterao de um registro
Para a alterao, o endereo do registro determinado por uma busca sobre o ndice. Achado o registro, este lido, seus campos alterados, e novamente gravado, na mesma posio.
Reorganizao do arquivo
Esta operao no usualmente exigida pelos arquivos indexados, visto que os espaos liberados na rea de dados, pela excluso de registros, so reutilizados na operao de insero.
Manipulao de ndices
Para se fazer insero e deleo de ndices em rvore-B, deve-se manter os blocos de ndices com metade de sua capacidade em armazenar ndices.
Insero
Novas entradas so inseridas no bloco de ndices de primeiro nvel, at que o limite y seja alcanado. A prxima entrada a ser inserida ir requerer a alocao de um bloco de ndices que ento inicializado com metade das entradas de ndices pegas do bloco que estava cheio. O bloco foi dividido. A entrada que forou a diviso pode ser agora inserida dentro de um nvel apropriado de um bloco de ndice. Ao mesmo tempo uma nova entrada pode ser criada para um novo bloco de ndice mais alto, contendo o par {Vn+1, Pn+1}. o valor Vn+1 o primeiro Vy/2+1 pego da diviso do bloco que V1 no novo bloco. O bloco do prximo nvel apropriado pode j estar cheio e ainda requerer outra diviso. Se o bloco raiz estiver cheio, o novo bloco criado com duas entradas, uma para o
Universidade Estadual de Maring UEM Departamento de Informtica - DIN Algoritmos e Estruturas de Dados II novo bloco raiz e a outra para o novo parceiro. Desta maneira podemos dizer que a rvore cresceu um nvel. Esta insero mantm o valor do Yeff no ponto desejado.
Remoo
Quando uma entrada deletada, um bloco de ndice pode deixar de ter y/2 entradas. Da o bloco parceiro ser inspecionado. Se o nmero total de entradas em ambos os blocos menor do que y, eles podero ser combinados. Uma entrada no bloco de ndices de nvel mais alto ento deletado, e esta deleo ir se propagar talvez, at o bloco raiz. Se o bloco raiz tiver apenas uma entrada, esta poder ser deletada, implicando, assim, na reduo de um nvel. OBS: se o total de dois blocos, quando combinados em vista da deleo, for igual a y, ento melhor no combinar os blocos, evitando assim um custo excessivo.
Universidade Estadual de Maring UEM Departamento de Informtica - DIN Algoritmos e Estruturas de Dados II Ler por inteiro um arquivo indexado Para que se possa ler um arquivo indexado por inteiro podemos optar por 2 mtodos: - Ler os registros atravs da estrutura de ndices, no caso necessitaremos de ndices exaustivos. - Ler os registros atravs da alocao de espao, onde teramos uma caminhada seqencial pelo arquivo sem se preocupar com a estrutura de ndices tomando os espaos em branco do arquivo de dados. Reorganizao de arquivos indexados Os arquivos indexados no necessitam de uma reorganizao peridica como os outros arquivos. A reorganizao de um ndice especfico se far necessria em arquivos indexados aps atualizaes, delees ou inseres. Recuperao atravs de uma combinao parcial O acesso feito lendo mais de um atributo de cada vez. Vrios atributos esto combinados em um pedido de recuperao. Um importante uso de se ler ndices com vrios atributos a reduo na pesquisa para pedidos de informao com combinao parcial. Uso de ndices mltiplos Para uma busca de recuperao de um determinado registro todos os argumentos de um pedido de informao so passados para os ndices.
Seleo de indices
muitos arquivos e sistemas de bancos de dados no tm a capacidade de manipular TIDs neste caso, torna-se importante escolhermos o ndice mais seletivo para esta questo mesmo quando ns podemos combinar ndices, como visto acima, no vale a pena unir ndices com uma seletividade relativamente baixa nem deveriam ser indexados. A avaliao da seletividade de uma atributo muito difcil. A maioria dos sistemas fazem a suposio de uma distribuio uniforme dos ndices. infelizmente, distribuies uniformes so raras, a no ser que a repartio de valores dos atributos tenha sido planejada deste jeito. Na prtica, mais comum a ocorrncia de outros valores. A avaliao pode ser melhorada se for mantida, para cada atributo, alguma informao adicional. Para pequenas consultas de valores, as contas atuais podem ser mantidas. Contas podem dar valores exatos. Conservando, ao invs da escala do limite de dez da distribuio de valores, permite uma avaliao mais precisa dos valores contnuos num esquema melhor manter os patamares de distribuio, onde a separao tem tamanhos iguais. A distribuio de informaes tendem a ser associadas a ndices e so mais facilmente atualizadas que os prprios ndices. Quando apenas poucos parmetros so mantidos para descrever a distribuio, ns podemos encontrar a informao no bloco raiz e
Universidade Estadual de Maring UEM Departamento de Informtica - DIN Algoritmos e Estruturas de Dados II rapidamente recuper-la. os valores no bloco raiz j dispem de uma estimao inicial das caractersticas da distribuio para cada sub-rvore que dever ser similar.