EDII05 [2012.1]   Arquivos Sequenciais Ordenados Fisicamente
Upcoming SlideShare
Loading in...5
×
 

EDII05 [2012.1] Arquivos Sequenciais Ordenados Fisicamente

on

  • 1,418 views

 

Statistics

Views

Total Views
1,418
Views on SlideShare
1,402
Embed Views
16

Actions

Likes
0
Downloads
22
Comments
0

2 Embeds 16

http://estruturasdedadosdois.blogspot.com.br 9
http://www.estruturasdedadosdois.blogspot.com.br 7

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

EDII05 [2012.1]   Arquivos Sequenciais Ordenados Fisicamente EDII05 [2012.1] Arquivos Sequenciais Ordenados Fisicamente Presentation Transcript

  • Arquivos SequenciaisOrdenados Fisicamente Estrutura de Dados IIUnidade 05 UFS - DComp - Prof. Kenia Kodel 1
  • Flores?O verbo educar éoriginário do latim e querdizer extrair de dentro.Logo, a educação não seconstitui em meroestabelecimento deinformações, mas sim dese trabalhar aspotencialidades do ser, afim de que floresçam. UFS - DComp - Prof. Kenia Kodel 2
  • O segredo é nãocorrer atrás das borboletas... É cuidar do jardim para que elasvenham até você. . Mário Quintana UFS - DComp - Prof. Kenia Kodel 3
  • Arquivos SequenciaisPodem ser:1. Desordenados2. Ordenados, por chave(s) 2.1. Fisicamente 2.2. Por links (lógica)
  • Arquivos SequenciaisOrdenados Fisicamente UFS - DComp - Prof. Kenia Kodel 5
  • O que é um arquivo sequencial ordenado fisicamente?UFS - DComp - Prof. Kenia Kodel 6
  • Arquivo Sequencial Ordenado FisicamenteSão arquivos sequenciais, ou seja, o acesso a um determinado registro implica na varredura de todos os itens que o antecedem. E são ordenados pela disposição física dos registros. UFS - DComp - Prof. Kenia Kodel 7
  • Em aplicações computacionais que manipulam arquivos sequenciais ordenados fisicamente, que operações são úteis para manipulação da respectiva base de dados?UFS - DComp - Prof. Kenia Kodel 8
  • Operações sobre Arquivos Sequenciais Ordenados1. Inserção2. Remoção3. Consulta4. Alteração5. Classificação?6. Recuperação ? UFS - DComp - Prof. Kenia Kodel 9
  • Como efetuar inserção em arquivos sequenciais ordenados fisicamente?UFS - DComp - Prof. Kenia Kodel 10
  • Como efetuar a inserção de FÁ no arquivo dado?UFS - DComp - Prof. Kenia Kodel 11
  • Inclusão em ArquivosSequenciais Ordenados Fisicamente Em arquivos sequenciais ordenados, na realização de operações de manipulação dos dados mantidos nestes, é preciso preservar a organização do arquivo - ordenada. UFS - DComp - Prof. Kenia Kodel 12
  • Inclusão em ArquivosSequenciais Ordenados Fisicamente Para efetuar inserções nos arquivos sequenciais ordenados, as soluções clássicas são: 1. A cada nova inserção, copiar o arquivo original até o ponto de inserção, inserir o novo registro no novo arquivo e, em seguida, copiar o restante dos dados. UFS - DComp - Prof. Kenia Kodel 13
  • Como efetuar a inserção de FÁ no arquivo dado, usando como solução a cópia de arquivo?UFS - DComp - Prof. Kenia Kodel 14
  • algoritmo InsercaoSequencialFisico;inicio Ok:= falso; associe Entrada a ‘Doadores.dat’; associe Saída a ‘Doadores.tmp’; abra Entrada; abra Saida; leiaReg campos de RegNovo; ...fim. UFS - DComp - Prof. Kenia Kodel 15
  • algoritmo InsercaoSequencialFisico;inicio ... enquanto não fim(Entrada) faça inicio leia Reg de Entrada; se (Reg.Paciente>RegNovo.Paciente) e não(Ok) então inicio grave RegNovo em Saida; Ok:= verdadeiro; fim; grave Reg em Saida; fim; se nao(Ok) então grave RegNovo em Saida; destrua Entrada; feche Saida; renomeie nome externo de Saída para ‘Doadores.dat’;fim. UFS - DComp - Prof. Kenia Kodel 16
  • algoritmo InsercaoSequencialFisico;inicio ... enquanto não fim(Entrada) faça inicio leia Reg de Entrada; se (Reg.Paciente>RegNovo.Paciente) e não(Ok) então inicio grave RegNovo em Saida; Ok:= verdadeiro; fim; grave Reg em Saida; fim; se nao(Ok) então Quando este SE é grave RegNovo em Saida; executado? destrua Entrada; feche Saida; renomeie nome externo de Saída para ‘Doadores.dat’;fim. UFS - DComp - Prof. Kenia Kodel 17
  • algoritmo InsercaoSequencialFisico;inicio ... enquanto não fim(Entrada) faça inicio leia Reg de Entrada; se (Reg.Paciente>RegNovo.Paciente) e não(Ok) então inicio grave RegNovo em Saida; Ok:= verdadeiro; fim; grave Reg em Saida; fim; se nao(Ok) então grave RegNovo em Saida; destrua Entrada; feche Saida; renomeie nome externo de Saída para ‘Doadores.dat’;fim. A instrução destacada é usada quando o novo registro (a ser inserido) tem chave (de ordenação) maior que a chave de todos os registros mantidos no arquivo. UFS - DComp - Prof. Kenia Kodel 18
  • algoritmo InsercaoSequencialFisico;inicio ... enquanto não fim(Entrada) faça inicio leia Reg de Entrada; se (Reg.Paciente>RegNovo.Paciente) e não(Ok) então inicio grave RegNovo em Saida; Ok:= verdadeiro; fim; grave Reg em Saida; fim; Há vantagens em se nao(Ok) então executar teste equivalente a este no grave RegNovo em Saida; início do código? destrua Entrada; feche Saida; renomeie nome externo de Saída para ‘Doadores.dat’;fim. UFS - DComp - Prof. Kenia Kodel 19
  • algoritmo InsercaoSequencialFisico;inicio ... enquanto não fim(Entrada) faça inicio leia Reg de Entrada; se (Reg.Paciente>RegNovo.Paciente) e não(Ok) então inicio grave RegNovo em Saida; Ok:= verdadeiro; fim; grave Reg em Saida; fim; se nao(Ok) então grave RegNovo em Saida; destrua Entrada; feche Saida; renomeie nome externo de Saída para ‘Doadores.dat’;fim. Assim pode ser evitada a necessidade de cópia do arquivo. Neste caso seria suficiente incluir o novo registro no final do arquivo de dados; havendo assim economia de tempo de processamento. UFS - DComp - Prof. Kenia Kodel 20
  • Inclusão em ArquivosSequenciais Ordenados Fisicamente Outra solução : 2. Os registros a serem inseridos são agrupados em lote e, em momento oportuno, é feito um processamento único sobre o arquivo original incluindo todos os novos itens de dados. UFS - DComp - Prof. Kenia Kodel 21
  • Como efetuar a inserção de FÁ no arquivo dado, usando lote?UFS - DComp - Prof. Kenia Kodel 22
  • Como efetuar a inserçãode FÁ no arquivo dado? Assim surgem os arquivos auxiliares e temporários. UFS - DComp - Prof. Kenia Kodel 23
  • Elaborar programa para efetuar a inclusão de registros em lote, em arquivo sequencial ordenado fisicamente. Cuidando do jardim!!! UFS - DComp - Prof. Kenia Kodel 24
  • Inclusão em ArquivosSequenciais Ordenados FisicamenteOutra solução :3. Esta envolve movimentação de registros. É identificado o ponto P de inserção do novo registro N. Todos os registros de P até o final do arquivo são movidos 1 posição, vagando a posição P. Então N é inserido em P. UFS - DComp - Prof. Kenia Kodel 25
  • Inclusão em ArquivosSequenciais Ordenados FisicamenteNa execução da solução de inclusão que envolve movimentação de registros. Inicialmente, num arquivo A, é preciso identificar o ponto de inserção P do novo registro N. Qual a lógica para identificação de P? É preciso usar a chave de ordenação (campo do registro usado para ordenar o arquivo)? UFS - DComp - Prof. Kenia Kodel 26
  • Inclusão em ArquivosSequenciais Ordenados Fisicamente P corresponde a posição em A onde se encontra o primeiro registro com chave de ordenação maior que a de N. É preciso criar uma posição livre no final de arquivo e mover para posição seguinte todos os registros do final de A até P, vagando P. Para concluir, N é incluído em P. UFS - DComp - Prof. Kenia Kodel 27
  • Como efetuar a inserção de FÁ no arquivo dado, usando movimentação de dados?UFS - DComp - Prof. Kenia Kodel 28
  • Com cópia de arquivo. Inserção Com Commovimentação de dados. arquivo de lote. Qual o melhor método de inserção em arquivo sequencial fisicamente ordenado? UFS - DComp - Prof. Kenia Kodel 29
  • Como efetuar remoção em arquivos sequenciais ordenados fisicamente?UFS - DComp - Prof. Kenia Kodel 30
  • Remoção em Arquivos SequenciaisFisicamente Ordenados Requer cuidado com os espaços livres gerados. UFS - DComp - Prof. Kenia Kodel 31
  • Remoção em Arquivos SequenciaisFisicamente Ordenados Pode ser: 1. Lógica 2. Física Registro a Registro 3. Física Em lote Como efetuar cada uma destas? UFS - DComp - Prof. Kenia Kodel 32
  • Como efetuar a busca em arquivos sequenciais ordenados fisicamente?UFS - DComp - Prof. Kenia Kodel 33
  • Busca em Arquivo Sequencial Ordenado FisicamenteConsiste em exibir os campos: 1. De um registro referente a uma dada chave – busca específica. 2. De todos os registros do arquivo – busca total.
  • Busca Total em Arquivo Sequencial Ordenado FisicamenteEm arquivo onde não se aplica remoções lógicas.associe Arquivo a ‘Doadores.dat’;abra Arquivo;...posicione no início do arquivo;enquanto não fim(Arquivo) faça inicio leia Reg do Arquivo; exibaReg Reg; {exibição dos dados contidos nos campos do registro} fim;... Neste observa-se a aplicação da buscafeche Arquivo; sequencial. Poderia ser aplicada a busca binária?
  • Busca em Arquivo Sequencial Ordenado Fisicamente PACIENTE SANGUE RH DOAÇÃO CONTATO PESO1 Zé A + 12/12/03 (79)223.1542 802 Beto B - 12/10/02 (79)8801.2017 703 Clô O + 11/09/04 (79)9941.1388 724 Gil AB - 02/02/05 (81)2212.6711 955 Sara A - 10/01/04 (11)2213.0909 73 Analisando a situação problema, que consultas (não totais) disponibilizar? Para todas as consultas propostas, o processo de execução deve ser interrompido ao se localizar o primeiro registro que a atende? Para todas as consultas propostas é possível aplicar busca sequencial e/ou binária?
  • Como efetuar a alteração em arquivos sequenciais ordenados fisicamente? Pode/Deve ser efetuada sobre a chave de ordenação? UFS - DComp - Prof. Kenia Kodel 37
  • Como efetuar a classificação em arquivos sequenciais ordenados fisicamente? Pode/Deve ser aplicada tomando qualquer campo como chave de ordenação? UFS - DComp - Prof. Kenia Kodel 38
  • Como efetuar a recuperação (transferência entre memórias) em arquivos sequenciais ordenados fisicamente? O que justifica tal operação? Em outras palavras, por que efetuar tal operação? Que estrutura usar em memória principal? UFS - DComp - Prof. Kenia Kodel 39
  • Visando garantir máxima eficiência na implementação de arquivos sequenciais, que forma de organização deve-se adotar? Desordenada ou ordenada fisicamente? Justifique: Cuidando do jardim!!! UFS - DComp - Prof. Kenia Kodel 40
  • Visando garantir máxima eficiência na implementação de arquivos sequenciais, que forma de organização deve-se adotar? Desordenada ou ordenada fisicamente? Justifique: São indicadores de eficiência em computação: •velocidade de processamento •capacidade de armazenamento Adotando estes como critérios de comparação e analisando cada uma das operações principais (inserção, remoção, consulta) separadamente. ... Cuidando do jardim!!! UFS - DComp - Prof. Kenia Kodel 41
  • Visando garantir máxima eficiência na implementação de arquivos sequenciais, que Cuidando do jardim!!! forma de organização deve-se adotar? Desordenada ou ordenada fisicamente? Justifique:Inserção (sem checar redundância de dados) Arquivo Processo Custo Uso de Espaço Sequencial (tamanho n) Em final de Desordenado arquivo constante n Com cópia de arquivo linear 2.n Ordenado Com linear Fisicamente movimentação (no pior caso) n de dados Usando lote de tamanho m linear 2.n + m UFS - DComp - Prof. Kenia Kodel 42
  • Visando garantir máxima eficiência na implementação de arquivos sequenciais, que Cuidando do jardim!!! forma de organização deve-se adotar? Desordenada ou ordenada fisicamente? Justifique:Remoção Arquivo Sequencial Processo Custo Uso de Espaço (tamanho n) lógica linear (no pior caso) n Desordenado física registro a  linear(sem redundância registro (com  para m 2.n de chave de cópia) inclusões (n.m) ordeanação) física em lote  linear ordenado (com  para m 2.n+m cópia) inclusões (n+m) lógica logarítmico n Ordenado (no pior caso) Fisicamente  linear(sem redundância física registro a  para m 2.n de chave de registro inclusões (n.m) ordeanação) física em lote  linear ordenado (com  para m 2.n+m cópia) inclusões (n+m) UFS - DComp - Prof. Kenia Kodel 43
  • Visando garantir máxima eficiência na implementação de arquivos sequenciais, que Cuidando do jardim!!! forma de organização deve-se adotar? Desordenada ou ordenada fisicamente? Justifique:Busca Específica Arquivo Sequencial Custo Uso de Espaço (tamanho n) Desordenado linear n Ordenado logarítmico n Fisicamente UFS - DComp - Prof. Kenia Kodel 44
  • Visando garantir máxima eficiência na implementação de arquivos sequenciais, que Cuidando do jardim!!! forma de organização deve-se adotar? Desordenada ou ordenada fisicamente? Justifique:Busca Total Arquivo Sequencial Custo Uso de Espaço (tamanho n) Desordenado linear n Ordenado linear n Fisicamente UFS - DComp - Prof. Kenia Kodel 45
  • Visando garantir máxima eficiência na implementação de arquivos sequenciais, que Cuidando do jardim!!! forma de organização deve-se adotar? Desordenada ou ordenada fisicamente? Justifique:A análise não aponta um resultado único.Revela que para garantir eficiência naimplementação de arquivos sequenciais épreciso analisar a situação problema eidentificar que operações são maiscríticas, mais frequentes, qual a disponibilidadede espaço, o que é prioritário para o usuário... UFS - DComp - Prof. Kenia Kodel 46
  • Quando aplicar arquivos sequenciais ordenados fisicamente? Analisar frequência das operações x custo destas na situação problema.UFS - DComp - Prof. Kenia Kodel 47
  • Complementar Estudos... File Organization and Processing Allan L Tharp Capítulo 2 Sequential File Organization48 UFS - DComp - Prof. Kenia Kodel
  • Próximo passo...Arquivos Sequenciais Ordenadospor Link Operações de manipulação destes.Aplicações destes. UFS - DCOMP - Prof. Kenia Kodel 49